diff --git a/schemas/github/schema.docs.graphql b/schemas/github/schema.docs.graphql index 9f1f2ca30..3475fddb9 100644 --- a/schemas/github/schema.docs.graphql +++ b/schemas/github/schema.docs.graphql @@ -1,3 +1,17 @@ +directive @requiredCapabilities( + requiredCapabilities: [String!] +) on ARGUMENT_DEFINITION | ENUM | ENUM_VALUE | FIELD_DEFINITION | INPUT_FIELD_DEFINITION | INPUT_OBJECT | INTERFACE | OBJECT | SCALAR | UNION + +""" +Marks an element of a GraphQL schema as only available via a preview header +""" +directive @preview( + """ + The identifier of the API preview that toggles this field. + """ + toggledBy: String! +) on ARGUMENT_DEFINITION | ENUM | ENUM_VALUE | FIELD_DEFINITION | INPUT_FIELD_DEFINITION | INPUT_OBJECT | INTERFACE | OBJECT | SCALAR | UNION + """ Defines what type of global IDs are accepted for a mutation argument of type ID. """ @@ -14,14 +28,34 @@ directive @possibleTypes( ) on INPUT_FIELD_DEFINITION """ -Marks an element of a GraphQL schema as only available via a preview header +Autogenerated input type of AbortQueuedMigrations """ -directive @preview( +input AbortQueuedMigrationsInput { """ - The identifier of the API preview that toggles this field. + A unique identifier for the client performing the mutation. """ - toggledBy: String! -) on SCALAR | OBJECT | FIELD_DEFINITION | ARGUMENT_DEFINITION | INTERFACE | UNION | ENUM | ENUM_VALUE | INPUT_OBJECT | INPUT_FIELD_DEFINITION + clientMutationId: String + + """ + The ID of the organization that is running the migrations. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of AbortQueuedMigrations +""" +type AbortQueuedMigrationsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Did the operation succeed? + """ + success: Boolean +} """ Autogenerated input type of AcceptEnterpriseAdministratorInvitation @@ -153,6 +187,21 @@ type ActorLocation { regionCode: String } +""" +The actor's type. +""" +enum ActorType { + """ + Indicates a team actor. + """ + TEAM + + """ + Indicates a user actor. + """ + USER +} + """ Autogenerated input type of AddAssigneesToAssignable """ @@ -233,6 +282,121 @@ type AddCommentPayload { timelineEdge: IssueTimelineItemEdge } +""" +Autogenerated input type of AddDiscussionComment +""" +input AddDiscussionCommentInput { + """ + The contents of the comment. + """ + body: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion to comment on. + """ + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) + + """ + The Node ID of the discussion comment within this discussion to reply to. + """ + replyToId: ID @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of AddDiscussionComment +""" +type AddDiscussionCommentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created discussion comment. + """ + comment: DiscussionComment +} + +""" +Autogenerated input type of AddDiscussionPollVote +""" +input AddDiscussionPollVoteInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion poll option to vote for. + """ + pollOptionId: ID! @possibleTypes(concreteTypes: ["DiscussionPollOption"]) +} + +""" +Autogenerated return type of AddDiscussionPollVote +""" +type AddDiscussionPollVotePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The poll option that a vote was added to. + """ + pollOption: DiscussionPollOption +} + +""" +Autogenerated input type of AddEnterpriseOrganizationMember +""" +input AddEnterpriseOrganizationMemberInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise which owns the organization. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the organization the users will be added to. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The role to assign the users in the organization + """ + role: OrganizationMemberRole + + """ + The IDs of the enterprise members to add. + """ + userIds: [ID!]! +} + +""" +Autogenerated return type of AddEnterpriseOrganizationMember +""" +type AddEnterpriseOrganizationMemberPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The users who were added to the organization. + """ + users: [User!] +} + """ Autogenerated input type of AddEnterpriseSupportEntitlement """ @@ -285,7 +449,7 @@ input AddLabelsToLabelableInput { """ The id of the labelable object to add labels to. """ - labelableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Labelable") + labelableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Labelable") } """ @@ -388,14 +552,100 @@ type AddProjectColumnPayload { project: Project } +""" +Autogenerated input type of AddProjectV2DraftIssue +""" +input AddProjectV2DraftIssueInput { + """ + The IDs of the assignees of the draft issue. + """ + assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"]) + + """ + The body of the draft issue. + """ + body: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to add the draft issue to. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The title of the draft issue. A project item can also be created by providing + the URL of an Issue or Pull Request if you have access. + """ + title: String! +} + +""" +Autogenerated return type of AddProjectV2DraftIssue +""" +type AddProjectV2DraftIssuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The draft issue added to the project. + """ + projectItem: ProjectV2Item +} + +""" +Autogenerated input type of AddProjectV2ItemById +""" +input AddProjectV2ItemByIdInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the Issue or Pull Request to add. + """ + contentId: ID! + @possibleTypes(concreteTypes: ["DraftIssue", "Issue", "PullRequest"], abstractType: "ProjectV2ItemContent") + + """ + The ID of the Project to add the item to. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of AddProjectV2ItemById +""" +type AddProjectV2ItemByIdPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item added to the project. + """ + item: ProjectV2Item +} + """ Autogenerated input type of AddPullRequestReviewComment """ input AddPullRequestReviewCommentInput { """ - The text of the comment. + The text of the comment. This field is required + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `body` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ - body: String! + body: String """ A unique identifier for the client performing the mutation. @@ -404,31 +654,57 @@ input AddPullRequestReviewCommentInput { """ The SHA of the commit to comment on. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `commitOID` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ commitOID: GitObjectID """ The comment id to reply to. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `inReplyTo` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ inReplyTo: ID @possibleTypes(concreteTypes: ["PullRequestReviewComment"]) """ The relative path of the file to comment on. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `path` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ path: String """ The line index in the diff to comment on. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `position` will be removed. use addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ position: Int """ The node ID of the pull request reviewing + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `pullRequestId` will be removed. use + addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ pullRequestId: ID @possibleTypes(concreteTypes: ["PullRequest"]) """ The Node ID of the review to modify. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `pullRequestReviewId` will be removed. use + addPullRequestReviewThread or addPullRequestReviewThreadReply instead + **Reason:** We are deprecating the addPullRequestReviewComment mutation """ pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"]) } @@ -469,6 +745,10 @@ input AddPullRequestReviewInput { """ The review line comments. + + **Upcoming Change on 2023-10-01 UTC** + **Description:** `comments` will be removed. use the `threads` argument instead + **Reason:** We are deprecating comment fields that use diff-relative positioning """ comments: [DraftPullRequestReviewComment] @@ -528,9 +808,10 @@ input AddPullRequestReviewThreadInput { clientMutationId: String """ - The line of the blob to which the thread refers. The end of the line range for multi-line comments. + The line of the blob to which the thread refers, required for line-level + threads. The end of the line range for multi-line comments. """ - line: Int! + line: Int """ Path to the file being commented on. @@ -561,6 +842,11 @@ input AddPullRequestReviewThreadInput { The side of the diff on which the start line resides. """ startSide: DiffSide = RIGHT + + """ + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file + """ + subjectType: PullRequestReviewThreadSubjectType = LINE } """ @@ -578,6 +864,46 @@ type AddPullRequestReviewThreadPayload { thread: PullRequestReviewThread } +""" +Autogenerated input type of AddPullRequestReviewThreadReply +""" +input AddPullRequestReviewThreadReplyInput { + """ + The text of the reply. + """ + body: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the pending review to which the reply will belong. + """ + pullRequestReviewId: ID @possibleTypes(concreteTypes: ["PullRequestReview"]) + + """ + The Node ID of the thread to which this reply is being written. + """ + pullRequestReviewThreadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) +} + +""" +Autogenerated return type of AddPullRequestReviewThreadReply +""" +type AddPullRequestReviewThreadReplyPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created reply. + """ + comment: PullRequestReviewComment +} + """ Autogenerated input type of AddReaction """ @@ -595,7 +921,23 @@ input AddReactionInput { """ The Node ID of the subject to modify. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "Issue", "IssueComment", "PullRequest", "PullRequestReview", "PullRequestReviewComment", "TeamDiscussion", "TeamDiscussionComment"], abstractType: "Reactable") + subjectId: ID! + @possibleTypes( + concreteTypes: [ + "CommitComment" + "Discussion" + "DiscussionComment" + "Issue" + "IssueComment" + "PullRequest" + "PullRequestReview" + "PullRequestReviewComment" + "Release" + "TeamDiscussion" + "TeamDiscussionComment" + ] + abstractType: "Reactable" + ) } """ @@ -612,6 +954,11 @@ type AddReactionPayload { """ reaction: Reaction + """ + The reaction groups for the subject. + """ + reactionGroups: [ReactionGroup!] + """ The reactable subject. """ @@ -648,6 +995,36 @@ type AddStarPayload { starrable: Starrable } +""" +Autogenerated input type of AddUpvote +""" +input AddUpvoteInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion or comment to upvote. + """ + subjectId: ID! @possibleTypes(concreteTypes: ["Discussion", "DiscussionComment"], abstractType: "Votable") +} + +""" +Autogenerated return type of AddUpvote +""" +type AddUpvotePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The votable subject. + """ + subject: Votable +} + """ Autogenerated input type of AddVerifiableDomain """ @@ -683,6 +1060,37 @@ type AddVerifiableDomainPayload { domain: VerifiableDomain } +""" +Represents an 'added_to_merge_queue' event on a given pull request. +""" +type AddedToMergeQueueEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The user who added this Pull Request to the merge queue + """ + enqueuer: User + id: ID! + + """ + The merge queue where this pull request was added to. + """ + mergeQueue: MergeQueue + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest +} + """ Represents a 'added_to_project' event on a given issue or pull request. """ @@ -719,6 +1127,26 @@ type AddedToProjectEvent implements Node { projectColumnName: String! @preview(toggledBy: "starfox-preview") } +""" +Represents an announcement banner. +""" +interface AnnouncementBanner { + """ + The text of the announcement + """ + announcement: String + + """ + The expiration date of the announcement, if any + """ + announcementExpiresAt: DateTime + + """ + Whether the announcement can be dismissed by the user + """ + announcementUserDismissible: Boolean +} + """ A GitHub App. """ @@ -739,6 +1167,36 @@ type App implements Node { description: String id: ID! + """ + The IP addresses of the app. + """ + ipAllowListEntries( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for IP allow list entries returned. + """ + orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} + ): IpAllowListEntryConnection! + """ The hex color code, without the leading '#', for the logo background. """ @@ -775,6 +1233,46 @@ type App implements Node { url: URI! } +""" +Autogenerated input type of ApproveDeployments +""" +input ApproveDeploymentsInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Optional comment for approving deployments + """ + comment: String = "" + + """ + The ids of environments to reject deployments + """ + environmentIds: [ID!]! + + """ + The node ID of the workflow run containing the pending deployments. + """ + workflowRunId: ID! @possibleTypes(concreteTypes: ["WorkflowRun"]) +} + +""" +Autogenerated return type of ApproveDeployments +""" +type ApproveDeploymentsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The affected deployments. + """ + deployments: [Deployment!] +} + """ Autogenerated input type of ApproveVerifiableDomain """ @@ -805,6 +1303,41 @@ type ApproveVerifiableDomainPayload { domain: VerifiableDomain } +""" +Autogenerated input type of ArchiveProjectV2Item +""" +input ArchiveProjectV2ItemInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the ProjectV2Item to archive. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project to archive the item from. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of ArchiveProjectV2Item +""" +type ArchiveProjectV2ItemPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item archived from the project. + """ + item: ProjectV2Item +} + """ Autogenerated input type of ArchiveRepository """ @@ -893,7 +1426,8 @@ type AssignedEvent implements Node { """ Identifies the user who was assigned. """ - user: User @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") + user: User + @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") } """ @@ -1073,12 +1607,14 @@ type AutoMergeRequest { authorEmail: String """ - The commit message of the auto-merge request. + 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. + 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 @@ -1093,7 +1629,8 @@ type AutoMergeRequest { enabledBy: Actor """ - The merge method of the auto-merge request. + 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! @@ -1217,6 +1754,11 @@ type AutomaticBaseChangeSucceededEvent implements Node { pullRequest: PullRequest! } +""" +A (potentially binary) string encoded using base64. +""" +scalar Base64String + """ Represents a 'base_ref_changed' event on a given issue or pull request. """ @@ -1315,6 +1857,12 @@ type BaseRefForcePushedEvent implements Node { ref: Ref } +""" +Represents non-fractional signed whole numeric values. Since the value may +exceed the size of a 32-bit integer, it's encoded as a string. +""" +scalar BigInt + """ Represents a Git blame. """ @@ -1450,6 +1998,61 @@ type Bot implements Actor & Node & UniformResourceLocatable { url: URI! } +""" +Types which can be actors for `BranchActorAllowance` objects. +""" +union BranchActorAllowanceActor = App | Team | User + +""" +Parameters to be used for the branch_name_pattern rule +""" +type BranchNamePatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the branch_name_pattern rule +""" +input BranchNamePatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + """ A branch protection rule. """ @@ -1464,6 +2067,11 @@ type BranchProtectionRule implements Node { """ allowsForcePushes: Boolean! + """ + Is branch creation a protected operation. + """ + blocksCreations: Boolean! + """ A list of conflicts matching branches protection rule and other branch protection rules """ @@ -1489,6 +2097,56 @@ type BranchProtectionRule implements Node { last: Int ): BranchProtectionRuleConflictConnection! + """ + A list of actors able to force push for this branch protection rule. + """ + bypassForcePushAllowances( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): BypassForcePushAllowanceConnection! + + """ + A list of actors able to bypass PRs for this branch protection rule. + """ + bypassPullRequestAllowances( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): BypassPullRequestAllowanceConnection! + """ The actor who created this branch protection rule. """ @@ -1510,6 +2168,17 @@ type BranchProtectionRule implements Node { """ isAdminEnforced: Boolean! + """ + Whether users can pull changes from upstream when the branch is locked. Set to + `true` to allow fork syncing. Set to `false` to prevent fork syncing. + """ + lockAllowsFetchAndMerge: Boolean! + + """ + Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. + """ + lockBranch: Boolean! + """ Repository refs that are protected by this rule """ @@ -1575,16 +2244,31 @@ type BranchProtectionRule implements Node { """ repository: Repository + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: Boolean! + """ Number of approving reviews required to update matching branches. """ requiredApprovingReviewCount: Int + """ + List of required deployment environments that must be deployed successfully to update matching branches + """ + requiredDeploymentEnvironments: [String] + """ List of required status check contexts that must pass for commits to be accepted to matching branches. """ requiredStatusCheckContexts: [String] + """ + List of required status checks that must pass for commits to be accepted to matching branches. + """ + requiredStatusChecks: [RequiredStatusCheckDescription!] + """ Are approving reviews required to update matching branches. """ @@ -1600,6 +2284,16 @@ type BranchProtectionRule implements Node { """ requiresCommitSignatures: Boolean! + """ + Are conversations required to be resolved before merging. + """ + requiresConversationResolution: Boolean! + + """ + Does this branch require deployment to specific environments before merging + """ + requiresDeployments: Boolean! + """ Are merge commits prohibited from being pushed to this branch. """ @@ -1751,6 +2445,144 @@ 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 amount to pay to the sponsorable in US dollars. Valid values: 1-12000. + """ + amount: Int! + + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String +} + +""" +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 +} + """ The Common Vulnerability Scoring System """ @@ -1779,10 +2611,6 @@ type CWE implements Node { A detailed description of this CWE """ description: String! - - """ - ID of the object. - """ id: ID! """ @@ -1866,6 +2694,53 @@ type CancelEnterpriseAdminInvitationPayload { message: String } +""" +Autogenerated input type of CancelSponsorship +""" +input CancelSponsorshipInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the user or organization who is acting as the sponsor, paying for + the sponsorship. Required if sponsorLogin is not given. + """ + sponsorId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsor") + + """ + The username of the user or organization who is acting as the sponsor, paying + for the sponsorship. Required if sponsorId is not given. + """ + sponsorLogin: String + + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String +} + +""" +Autogenerated return type of CancelSponsorship +""" +type CancelSponsorshipPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The tier that was being used at the time of cancellation. + """ + sponsorsTier: SponsorsTier +} + """ Autogenerated input type of ChangeUserStatus """ @@ -2211,6 +3086,11 @@ type CheckRun implements Node & RequirableByPullRequest & UniformResourceLocatab """ 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. """ @@ -2242,6 +3122,11 @@ type CheckRun implements Node & RequirableByPullRequest & UniformResourceLocatab """ name: String! + """ + Information about a pending deployment, if any, in this check run + """ + pendingDeploymentRequest: DeploymentRequest + """ The permalink to the check run summary. """ @@ -2267,6 +3152,36 @@ type CheckRun implements Node & RequirableByPullRequest & UniformResourceLocatab """ 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 """ @@ -2368,9 +3283,19 @@ input CheckRunFilter { checkType: CheckRunType """ - Filters the check runs by this status. + Filters the check runs by these conclusions. + """ + conclusions: [CheckConclusionState!] + + """ + Filters the check runs by this status. Superceded by statuses. """ status: CheckStatusState + + """ + Filters the check runs by this status. Overrides status. + """ + statuses: [CheckStatusState!] } """ @@ -2423,6 +3348,96 @@ input CheckRunOutputImage { imageUrl: URI! } +""" +The possible states of a check run in a status rollup. +""" +enum CheckRunState { + """ + The check run requires action. + """ + ACTION_REQUIRED + + """ + The check run has been cancelled. + """ + CANCELLED + + """ + The check run has been completed. + """ + COMPLETED + + """ + The check run has failed. + """ + FAILURE + + """ + The check run is in progress. + """ + IN_PROGRESS + + """ + The check run was neutral. + """ + NEUTRAL + + """ + The check run is in pending state. + """ + PENDING + + """ + The check run has been queued. + """ + QUEUED + + """ + The check run was skipped. + """ + SKIPPED + + """ + The check run was marked stale by GitHub. Only GitHub can use this conclusion. + """ + STALE + + """ + The check run has failed at startup. + """ + STARTUP_FAILURE + + """ + The check run has succeeded. + """ + SUCCESS + + """ + The check run has timed out. + """ + TIMED_OUT + + """ + The check run is in waiting state. + """ + WAITING +} + +""" +Represents a count of the state of a check run. +""" +type CheckRunStateCount { + """ + The number of check runs with this state. + """ + count: Int! + + """ + The state of a check run. + """ + state: CheckRunState! +} + """ The possible types of check runs. """ @@ -2452,6 +3467,11 @@ enum CheckStatusState { """ IN_PROGRESS + """ + The check suite or run is in pending state. + """ + PENDING + """ The check suite or run has been queued. """ @@ -2468,6 +3488,91 @@ enum CheckStatusState { WAITING } +""" +A single check step. +""" +type CheckStep { + """ + Identifies the date and time when the check step was completed. + """ + completedAt: DateTime + + """ + The conclusion of the check step. + """ + conclusion: CheckConclusionState + + """ + A reference for the check step on the integrator's system. + """ + externalId: String + + """ + The step's name. + """ + name: String! + + """ + The index of the step in the list of steps of the parent check run. + """ + number: Int! + + """ + Number of seconds to completion. + """ + secondsToCompletion: Int + + """ + Identifies the date and time when the check step was started. + """ + startedAt: DateTime + + """ + The current status of the check step. + """ + status: CheckStatusState! +} + +""" +The connection type for CheckStep. +""" +type CheckStepConnection { + """ + A list of edges. + """ + edges: [CheckStepEdge] + + """ + A list of nodes. + """ + nodes: [CheckStep] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type CheckStepEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: CheckStep +} + """ A check suite. """ @@ -2527,6 +3632,11 @@ type CheckSuite implements Node { """ createdAt: DateTime! + """ + The user who triggered the check suite. + """ + creator: User + """ Identifies the primary key from the database. """ @@ -2612,6 +3722,11 @@ type CheckSuite implements Node { The HTTP URL for this check suite """ url: URI! + + """ + The workflow run associated with this check suite. + """ + workflowRun: WorkflowRun } """ @@ -2684,6 +3799,11 @@ 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 """ @@ -2696,7 +3816,7 @@ input ClearLabelsFromLabelableInput { """ The id of the labelable object to clear the labels from. """ - labelableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Labelable") + labelableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Labelable") } """ @@ -2714,6 +3834,50 @@ type ClearLabelsFromLabelablePayload { labelable: Labelable } +""" +Autogenerated input type of ClearProjectV2ItemFieldValue +""" +input ClearProjectV2ItemFieldValueInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the field to be cleared. + """ + fieldId: ID! + @possibleTypes( + concreteTypes: ["ProjectV2Field", "ProjectV2IterationField", "ProjectV2SingleSelectField"] + abstractType: "ProjectV2FieldConfiguration" + ) + + """ + The ID of the item to be cleared. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of ClearProjectV2ItemFieldValue +""" +type ClearProjectV2ItemFieldValuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated item. + """ + projectV2Item: ProjectV2Item +} + """ Autogenerated input type of CloneProject """ @@ -2835,7 +3999,7 @@ An object that can be closed """ interface Closable { """ - `true` if the object is closed (definition of closed may depend on type) + Indicates if the object is closed (definition of closed may depend on type) """ closed: Boolean! @@ -2843,6 +4007,51 @@ interface Closable { Identifies the date and time when the object was closed. """ closedAt: DateTime + + """ + Indicates if the object can be closed by the viewer. + """ + viewerCanClose: Boolean! + + """ + Indicates if the object can be reopened by the viewer. + """ + viewerCanReopen: Boolean! +} + +""" +Autogenerated input type of CloseDiscussion +""" +input CloseDiscussionInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the discussion to be closed. + """ + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) + + """ + The reason why the discussion is being closed. + """ + reason: DiscussionCloseReason = RESOLVED +} + +""" +Autogenerated return type of CloseDiscussion +""" +type CloseDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that was closed. + """ + discussion: Discussion } """ @@ -2858,6 +4067,11 @@ input CloseIssueInput { ID of the issue to be closed. """ issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + The reason the issue is to be closed. + """ + stateReason: IssueClosedStateReason } """ @@ -2935,6 +4149,11 @@ type ClosedEvent implements Node & UniformResourceLocatable { """ resourcePath: URI! + """ + The reason the issue state was changed to closed. + """ + stateReason: IssueStateReason + """ The HTTP URL for this closed event. """ @@ -3302,9 +4521,21 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl ): Blame! """ - The number of changed files in this commit. + We recommend using the `changedFilesIfAvailable` field instead of + `changedFiles`, as `changedFiles` will cause your request to return an error + if GitHub is unable to calculate the number of changed files. """ changedFiles: Int! + @deprecated( + reason: "`changedFiles` will be removed. Use `changedFilesIfAvailable` instead. Removal on 2023-01-01 UTC." + ) + + """ + The number of changed files in this commit. If GitHub is unable to calculate + the number of changed files (for example due to a timeout), this will return + `null`. We recommend using this field instead of `changedFiles`. + """ + changedFilesIfAvailable: Int """ The check suites associated with a commit. @@ -3545,7 +4776,7 @@ type Commit implements GitObject & Node & Subscribable & UniformResourceLocatabl """ The datetime when this commit was pushed. """ - pushedDate: DateTime + pushedDate: DateTime @deprecated(reason: "`pushedDate` is no longer supported. Removal on 2023-07-01 UTC.") """ The Repository this commit belongs to @@ -3656,6 +4887,56 @@ input CommitAuthor { id: ID } +""" +Parameters to be used for the commit_author_email_pattern rule +""" +type CommitAuthorEmailPatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the commit_author_email_pattern rule +""" +input CommitAuthorEmailPatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + """ Represents a comment on a given Commit. """ @@ -3727,7 +5008,9 @@ type CommitComment implements Comment & Deletable & Minimizable & Node & Reactab lastEditedAt: DateTime """ - Returns why the comment was minimized. + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. """ minimizedReason: String @@ -4099,76 +5382,320 @@ type CommitHistoryConnection { } """ -Represents a 'connected' event on a given issue or pull request. +A message to include with a new commit """ -type ConnectedEvent implements Node { +input CommitMessage { """ - Identifies the actor who performed the event. + The body of the message. """ - actor: Actor + body: String """ - Identifies the date and time when the object was created. + The headline of the message. """ - createdAt: DateTime! - id: ID! + headline: String! +} +""" +Parameters to be used for the commit_message_pattern rule +""" +type CommitMessagePatternParameters { """ - Reference originated in a different repository. + How this rule will appear to users. """ - isCrossRepository: Boolean! + name: String """ - Issue or pull request that made the reference. + If true, the rule will fail if the pattern matches. """ - source: ReferencedSubject! + negate: Boolean! """ - Issue or pull request which was connected. + The operator to use for matching. """ - subject: ReferencedSubject! + operator: String! + + """ + The pattern to match with. + """ + pattern: String! } """ -A content attachment +Parameters to be used for the commit_message_pattern rule """ -type ContentAttachment { +input CommitMessagePatternParametersInput { """ - The body text of the content attachment. This parameter supports markdown. + How this rule will appear to users. """ - body: String! + name: String """ - The content reference that the content attachment is attached to. + If true, the rule will fail if the pattern matches. """ - contentReference: ContentReference! + negate: Boolean """ - Identifies the primary key from the database. + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +A git ref for a commit to be appended to. + +The ref must be a branch, i.e. its fully qualified name must start +with `refs/heads/` (although the input is not required to be fully +qualified). + +The Ref may be specified by its global node ID or by the +`repositoryNameWithOwner` and `branchName`. + +### Examples + +Specify a branch using a global node ID: + + { "id": "MDM6UmVmMTpyZWZzL2hlYWRzL21haW4=" } + +Specify a branch using `repositoryNameWithOwner` and `branchName`: + + { + "repositoryNameWithOwner": "github/graphql-client", + "branchName": "main" + } +""" +input CommittableBranch { + """ + The unqualified name of the branch to append the commit to. + """ + branchName: String + + """ + The Node ID of the Ref to be updated. + """ + id: ID + """ - databaseId: Int! + The nameWithOwner of the repository to commit to. + """ + repositoryNameWithOwner: String +} + +""" +Parameters to be used for the committer_email_pattern rule +""" +type CommitterEmailPatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the committer_email_pattern rule +""" +input CommitterEmailPatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Represents a comparison between two commit revisions. +""" +type Comparison implements Node { + """ + The number of commits ahead of the base branch. + """ + aheadBy: Int! + + """ + The base revision of this comparison. + """ + baseTarget: GitObject! + + """ + The number of commits behind the base branch. + """ + behindBy: Int! + + """ + The commits which compose this comparison. + """ + commits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ComparisonCommitConnection! + + """ + The head revision of this comparison. + """ + headTarget: GitObject! id: ID! """ - The title of the content attachment. + The status of this comparison. """ - title: String! + status: ComparisonStatus! } """ -A content reference +The connection type for Commit. """ -type ContentReference { +type ComparisonCommitConnection { """ - Identifies the primary key from the database. + The total count of authors and co-authors across all commits. + """ + authorCount: Int! + + """ + A list of edges. + """ + edges: [CommitEdge] + + """ + A list of nodes. + """ + nodes: [Commit] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +The status of a git comparison between two refs. +""" +enum ComparisonStatus { + """ + The head ref is ahead of the base ref. + """ + AHEAD + + """ + The head ref is behind the base ref. + """ + BEHIND + + """ + The head ref is both ahead and behind of the base ref, indicating git history has diverged. + """ + DIVERGED + + """ + The head ref and base ref are identical. """ - databaseId: Int! + IDENTICAL +} + +""" +Represents a 'connected' event on a given issue or pull request. +""" +type ConnectedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! id: ID! """ - The reference of the content reference. + Reference originated in a different repository. """ - reference: String! + isCrossRepository: Boolean! + + """ + Issue or pull request that made the reference. + """ + source: ReferencedSubject! + + """ + Issue or pull request which was connected. + """ + subject: ReferencedSubject! +} + +""" +The Contributing Guidelines for a repository. +""" +type ContributingGuidelines { + """ + The body of the Contributing Guidelines. + """ + body: String + + """ + The HTTP path for the Contributing Guidelines. + """ + resourcePath: URI + + """ + The HTTP URL for the Contributing Guidelines. + """ + url: URI } """ @@ -4587,7 +6114,8 @@ type ContributionsCollection { ): [PullRequestContributionsByRepository!]! """ - Pull request review contributions made by the user. + Pull request review contributions made by the user. Returns the most recently + submitted review for each PR reviewed by the user. """ pullRequestReviewContributions( """ @@ -4910,6 +6438,122 @@ type ConvertedNoteToIssueEvent implements Node { projectColumnName: String! @preview(toggledBy: "starfox-preview") } +""" +Represents a 'converted_to_discussion' event on a given issue. +""" +type ConvertedToDiscussionEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The discussion that the issue was converted into. + """ + discussion: Discussion + id: ID! +} + +""" +Autogenerated input type of CopyProjectV2 +""" +input CopyProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Include draft issues in the new project + """ + includeDraftIssues: Boolean = false + + """ + The owner ID of the new project. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "OrganizationOrUser") + + """ + The ID of the source Project to copy. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The title of the project. + """ + title: String! +} + +""" +Autogenerated return type of CopyProjectV2 +""" +type CopyProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The copied project. + """ + projectV2: ProjectV2 +} + +""" +Autogenerated input type of CreateAttributionInvitation +""" +input CreateAttributionInvitationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the owner scoping the reattributable data. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Bot", "Enterprise", "Mannequin", "Organization", "User"]) + + """ + The Node ID of the account owning the data to reattribute. + """ + sourceId: ID! @possibleTypes(concreteTypes: ["Bot", "Enterprise", "Mannequin", "Organization", "User"]) + + """ + The Node ID of the account which may claim the data. + """ + targetId: ID! @possibleTypes(concreteTypes: ["Bot", "Enterprise", "Mannequin", "Organization", "User"]) +} + +""" +Autogenerated return type of CreateAttributionInvitation +""" +type CreateAttributionInvitationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The owner scoping the reattributable data. + """ + owner: Organization + + """ + The account owning the data to reattribute. + """ + source: Claimable + + """ + The account which may claim the data. + """ + target: Claimable +} + """ Autogenerated input type of CreateBranchProtectionRule """ @@ -4924,6 +6568,21 @@ input CreateBranchProtectionRuleInput { """ allowsForcePushes: Boolean + """ + Is branch creation a protected operation. + """ + blocksCreations: Boolean + + """ + A list of User, Team, or App IDs allowed to bypass force push targeting matching branches. + """ + bypassForcePushActorIds: [ID!] + + """ + A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches. + """ + bypassPullRequestActorIds: [ID!] + """ A unique identifier for the client performing the mutation. """ @@ -4939,13 +6598,24 @@ input CreateBranchProtectionRuleInput { """ isAdminEnforced: Boolean + """ + Whether users can pull changes from upstream when the branch is locked. Set to + `true` to allow fork syncing. Set to `false` to prevent fork syncing. + """ + lockAllowsFetchAndMerge: Boolean + + """ + Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. + """ + lockBranch: Boolean + """ The glob-like pattern used to determine matching branches. """ pattern: String! """ - A list of User, Team or App IDs allowed to push to matching branches. + A list of User, Team, or App IDs allowed to push to matching branches. """ pushActorIds: [ID!] @@ -4954,16 +6624,31 @@ input CreateBranchProtectionRuleInput { """ repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: Boolean + """ Number of approving reviews required to update matching branches. """ requiredApprovingReviewCount: Int + """ + The list of required deployment environments + """ + requiredDeploymentEnvironments: [String!] + """ List of required status check contexts that must pass for commits to be accepted to matching branches. """ requiredStatusCheckContexts: [String!] + """ + The list of required status checks + """ + requiredStatusChecks: [RequiredStatusCheckInput!] + """ Are approving reviews required to update matching branches. """ @@ -4979,6 +6664,16 @@ input CreateBranchProtectionRuleInput { """ requiresCommitSignatures: Boolean + """ + Are conversations required to be resolved before merging. + """ + requiresConversationResolution: Boolean + + """ + Are successful deployments required before merging. + """ + requiresDeployments: Boolean + """ Are merge commits prohibited from being pushed to this branch. """ @@ -5005,7 +6700,7 @@ input CreateBranchProtectionRuleInput { restrictsReviewDismissals: Boolean """ - A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches. + A list of User, Team, or App IDs allowed to dismiss reviews on pull requests targeting matching branches. """ reviewDismissalActorIds: [ID!] } @@ -5141,13 +6836,13 @@ type CreateCheckSuitePayload { } """ -Autogenerated input type of CreateContentAttachment +Autogenerated input type of CreateCommitOnBranch """ -input CreateContentAttachmentInput { +input CreateCommitOnBranchInput { """ - The body of the content attachment, which may contain markdown. + The Ref to be updated. Must be a branch. """ - body: String! + branch: CommittableBranch! """ A unique identifier for the client performing the mutation. @@ -5155,29 +6850,39 @@ input CreateContentAttachmentInput { clientMutationId: String """ - The node ID of the content_reference. + The git commit oid expected at the head of the branch prior to the commit """ - contentReferenceId: ID! @possibleTypes(concreteTypes: ["ContentReference"]) + expectedHeadOid: GitObjectID! """ - The title of the content attachment. + A description of changes to files in this commit. """ - title: String! + fileChanges: FileChanges + + """ + The commit message the be included with the commit. + """ + message: CommitMessage! } """ -Autogenerated return type of CreateContentAttachment +Autogenerated return type of CreateCommitOnBranch """ -type CreateContentAttachmentPayload { +type CreateCommitOnBranchPayload { """ A unique identifier for the client performing the mutation. """ clientMutationId: String """ - The newly created content attachment. + The new commit. + """ + commit: Commit + + """ + The ref which has been updated to point to the new commit. """ - contentAttachment: ContentAttachment + ref: Ref } """ @@ -5315,6 +7020,51 @@ type CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") { deploymentStatus: DeploymentStatus } +""" +Autogenerated input type of CreateDiscussion +""" +input CreateDiscussionInput { + """ + The body of the discussion. + """ + body: String! + + """ + The id of the discussion category to associate with this discussion. + """ + categoryId: ID! @possibleTypes(concreteTypes: ["DiscussionCategory"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the repository on which to create the discussion. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + + """ + The title of the discussion. + """ + title: String! +} + +""" +Autogenerated return type of CreateDiscussion +""" +type CreateDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that was just created. + """ + discussion: Discussion +} + """ Autogenerated input type of CreateEnterpriseOrganization """ @@ -5370,6 +7120,41 @@ type CreateEnterpriseOrganizationPayload { organization: Organization } +""" +Autogenerated input type of CreateEnvironment +""" +input CreateEnvironmentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The name of the environment. + """ + name: String! + + """ + The node ID of the repository. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of CreateEnvironment +""" +type CreateEnvironmentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new or existing environment. + """ + environment: Environment +} + """ Autogenerated input type of CreateIpAllowListEntry """ @@ -5397,7 +7182,7 @@ input CreateIpAllowListEntryInput { """ The ID of the owner for which to create the new IP allow list entry. """ - ownerId: ID! @possibleTypes(concreteTypes: ["Enterprise", "Organization"], abstractType: "IpAllowListOwner") + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") } """ @@ -5525,6 +7310,111 @@ type CreateLabelPayload @preview(toggledBy: "bane-preview") { label: Label } +""" +Autogenerated input type of CreateLinkedBranch +""" +input CreateLinkedBranchInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the issue to link to. + """ + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + + """ + The name of the new branch. Defaults to issue number and title. + """ + name: String + + """ + The commit SHA to base the new branch on. + """ + oid: GitObjectID! + + """ + ID of the repository to create the branch in. Defaults to the issue repository. + """ + repositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of CreateLinkedBranch +""" +type CreateLinkedBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The issue that was linked to. + """ + issue: Issue + + """ + The new branch issue reference. + """ + linkedBranch: LinkedBranch +} + +""" +Autogenerated input type of CreateMigrationSource +""" +input CreateMigrationSourceInput { + """ + The migration source access token. + """ + accessToken: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The GitHub personal access token of the user importing to the target repository. + """ + githubPat: String + + """ + The migration source name. + """ + name: String! + + """ + The ID of the organization that will own the migration source. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The migration source type. + """ + type: MigrationSourceType! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + url: String +} + +""" +Autogenerated return type of CreateMigrationSource +""" +type CreateMigrationSourcePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The created migration source. + """ + migrationSource: MigrationSource +} + """ Autogenerated input type of CreateProject """ @@ -5575,6 +7465,96 @@ type CreateProjectPayload { project: Project } +""" +Autogenerated input type of CreateProjectV2Field +""" +input CreateProjectV2FieldInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The data type of the field. + """ + dataType: ProjectV2CustomFieldType! + + """ + The name of the field. + """ + name: String! + + """ + The ID of the Project to create the field in. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + Options for a single select field. At least one value is required if data_type is SINGLE_SELECT + """ + singleSelectOptions: [ProjectV2SingleSelectFieldOptionInput!] +} + +""" +Autogenerated return type of CreateProjectV2Field +""" +type CreateProjectV2FieldPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new field. + """ + projectV2Field: ProjectV2FieldConfiguration +} + +""" +Autogenerated input type of CreateProjectV2 +""" +input CreateProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The owner ID to create the project under. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "OrganizationOrUser") + + """ + The repository to link the project to. + """ + repositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) + + """ + The team to link the project to. The team will be granted read permissions. + """ + teamId: ID @possibleTypes(concreteTypes: ["Team"]) + + """ + The title of the project. + """ + title: String! +} + +""" +Autogenerated return type of CreateProjectV2 +""" +type CreateProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new project. + """ + projectV2: ProjectV2 +} + """ Autogenerated input type of CreatePullRequest """ @@ -5607,6 +7587,11 @@ input CreatePullRequestInput { """ headRefName: String! + """ + The Node ID of the head repository. + """ + headRepositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) + """ Indicates whether maintainers can modify the pull request. """ @@ -5750,14 +7735,360 @@ type CreateRepositoryPayload { repository: Repository } +""" +Autogenerated input type of CreateRepositoryRuleset +""" +input CreateRepositoryRulesetInput { + """ + A list of actors that are allowed to bypass rules in this ruleset. + """ + bypassActors: [RepositoryRulesetBypassActorInput!] + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The set of conditions for this ruleset + """ + conditions: RepositoryRuleConditionsInput! + + """ + The enforcement level for this ruleset + """ + enforcement: RuleEnforcement! + + """ + The name of the ruleset. + """ + name: String! + + """ + The list of rules for this ruleset + """ + rules: [RepositoryRuleInput!] + + """ + The global relay id of the source in which a new ruleset should be created in. + """ + sourceId: ID! @possibleTypes(concreteTypes: ["Organization", "Repository"], abstractType: "RuleSource") + + """ + The target of the ruleset. + """ + target: RepositoryRulesetTarget +} + +""" +Autogenerated return type of CreateRepositoryRuleset +""" +type CreateRepositoryRulesetPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created Ruleset. + """ + ruleset: RepositoryRuleset +} + +""" +Autogenerated input type of CreateSponsorsListing +""" +input CreateSponsorsListingInput { + """ + The country or region where the sponsorable's bank account is located. + Required if fiscalHostLogin is not specified, ignored when fiscalHostLogin is specified. + """ + billingCountryOrRegionCode: SponsorsCountryOrRegionCode + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The email address we should use to contact you about the GitHub Sponsors + profile being created. This will not be shared publicly. Must be a verified + email address already on your GitHub account. Only relevant when the + sponsorable is yourself. Defaults to your primary email address on file if omitted. + """ + contactEmail: String + + """ + The username of the supported fiscal host's GitHub organization, if you want + to receive sponsorship payouts through a fiscal host rather than directly to a + bank account. For example, 'Open-Source-Collective' for Open Source Collective + or 'numfocus' for numFOCUS. Case insensitive. See https://docs.github.com/sponsors/receiving-sponsorships-through-github-sponsors/using-a-fiscal-host-to-receive-github-sponsors-payouts + for more information. + """ + fiscalHostLogin: String + + """ + The URL for your profile page on the fiscal host's website, e.g., + https://opencollective.com/babel or https://numfocus.org/project/bokeh. + Required if fiscalHostLogin is specified. + """ + fiscallyHostedProjectProfileUrl: String + + """ + Provide an introduction to serve as the main focus that appears on your GitHub + Sponsors profile. It's a great opportunity to help potential sponsors learn + more about you, your work, and why their sponsorship is important to you. + GitHub-flavored Markdown is supported. + """ + fullDescription: String + + """ + The country or region where the sponsorable resides. This is for tax purposes. + Required if the sponsorable is yourself, ignored when sponsorableLogin + specifies an organization. + """ + residenceCountryOrRegionCode: SponsorsCountryOrRegionCode + + """ + The username of the organization to create a GitHub Sponsors profile for, if + desired. Defaults to creating a GitHub Sponsors profile for the authenticated + user if omitted. + """ + sponsorableLogin: String +} + +""" +Autogenerated return type of CreateSponsorsListing +""" +type CreateSponsorsListingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new GitHub Sponsors profile. + """ + sponsorsListing: SponsorsListing +} + +""" +Autogenerated input type of CreateSponsorsTier +""" +input CreateSponsorsTierInput { + """ + The value of the new tier in US dollars. Valid values: 1-12000. + """ + amount: Int! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A description of what this tier is, what perks sponsors might receive, what a sponsorship at this tier means for you, etc. + """ + description: String! + + """ + Whether sponsorships using this tier should happen monthly/yearly or just once. + """ + isRecurring: Boolean = true + + """ + Whether to make the tier available immediately for sponsors to choose. + Defaults to creating a draft tier that will not be publicly visible. + """ + publish: Boolean = false + + """ + Optional ID of the private repository that sponsors at this tier should gain + read-only access to. Must be owned by an organization. + """ + repositoryId: ID @possibleTypes(concreteTypes: ["Repository"]) + + """ + Optional name of the private repository that sponsors at this tier should gain + read-only access to. Must be owned by an organization. Necessary if + repositoryOwnerLogin is given. Will be ignored if repositoryId is given. + """ + repositoryName: String + + """ + Optional login of the organization owner of the private repository that + sponsors at this tier should gain read-only access to. Necessary if + repositoryName is given. Will be ignored if repositoryId is given. + """ + repositoryOwnerLogin: String + + """ + The ID of the user or organization who owns the GitHub Sponsors profile. + Defaults to the current user if omitted and sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who owns the GitHub Sponsors profile. + Defaults to the current user if omitted and sponsorableId is not given. + """ + sponsorableLogin: String + + """ + Optional message new sponsors at this tier will receive. + """ + welcomeMessage: String +} + +""" +Autogenerated return type of CreateSponsorsTier +""" +type CreateSponsorsTierPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new tier. + """ + sponsorsTier: SponsorsTier +} + +""" +Autogenerated input type of CreateSponsorship +""" +input CreateSponsorshipInput { + """ + The amount to pay to the sponsorable in US dollars. Required if a tierId is not specified. Valid values: 1-12000. + """ + amount: Int + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Whether the sponsorship should happen monthly/yearly or just this one time. Required if a tierId is not specified. + """ + isRecurring: Boolean + + """ + Specify whether others should be able to see that the sponsor is sponsoring + the sponsorable. Public visibility still does not reveal which tier is used. + """ + privacyLevel: SponsorshipPrivacy = PUBLIC + + """ + Whether the sponsor should receive email updates from the sponsorable. + """ + receiveEmails: Boolean = true + + """ + The ID of the user or organization who is acting as the sponsor, paying for + the sponsorship. Required if sponsorLogin is not given. + """ + sponsorId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsor") + + """ + The username of the user or organization who is acting as the sponsor, paying + for the sponsorship. Required if sponsorId is not given. + """ + sponsorLogin: String + + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String + + """ + The ID of one of sponsorable's existing tiers to sponsor at. Required if amount is not specified. + """ + tierId: ID @possibleTypes(concreteTypes: ["SponsorsTier"]) +} + +""" +Autogenerated return type of CreateSponsorship +""" +type CreateSponsorshipPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The sponsorship that was started. + """ + sponsorship: Sponsorship +} + +""" +Autogenerated input type of CreateSponsorships +""" +input CreateSponsorshipsInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Specify whether others should be able to see that the sponsor is sponsoring + the sponsorables. Public visibility still does not reveal the dollar value of + the sponsorship. + """ + privacyLevel: SponsorshipPrivacy = PUBLIC + + """ + Whether the sponsor should receive email updates from the sponsorables. + """ + receiveEmails: Boolean = false + + """ + The username of the user or organization who is acting as the sponsor, paying for the sponsorships. + """ + sponsorLogin: String! + + """ + The list of maintainers to sponsor and for how much apiece. + """ + sponsorships: [BulkSponsorship!]! +} + +""" +Autogenerated return type of CreateSponsorships +""" +type CreateSponsorshipsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The users and organizations who received a sponsorship. + """ + sponsorables: [Sponsorable!] +} + """ Autogenerated input type of CreateTeamDiscussionComment """ input CreateTeamDiscussionCommentInput { """ - The content of the comment. + The content of the comment. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `body` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - body: String! + body: String """ A unique identifier for the client performing the mutation. @@ -5765,9 +8096,15 @@ input CreateTeamDiscussionCommentInput { clientMutationId: String """ - The ID of the discussion to which the comment belongs. + The ID of the discussion to which the comment belongs. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `discussionId` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - discussionId: ID! @possibleTypes(concreteTypes: ["TeamDiscussion"]) + discussionId: ID @possibleTypes(concreteTypes: ["TeamDiscussion"]) } """ @@ -5783,6 +8120,9 @@ type CreateTeamDiscussionCommentPayload { The new comment. """ teamDiscussionComment: TeamDiscussionComment + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) } """ @@ -5790,9 +8130,15 @@ Autogenerated input type of CreateTeamDiscussion """ input CreateTeamDiscussionInput { """ - The content of the discussion. + The content of the discussion. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `body` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - body: String! + body: String """ A unique identifier for the client performing the mutation. @@ -5803,18 +8149,36 @@ input CreateTeamDiscussionInput { If true, restricts the visibility of this discussion to team members and organization admins. If false or not specified, allows any organization member to view this discussion. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `private` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ private: Boolean """ - The ID of the team to which the discussion belongs. + The ID of the team to which the discussion belongs. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `teamId` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - teamId: ID! @possibleTypes(concreteTypes: ["Team"]) + teamId: ID @possibleTypes(concreteTypes: ["Team"]) """ - The title of the discussion. + The title of the discussion. This field is required. + + **Upcoming Change on 2024-07-01 UTC** + **Description:** `title` will be removed. Follow the guide at + https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to + find a suitable replacement. + **Reason:** The Team Discussions feature is deprecated in favor of Organization Discussions. """ - title: String! + title: String } """ @@ -5830,6 +8194,9 @@ type CreateTeamDiscussionPayload { The new discussion. """ teamDiscussion: TeamDiscussion + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) } """ @@ -6349,7 +8716,7 @@ type DeclineTopicSuggestionPayload { } """ -The possible default permissions for repositories. +The possible base permissions for repositories. """ enum DefaultRepositoryPermissionField { """ @@ -6433,6 +8800,91 @@ type DeleteDeploymentPayload { clientMutationId: String } +""" +Autogenerated input type of DeleteDiscussionComment +""" +input DeleteDiscussionCommentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node id of the discussion comment to delete. + """ + id: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of DeleteDiscussionComment +""" +type DeleteDiscussionCommentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion comment that was just deleted. + """ + comment: DiscussionComment +} + +""" +Autogenerated input type of DeleteDiscussion +""" +input DeleteDiscussionInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the discussion to delete. + """ + id: ID! @possibleTypes(concreteTypes: ["Discussion"]) +} + +""" +Autogenerated return type of DeleteDiscussion +""" +type DeleteDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that was just deleted. + """ + discussion: Discussion +} + +""" +Autogenerated input type of DeleteEnvironment +""" +input DeleteEnvironmentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the environment to be deleted. + """ + id: ID! @possibleTypes(concreteTypes: ["Environment"]) +} + +""" +Autogenerated return type of DeleteEnvironment +""" +type DeleteEnvironmentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + """ Autogenerated input type of DeleteIpAllowListEntry """ @@ -6543,6 +8995,36 @@ type DeleteLabelPayload @preview(toggledBy: "bane-preview") { clientMutationId: String } +""" +Autogenerated input type of DeleteLinkedBranch +""" +input DeleteLinkedBranchInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the linked branch + """ + linkedBranchId: ID! @possibleTypes(concreteTypes: ["LinkedBranch"]) +} + +""" +Autogenerated return type of DeleteLinkedBranch +""" +type DeleteLinkedBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The issue the linked branch was unlinked from. + """ + issue: Issue +} + """ Autogenerated input type of DeletePackageVersion """ @@ -6673,6 +9155,140 @@ type DeleteProjectPayload { owner: ProjectOwner } +""" +Autogenerated input type of DeleteProjectV2Field +""" +input DeleteProjectV2FieldInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the field to delete. + """ + fieldId: ID! + @possibleTypes( + concreteTypes: ["ProjectV2Field", "ProjectV2IterationField", "ProjectV2SingleSelectField"] + abstractType: "ProjectV2FieldConfiguration" + ) +} + +""" +Autogenerated return type of DeleteProjectV2Field +""" +type DeleteProjectV2FieldPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The deleted field. + """ + projectV2Field: ProjectV2FieldConfiguration +} + +""" +Autogenerated input type of DeleteProjectV2 +""" +input DeleteProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to delete. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated input type of DeleteProjectV2Item +""" +input DeleteProjectV2ItemInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the item to be removed. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project from which the item should be removed. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of DeleteProjectV2Item +""" +type DeleteProjectV2ItemPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the deleted item. + """ + deletedItemId: ID +} + +""" +Autogenerated return type of DeleteProjectV2 +""" +type DeleteProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The deleted Project. + """ + projectV2: ProjectV2 +} + +""" +Autogenerated input type of DeleteProjectV2Workflow +""" +input DeleteProjectV2WorkflowInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the workflow to be removed. + """ + workflowId: ID! @possibleTypes(concreteTypes: ["ProjectV2Workflow"]) +} + +""" +Autogenerated return type of DeleteProjectV2Workflow +""" +type DeleteProjectV2WorkflowPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the deleted workflow. + """ + deletedWorkflowId: ID + + """ + The project the deleted workflow was in. + """ + projectV2: ProjectV2 +} + """ Autogenerated input type of DeletePullRequestReviewComment """ @@ -6701,6 +9317,11 @@ type DeletePullRequestReviewCommentPayload { The pull request review the deleted comment belonged to. """ pullRequestReview: PullRequestReview + + """ + The deleted pull request review comment. + """ + pullRequestReviewComment: PullRequestReviewComment } """ @@ -6758,6 +9379,31 @@ type DeleteRefPayload { clientMutationId: String } +""" +Autogenerated input type of DeleteRepositoryRuleset +""" +input DeleteRepositoryRulesetInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The global relay id of the repository ruleset to be deleted. + """ + repositoryRulesetId: ID! @possibleTypes(concreteTypes: ["RepositoryRuleset"]) +} + +""" +Autogenerated return type of DeleteRepositoryRuleset +""" +type DeleteRepositoryRulesetPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + """ Autogenerated input type of DeleteTeamDiscussionComment """ @@ -6864,6 +9510,46 @@ type DemilestonedEvent implements Node { subject: MilestoneItem! } +""" +A Dependabot Update for a dependency in a repository +""" +type DependabotUpdate implements RepositoryNode { + """ + The error from a dependency update + """ + error: DependabotUpdateError + + """ + The associated pull request + """ + pullRequest: PullRequest + + """ + The repository associated with this node. + """ + repository: Repository! +} + +""" +An error produced from a Dependabot Update +""" +type DependabotUpdateError { + """ + The body of the error + """ + body: String! + + """ + The error code + """ + errorType: String! + + """ + The title of the error + """ + title: String! +} + """ A dependency manifest entry """ @@ -6873,13 +9559,21 @@ type DependencyGraphDependency @preview(toggledBy: "hawkgirl-preview") { """ hasDependencies: Boolean! + """ + The original name of the package, as it appears in the manifest. + """ + packageLabel: String! + @deprecated( + reason: "`packageLabel` will be removed. Use normalized `packageName` field instead. Removal on 2022-10-01 UTC." + ) + """ The dependency package manager """ packageManager: String """ - The required package name + The name of the package in the canonical form used by the package manager. """ packageName: String! @@ -6934,6 +9628,66 @@ type DependencyGraphDependencyEdge @preview(toggledBy: "hawkgirl-preview") { node: DependencyGraphDependency } +""" +The possible ecosystems of a dependency graph package. +""" +enum DependencyGraphEcosystem { + """ + GitHub Actions + """ + ACTIONS + + """ + PHP packages hosted at packagist.org + """ + COMPOSER + + """ + Go modules + """ + GO + + """ + Java artifacts hosted at the Maven central repository + """ + MAVEN + + """ + JavaScript packages hosted at npmjs.com + """ + NPM + + """ + .NET packages hosted at the NuGet Gallery + """ + NUGET + + """ + Python packages hosted at PyPI.org + """ + PIP + + """ + Dart packages hosted at pub.dev + """ + PUB + + """ + Ruby gems hosted at RubyGems.org + """ + RUBYGEMS + + """ + Rust crates + """ + RUST + + """ + Swift packages + """ + SWIFT +} + """ Dependency manifest for a repository """ @@ -7344,6 +10098,352 @@ enum DeploymentOrderField { CREATED_AT } +""" +A protection rule. +""" +type DeploymentProtectionRule { + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + Whether deployments to this environment can be approved by the user who created the deployment. + """ + preventSelfReview: Boolean + + """ + The teams or users that can review the deployment + """ + reviewers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentReviewerConnection! + + """ + The timeout in minutes for this protection rule. + """ + timeout: Int! + + """ + The type of protection rule. + """ + type: DeploymentProtectionRuleType! +} + +""" +The connection type for DeploymentProtectionRule. +""" +type DeploymentProtectionRuleConnection { + """ + A list of edges. + """ + edges: [DeploymentProtectionRuleEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentProtectionRule] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentProtectionRuleEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentProtectionRule +} + +""" +The possible protection rule types. +""" +enum DeploymentProtectionRuleType { + """ + Required reviewers + """ + REQUIRED_REVIEWERS + + """ + Wait timer + """ + WAIT_TIMER +} + +""" +A request to deploy a workflow run to an environment. +""" +type DeploymentRequest { + """ + Whether or not the current user can approve the deployment + """ + currentUserCanApprove: Boolean! + + """ + The target environment of the deployment + """ + environment: Environment! + + """ + The teams or users that can review the deployment + """ + reviewers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentReviewerConnection! + + """ + The wait timer in minutes configured in the environment + """ + waitTimer: Int! + + """ + The wait timer in minutes configured in the environment + """ + waitTimerStartedAt: DateTime +} + +""" +The connection type for DeploymentRequest. +""" +type DeploymentRequestConnection { + """ + A list of edges. + """ + edges: [DeploymentRequestEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentRequest] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentRequestEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentRequest +} + +""" +A deployment review. +""" +type DeploymentReview implements Node { + """ + The comment the user left. + """ + comment: String! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The environments approved or rejected + """ + environments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): EnvironmentConnection! + id: ID! + + """ + The decision of the user. + """ + state: DeploymentReviewState! + + """ + The user that reviewed the deployment. + """ + user: User! +} + +""" +The connection type for DeploymentReview. +""" +type DeploymentReviewConnection { + """ + A list of edges. + """ + edges: [DeploymentReviewEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentReview] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentReviewEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentReview +} + +""" +The possible states for a deployment review. +""" +enum DeploymentReviewState { + """ + The deployment was approved. + """ + APPROVED + + """ + The deployment was rejected. + """ + REJECTED +} + +""" +Users and teams. +""" +union DeploymentReviewer = Team | User + +""" +The connection type for DeploymentReviewer. +""" +type DeploymentReviewerConnection { + """ + A list of edges. + """ + edges: [DeploymentReviewerEdge] + + """ + A list of nodes. + """ + nodes: [DeploymentReviewer] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DeploymentReviewerEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: DeploymentReviewer +} + """ The possible states in which a deployment can be. """ @@ -7393,6 +10493,11 @@ enum DeploymentState { """ QUEUED + """ + The deployment was successful. + """ + SUCCESS + """ The deployment is waiting. """ @@ -7535,6 +10640,36 @@ enum DeploymentStatusState { WAITING } +""" +Autogenerated input type of DequeuePullRequest +""" +input DequeuePullRequestInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the pull request to be dequeued. + """ + id: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of DequeuePullRequest +""" +type DequeuePullRequestPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The merge queue entry of the dequeued pull request. + """ + mergeQueueEntry: MergeQueueEntry +} + """ The possible sides of a diff. """ @@ -7617,199 +10752,189 @@ type DisconnectedEvent implements Node { } """ -Autogenerated input type of DismissPullRequestReview +A discussion in a repository. """ -input DismissPullRequestReviewInput { +type Discussion implements Closable & Comment & Deletable & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & Updatable & Votable { """ - A unique identifier for the client performing the mutation. + Reason that the conversation was locked. """ - clientMutationId: String + activeLockReason: LockReason """ - The contents of the pull request review dismissal message. + The comment chosen as this discussion's answer, if any. """ - message: String! + answer: DiscussionComment """ - The Node ID of the pull request review to modify. + The time when a user chose this discussion's answer, if answered. """ - pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"]) -} + answerChosenAt: DateTime -""" -Autogenerated return type of DismissPullRequestReview -""" -type DismissPullRequestReviewPayload { """ - A unique identifier for the client performing the mutation. + The user who chose this discussion's answer, if answered. """ - clientMutationId: String + answerChosenBy: Actor """ - The dismissed pull request review. + The actor who authored the comment. """ - pullRequestReview: PullRequestReview -} + author: Actor -""" -Specifies a review comment to be left with a Pull Request Review. -""" -input DraftPullRequestReviewComment { """ - Body of the comment to leave. + Author's association with the subject of the comment. """ - body: String! + authorAssociation: CommentAuthorAssociation! """ - Path to the file being commented on. + The main text of the discussion post. """ - path: String! + body: String! """ - Position in the file to leave a comment on. + The body rendered to HTML. """ - position: Int! -} + bodyHTML: HTML! -""" -Specifies a review comment thread to be left with a Pull Request Review. -""" -input DraftPullRequestReviewThread { """ - Body of the comment to leave. + The body rendered to text. """ - body: String! + bodyText: String! """ - The line of the blob to which the thread refers. The end of the line range for multi-line comments. + The category for this discussion. """ - line: Int! + category: DiscussionCategory! """ - Path to the file being commented on. + Indicates if the object is closed (definition of closed may depend on type) """ - path: String! + closed: Boolean! """ - 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. + Identifies the date and time when the object was closed. """ - side: DiffSide = RIGHT + closedAt: DateTime """ - The first line of the range to which the comment refers. + The replies to the discussion. """ - startLine: Int + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The side of the diff on which the start line resides. - """ - startSide: DiffSide = RIGHT -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Autogenerated input type of EnablePullRequestAutoMerge -""" -input EnablePullRequestAutoMergeInput { - """ - The email address to associate with this merge. - """ - authorEmail: String + """ + 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 + ): DiscussionCommentConnection! """ - Commit body to use for the commit when the PR is mergable; if omitted, a default message will be used. + Identifies the date and time when the object was created. """ - commitBody: String + createdAt: DateTime! """ - Commit headline to use for the commit when the PR is mergable; if omitted, a default message will be used. + Check if this comment was created via an email reply. """ - commitHeadline: String + createdViaEmail: Boolean! """ - The merge method to use. If omitted, defaults to 'MERGE' + Identifies the primary key from the database. """ - mergeMethod: PullRequestMergeMethod = MERGE + databaseId: Int """ - ID of the pull request to enable auto-merge on. + The actor who edited the comment. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) -} + editor: Actor + id: ID! -""" -Autogenerated return type of EnablePullRequestAutoMerge -""" -type EnablePullRequestAutoMergePayload { """ - Identifies the actor who performed the event. + Check if this comment was edited and includes an edit with the creation data """ - actor: Actor + includesCreatedEdit: Boolean! """ - A unique identifier for the client performing the mutation. + Only return answered/unanswered discussions """ - clientMutationId: String + isAnswered: Boolean """ - The pull request auto-merge was enabled on. + A list of labels associated with the object. """ - pullRequest: PullRequest -} + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -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. + Returns the elements in the list that come before the specified cursor. """ - size: Int - ): URI! + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection """ - Enterprise billing information visible to enterprise billing managers. + The moment the editor made the last edit """ - billingInfo: EnterpriseBillingInfo + lastEditedAt: DateTime """ - Identifies the date and time when the object was created. + `true` if the object is locked """ - createdAt: DateTime! + locked: Boolean! """ - Identifies the primary key from the database. + The number identifying this discussion within the repository. """ - databaseId: Int + number: Int! """ - The description of the enterprise. + The poll associated with this discussion, if one exists. """ - description: String + poll: DiscussionPoll """ - The description of the enterprise as HTML. + Identifies when the comment was published at. """ - descriptionHTML: HTML! - id: ID! + publishedAt: DateTime """ - The location of the enterprise. + A list of reactions grouped by content left on the subject. """ - location: String + reactionGroups: [ReactionGroup!] """ - A list of users who are members of this enterprise. + A list of Reactions left on the Issue. """ - members( + reactions( """ Returns the elements in the list that come after the specified cursor. """ @@ -7821,9 +10946,9 @@ type Enterprise implements Node { before: String """ - Only return members within the selected GitHub Enterprise deployment + Allows filtering Reactions by emoji. """ - deployment: EnterpriseUserDeployment + content: ReactionContent """ Returns the first _n_ elements from the list. @@ -7836,90 +10961,50 @@ type Enterprise implements Node { last: Int """ - Ordering options for members returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} - - """ - Only return members within the organizations with these logins - """ - organizationLogins: [String!] - - """ - The search string to look for. - """ - query: String - - """ - The role of the user in the enterprise organization or server. + Allows specifying the order in which reactions are returned. """ - role: EnterpriseUserAccountMembershipRole - ): EnterpriseMemberConnection! + orderBy: ReactionOrder + ): ReactionConnection! """ - The name of the enterprise. + The repository associated with this node. """ - name: String! + repository: Repository! """ - A list of organizations that belong to this enterprise. + The path for this discussion. """ - organizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for organizations returned from the connection. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + resourcePath: URI! - """ - The search string to look for. - """ - query: String - ): OrganizationConnection! + """ + Identifies the reason for the discussion's state. + """ + stateReason: DiscussionStateReason """ - Enterprise information only visible to enterprise owners. + The title of this discussion. """ - ownerInfo: EnterpriseOwnerInfo + title: String! """ - The HTTP path for this enterprise. + Identifies the date and time when the object was last updated. """ - resourcePath: URI! + updatedAt: DateTime! """ - The URL-friendly identifier for the enterprise. + Number of upvotes that this subject has received. """ - slug: String! + upvoteCount: Int! """ - The HTTP URL for this enterprise. + The URL for this discussion. """ url: URI! """ - A list of user accounts on this enterprise. + A list of edits to this content. """ - userAccounts( + userContentEdits( """ Returns the elements in the list that come after the specified cursor. """ @@ -7939,113 +11024,123 @@ type Enterprise implements Node { Returns the last _n_ elements from the list. """ last: Int - ): EnterpriseUserAccountConnection! + ): UserContentEditConnection """ - Is the current viewer an admin of this enterprise? + Indicates if the object can be closed by the viewer. """ - viewerIsAdmin: Boolean! + viewerCanClose: Boolean! """ - The URL of the enterprise website. + Check if the current viewer can delete this object. """ - websiteUrl: URI -} + viewerCanDelete: Boolean! -""" -The connection type for User. -""" -type EnterpriseAdministratorConnection { """ - A list of edges. + Can user react to this subject """ - edges: [EnterpriseAdministratorEdge] + viewerCanReact: Boolean! """ - A list of nodes. + Indicates if the object can be reopened by the viewer. """ - nodes: [User] + viewerCanReopen: Boolean! """ - Information to aid in pagination. + Check if the viewer is able to change their subscription status for the repository. """ - pageInfo: PageInfo! + viewerCanSubscribe: Boolean! """ - Identifies the total count of items in the connection. + Check if the current viewer can update this object. """ - totalCount: Int! -} + viewerCanUpdate: Boolean! -""" -A User who is an administrator of an enterprise. -""" -type EnterpriseAdministratorEdge { """ - A cursor for use in pagination. + Whether or not the current user can add or remove an upvote on this subject. """ - cursor: String! + viewerCanUpvote: Boolean! """ - The item at the end of the edge. + Did the viewer author this comment. """ - node: User + viewerDidAuthor: Boolean! """ - The role of the administrator. + Whether or not the current user has already upvoted this subject. """ - role: EnterpriseAdministratorRole! + viewerHasUpvoted: Boolean! + + """ + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + """ + viewerSubscription: SubscriptionState } """ -An invitation for a user to become an owner or billing manager of an enterprise. +A category for discussions in a repository. """ -type EnterpriseAdministratorInvitation implements Node { +type DiscussionCategory implements Node & RepositoryNode { """ Identifies the date and time when the object was created. """ createdAt: DateTime! """ - The email of the person who was invited to the enterprise. + A description of this category. """ - email: String + description: String """ - The enterprise the invitation is for. + An emoji representing this category. """ - enterprise: Enterprise! + emoji: String! + + """ + This category's emoji rendered as HTML. + """ + emojiHTML: HTML! id: ID! """ - The user who was invited to the enterprise. + Whether or not discussions in this category support choosing an answer with the markDiscussionCommentAsAnswer mutation. """ - invitee: User + isAnswerable: Boolean! """ - The user who created the invitation. + The name of this category. """ - inviter: User + name: String! """ - The invitee's pending role in the enterprise (owner or billing_manager). + The repository associated with this node. """ - role: EnterpriseAdministratorRole! + repository: Repository! + + """ + The slug of this category. + """ + slug: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! } """ -The connection type for EnterpriseAdministratorInvitation. +The connection type for DiscussionCategory. """ -type EnterpriseAdministratorInvitationConnection { +type DiscussionCategoryConnection { """ A list of edges. """ - edges: [EnterpriseAdministratorInvitationEdge] + edges: [DiscussionCategoryEdge] """ A list of nodes. """ - nodes: [EnterpriseAdministratorInvitation] + nodes: [DiscussionCategory] """ Information to aid in pagination. @@ -8061,7 +11156,7 @@ type EnterpriseAdministratorInvitationConnection { """ An edge in a connection. """ -type EnterpriseAdministratorInvitationEdge { +type DiscussionCategoryEdge { """ A cursor for use in pagination. """ @@ -8070,217 +11165,215 @@ type EnterpriseAdministratorInvitationEdge { """ The item at the end of the edge. """ - node: EnterpriseAdministratorInvitation + node: DiscussionCategory } """ -Ordering options for enterprise administrator invitation connections +The possible reasons for closing a discussion. """ -input EnterpriseAdministratorInvitationOrder { +enum DiscussionCloseReason { """ - The ordering direction. + The discussion is a duplicate of another """ - direction: OrderDirection! + DUPLICATE """ - The field to order enterprise administrator invitations by. + The discussion is no longer relevant """ - field: EnterpriseAdministratorInvitationOrderField! -} + OUTDATED -""" -Properties by which enterprise administrator invitation connections can be ordered. -""" -enum EnterpriseAdministratorInvitationOrderField { """ - Order enterprise administrator member invitations by creation time + The discussion has been resolved """ - CREATED_AT + RESOLVED } """ -The possible administrator roles in an enterprise account. +A comment on a discussion. """ -enum EnterpriseAdministratorRole { +type DiscussionComment implements Comment & Deletable & Minimizable & Node & Reactable & Updatable & UpdatableComment & Votable { """ - Represents a billing manager of the enterprise account. + The actor who authored the comment. """ - BILLING_MANAGER + author: Actor """ - Represents an owner of the enterprise account. + Author's association with the subject of the comment. """ - OWNER -} + authorAssociation: CommentAuthorAssociation! -""" -Metadata for an audit entry containing enterprise account information. -""" -interface EnterpriseAuditEntryData { """ - The HTTP path for this enterprise. + The body as Markdown. """ - enterpriseResourcePath: URI + body: String! """ - The slug of the enterprise. + The body rendered to HTML. """ - enterpriseSlug: String + bodyHTML: HTML! """ - The HTTP URL for this enterprise. + The body rendered to text. """ - enterpriseUrl: URI -} + bodyText: String! -""" -Enterprise billing information visible to enterprise billing managers and owners. -""" -type EnterpriseBillingInfo { """ - The number of licenseable users/emails across the enterprise. + Identifies the date and time when the object was created. """ - allLicensableUsersCount: Int! + createdAt: DateTime! """ - The number of data packs used by all organizations owned by the enterprise. + Check if this comment was created via an email reply. """ - assetPacks: Int! + createdViaEmail: Boolean! """ - The number of available seats across all owned organizations based on the unique number of billable users. + Identifies the primary key from the database. """ - availableSeats: Int! @deprecated(reason: "`availableSeats` will be replaced with `totalAvailableLicenses` to provide more clarity on the value being returned Use EnterpriseBillingInfo.totalAvailableLicenses instead. Removal on 2020-01-01 UTC.") + databaseId: Int """ - The bandwidth quota in GB for all organizations owned by the enterprise. + The time when this replied-to comment was deleted """ - bandwidthQuota: Float! + deletedAt: DateTime """ - The bandwidth usage in GB for all organizations owned by the enterprise. + The discussion this comment was created in """ - bandwidthUsage: Float! + discussion: Discussion """ - The bandwidth usage as a percentage of the bandwidth quota. + The actor who edited the comment. """ - bandwidthUsagePercentage: Int! + editor: Actor + id: ID! """ - The total seats across all organizations owned by the enterprise. + Check if this comment was edited and includes an edit with the creation data """ - seats: Int! @deprecated(reason: "`seats` will be replaced with `totalLicenses` to provide more clarity on the value being returned Use EnterpriseBillingInfo.totalLicenses instead. Removal on 2020-01-01 UTC.") + includesCreatedEdit: Boolean! """ - The storage quota in GB for all organizations owned by the enterprise. + Has this comment been chosen as the answer of its discussion? """ - storageQuota: Float! + isAnswer: Boolean! """ - The storage usage in GB for all organizations owned by the enterprise. + Returns whether or not a comment has been minimized. """ - storageUsage: Float! + isMinimized: Boolean! """ - The storage usage as a percentage of the storage quota. + The moment the editor made the last edit """ - storageUsagePercentage: Int! + lastEditedAt: DateTime """ - The number of available licenses across all owned organizations based on the unique number of billable users. + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. """ - totalAvailableLicenses: Int! + minimizedReason: String """ - The total number of licenses allocated. + Identifies when the comment was published at. """ - totalLicenses: Int! -} + publishedAt: DateTime -""" -The possible values for the enterprise default repository permission setting. -""" -enum EnterpriseDefaultRepositoryPermissionSettingValue { """ - Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. + A list of reactions grouped by content left on the subject. """ - ADMIN + reactionGroups: [ReactionGroup!] """ - Organization members will only be able to clone and pull public repositories. + A list of Reactions left on the Issue. """ - NONE + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Organizations in the enterprise choose default repository permissions for their members. - """ - NO_POLICY + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Organization members will be able to clone and pull all organization repositories. - """ - READ + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent - """ - Organization members will be able to clone, pull, and push all organization repositories. - """ - WRITE -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -The possible values for an enabled/disabled enterprise setting. -""" -enum EnterpriseEnabledDisabledSettingValue { - """ - The setting is disabled for organizations in the enterprise. - """ - DISABLED + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The setting is enabled for organizations in the enterprise. + The threaded replies to this comment. """ - ENABLED + replies( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DiscussionCommentConnection! """ - There is no policy set for organizations in the enterprise. + The discussion comment this comment is a reply to """ - NO_POLICY -} + replyTo: DiscussionComment -""" -The possible values for an enabled/no policy enterprise setting. -""" -enum EnterpriseEnabledSettingValue { """ - The setting is enabled for organizations in the enterprise. + The path for this discussion comment. """ - ENABLED + resourcePath: URI! """ - There is no policy set for organizations in the enterprise. + Identifies the date and time when the object was last updated. """ - NO_POLICY -} + updatedAt: DateTime! -""" -An identity provider configured to provision identities for an enterprise. -""" -type EnterpriseIdentityProvider implements Node { """ - The digest algorithm used to sign SAML requests for the identity provider. + Number of upvotes that this subject has received. """ - digestMethod: SamlDigestAlgorithm + upvoteCount: Int! """ - The enterprise this identity provider belongs to. + The URL for this discussion comment. """ - enterprise: Enterprise + url: URI! """ - ExternalIdentities provisioned by this identity provider. + A list of edits to this content. """ - externalIdentities( + userContentEdits( """ Returns the elements in the list that come after the specified cursor. """ @@ -8300,53 +11393,72 @@ type EnterpriseIdentityProvider implements Node { Returns the last _n_ elements from the list. """ last: Int - ): ExternalIdentityConnection! - id: ID! + ): UserContentEditConnection """ - The x509 certificate used by the identity provider to sign assertions and responses. + Check if the current viewer can delete this object. """ - idpCertificate: X509Certificate + viewerCanDelete: Boolean! """ - The Issuer Entity ID for the SAML identity provider. + Can the current user mark this comment as an answer? """ - issuer: String + viewerCanMarkAsAnswer: Boolean! """ - Recovery codes that can be used by admins to access the enterprise if the identity provider is unavailable. + Check if the current viewer can minimize this object. """ - recoveryCodes: [String!] + viewerCanMinimize: Boolean! """ - The signature algorithm used to sign SAML requests for the identity provider. + Can user react to this subject """ - signatureMethod: SamlSignatureAlgorithm + viewerCanReact: Boolean! """ - The URL endpoint for the identity provider's SAML SSO. + Can the current user unmark this comment as an answer? """ - ssoUrl: URI -} + viewerCanUnmarkAsAnswer: Boolean! -""" -An object that is a member of an enterprise. -""" -union EnterpriseMember = EnterpriseUserAccount | User + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Whether or not the current user can add or remove an upvote on this subject. + """ + viewerCanUpvote: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! + + """ + Whether or not the current user has already upvoted this subject. + """ + viewerHasUpvoted: Boolean! +} """ -The connection type for EnterpriseMember. +The connection type for DiscussionComment. """ -type EnterpriseMemberConnection { +type DiscussionCommentConnection { """ A list of edges. """ - edges: [EnterpriseMemberEdge] + edges: [DiscussionCommentEdge] """ A list of nodes. """ - nodes: [EnterpriseMember] + nodes: [DiscussionComment] """ Information to aid in pagination. @@ -8360,113 +11472,191 @@ type EnterpriseMemberConnection { } """ -A User who is a member of an enterprise through one or more organizations. +An edge in a connection. """ -type EnterpriseMemberEdge { +type DiscussionCommentEdge { """ A cursor for use in pagination. """ cursor: String! """ - Whether the user does not have a license for the enterprise. + The item at the end of the edge. + """ + node: DiscussionComment +} + +""" +The connection type for Discussion. +""" +type DiscussionConnection { + """ + A list of edges. + """ + edges: [DiscussionEdge] + + """ + A list of nodes. + """ + nodes: [Discussion] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type DiscussionEdge { + """ + A cursor for use in pagination. """ - isUnlicensed: Boolean! @deprecated(reason: "All members consume a license Removal on 2021-01-01 UTC.") + cursor: String! """ The item at the end of the edge. """ - node: EnterpriseMember + node: Discussion } """ -Ordering options for enterprise member connections. +Ways in which lists of discussions can be ordered upon return. """ -input EnterpriseMemberOrder { +input DiscussionOrder { """ - The ordering direction. + The direction in which to order discussions by the specified field. """ direction: OrderDirection! """ - The field to order enterprise members by. + The field by which to order discussions. """ - field: EnterpriseMemberOrderField! + field: DiscussionOrderField! } """ -Properties by which enterprise member connections can be ordered. +Properties by which discussion connections can be ordered. """ -enum EnterpriseMemberOrderField { +enum DiscussionOrderField { """ - Order enterprise members by creation time + Order discussions by creation time. """ CREATED_AT """ - Order enterprise members by login + Order discussions by most recent modification time. """ - LOGIN + UPDATED_AT } """ -The possible values for the enterprise members can create repositories setting. +A poll for a discussion. """ -enum EnterpriseMembersCanCreateRepositoriesSettingValue { +type DiscussionPoll implements Node { """ - Members will be able to create public and private repositories. + The discussion that this poll belongs to. """ - ALL + discussion: Discussion + id: ID! """ - Members will not be able to create public or private repositories. + The options for this poll. """ - DISABLED + options( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the options for the discussion poll. + """ + orderBy: DiscussionPollOptionOrder = {field: AUTHORED_ORDER, direction: ASC} + ): DiscussionPollOptionConnection """ - Organization administrators choose whether to allow members to create repositories. + The question that is being asked by this poll. """ - NO_POLICY + question: String! """ - Members will be able to create only private repositories. + The total number of votes that have been cast for this poll. """ - PRIVATE + totalVoteCount: Int! """ - Members will be able to create only public repositories. + Indicates if the viewer has permission to vote in this poll. """ - PUBLIC + viewerCanVote: Boolean! + + """ + Indicates if the viewer has voted for any option in this poll. + """ + viewerHasVoted: Boolean! } """ -The possible values for the members can make purchases setting. +An option for a discussion poll. """ -enum EnterpriseMembersCanMakePurchasesSettingValue { +type DiscussionPollOption implements Node { + id: ID! + """ - The setting is disabled for organizations in the enterprise. + The text for this option. """ - DISABLED + option: String! """ - The setting is enabled for organizations in the enterprise. + The discussion poll that this option belongs to. """ - ENABLED + poll: DiscussionPoll + + """ + The total number of votes that have been cast for this option. + """ + totalVoteCount: Int! + + """ + Indicates if the viewer has voted for this option in the poll. + """ + viewerHasVoted: Boolean! } """ -The connection type for Organization. +The connection type for DiscussionPollOption. """ -type EnterpriseOrganizationMembershipConnection { +type DiscussionPollOptionConnection { """ A list of edges. """ - edges: [EnterpriseOrganizationMembershipEdge] + edges: [DiscussionPollOptionEdge] """ A list of nodes. """ - nodes: [Organization] + nodes: [DiscussionPollOption] """ Information to aid in pagination. @@ -8480,9 +11670,9 @@ type EnterpriseOrganizationMembershipConnection { } """ -An enterprise organization that a user is a member of. +An edge in a connection. """ -type EnterpriseOrganizationMembershipEdge { +type DiscussionPollOptionEdge { """ A cursor for use in pagination. """ @@ -8491,172 +11681,187 @@ type EnterpriseOrganizationMembershipEdge { """ The item at the end of the edge. """ - node: Organization + node: DiscussionPollOption +} +""" +Ordering options for discussion poll option connections. +""" +input DiscussionPollOptionOrder { """ - The role of the user in the enterprise membership. + The ordering direction. """ - role: EnterpriseUserAccountMembershipRole! + direction: OrderDirection! + + """ + The field to order poll options by. + """ + field: DiscussionPollOptionOrderField! } """ -The connection type for User. +Properties by which discussion poll option connections can be ordered. """ -type EnterpriseOutsideCollaboratorConnection { +enum DiscussionPollOptionOrderField { """ - A list of edges. + Order poll options by the order that the poll author specified when creating the poll. """ - edges: [EnterpriseOutsideCollaboratorEdge] + AUTHORED_ORDER """ - A list of nodes. + Order poll options by the number of votes it has. """ - nodes: [User] + VOTE_COUNT +} +""" +The possible states of a discussion. +""" +enum DiscussionState { """ - Information to aid in pagination. + A discussion that has been closed """ - pageInfo: PageInfo! + CLOSED """ - Identifies the total count of items in the connection. + A discussion that is open """ - totalCount: Int! + OPEN } """ -A User who is an outside collaborator of an enterprise through one or more organizations. +The possible state reasons of a discussion. """ -type EnterpriseOutsideCollaboratorEdge { +enum DiscussionStateReason { """ - A cursor for use in pagination. + The discussion is a duplicate of another """ - cursor: String! + DUPLICATE """ - Whether the outside collaborator does not have a license for the enterprise. + The discussion is no longer relevant """ - isUnlicensed: Boolean! @deprecated(reason: "All outside collaborators consume a license Removal on 2021-01-01 UTC.") + OUTDATED """ - The item at the end of the edge. + The discussion was reopened """ - node: User + REOPENED """ - The enterprise organization repositories this user is a member of. + The discussion has been resolved """ - repositories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + RESOLVED +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Autogenerated input type of DismissPullRequestReview +""" +input DismissPullRequestReviewInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The contents of the pull request review dismissal message. + """ + message: String! - """ - Ordering options for repositories. - """ - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! + """ + The Node ID of the pull request review to modify. + """ + pullRequestReviewId: ID! @possibleTypes(concreteTypes: ["PullRequestReview"]) } """ -Enterprise information only visible to enterprise owners. +Autogenerated return type of DismissPullRequestReview """ -type EnterpriseOwnerInfo { +type DismissPullRequestReviewPayload { """ - A list of all of the administrators for this enterprise. + A unique identifier for the client performing the mutation. """ - admins( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + clientMutationId: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The dismissed pull request review. + """ + pullRequestReview: PullRequestReview +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +The possible reasons that a Dependabot alert was dismissed. +""" +enum DismissReason { + """ + A fix has already been started + """ + FIX_STARTED - """ - Ordering options for administrators returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + """ + This alert is inaccurate or incorrect + """ + INACCURATE - """ - The search string to look for. - """ - query: String + """ + Vulnerable code is not actually used + """ + NOT_USED - """ - The role to filter by. - """ - role: EnterpriseAdministratorRole - ): EnterpriseAdministratorConnection! + """ + No bandwidth to fix this + """ + NO_BANDWIDTH """ - A list of users in the enterprise who currently have two-factor authentication disabled. + Risk is tolerable to this project """ - affiliatedUsersWithTwoFactorDisabled( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + TOLERABLE_RISK +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +Autogenerated input type of DismissRepositoryVulnerabilityAlert +""" +input DismissRepositoryVulnerabilityAlertInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The reason the Dependabot alert is being dismissed. + """ + dismissReason: DismissReason! - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! + """ + The Dependabot alert ID to dismiss. + """ + repositoryVulnerabilityAlertId: ID! @possibleTypes(concreteTypes: ["RepositoryVulnerabilityAlert"]) +} +""" +Autogenerated return type of DismissRepositoryVulnerabilityAlert +""" +type DismissRepositoryVulnerabilityAlertPayload { """ - Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. + A unique identifier for the client performing the mutation. """ - affiliatedUsersWithTwoFactorDisabledExist: Boolean! + clientMutationId: String """ - The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. + The Dependabot alert that was dismissed """ - allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! + repositoryVulnerabilityAlert: RepositoryVulnerabilityAlert +} +""" +A draft issue within a project. +""" +type DraftIssue implements Node { """ - A list of enterprise organizations configured with the provided private repository forking setting value. + A list of users to assigned to this draft issue. """ - allowPrivateRepositoryForkingSettingOrganizations( + assignees( """ Returns the elements in the list that come after the specified cursor. """ @@ -8676,27 +11881,38 @@ type EnterpriseOwnerInfo { Returns the last _n_ elements from the list. """ last: Int + ): UserConnection! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The body of the draft issue. + """ + body: String! - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The body of the draft issue rendered to HTML. + """ + bodyHTML: HTML! """ - The setting value for base repository permissions for organizations in this enterprise. + The body of the draft issue rendered to text. """ - defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! + bodyText: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! """ - A list of enterprise organizations configured with the provided default repository permission. + The actor who created this draft issue. """ - defaultRepositoryPermissionSettingOrganizations( + 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. """ @@ -8716,22 +11932,12 @@ type EnterpriseOwnerInfo { Returns the last _n_ elements from the list. """ last: Int - - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - - """ - The permission to find organizations for. - """ - value: DefaultRepositoryPermissionField! - ): OrganizationConnection! + ): ProjectV2ItemConnection! """ - A list of domains owned by the enterprise. + Projects that link to this draft issue (currently draft issue can be linked to only one project). """ - domains( + projectsV2( """ Returns the elements in the list that come after the specified cursor. """ @@ -8747,207 +11953,247 @@ type EnterpriseOwnerInfo { """ first: Int - """ - Filter whether or not the domain is verified. - """ - isVerified: Boolean = null - """ Returns the last _n_ elements from the list. """ last: Int + ): ProjectV2Connection! - """ - Ordering options for verifiable domains returned. - """ - orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} - ): VerifiableDomainConnection! + """ + The title of the draft issue + """ + title: String! """ - Enterprise Server installations owned by the enterprise. + Identifies the date and time when the object was last updated. """ - enterpriseServerInstallations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 { + """ + Body of the comment to leave. + """ + body: String! - """ - Whether or not to only return installations discovered via GitHub Connect. - """ - connectedOnly: Boolean = false + """ + 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 +""" +Specifies a review comment thread to be left with a Pull Request Review. +""" +input DraftPullRequestReviewThread { + """ + Body of the comment to leave. + """ + body: String! - """ - Ordering options for Enterprise Server installations returned. - """ - orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} - ): EnterpriseServerInstallationConnection! + """ + The line of the blob to which the thread refers. The end of the line range for multi-line comments. + """ + line: Int! """ - The setting value for whether the enterprise has an IP allow list enabled. + Path to the file being commented on. """ - ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + path: String! """ - The IP addresses that are allowed to access resources owned by the enterprise. + The side of the diff on which the line resides. For multi-line comments, this is the side for the end of the line range. """ - ipAllowListEntries( - """ - 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 +""" +Autogenerated input type of EnablePullRequestAutoMerge +""" +input EnablePullRequestAutoMergeInput { + """ + The email address to associate with this merge. + """ + authorEmail: String - """ - 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 """ - Whether or not the default repository permission is currently being updated. + 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. """ - isUpdatingDefaultRepositoryPermission: Boolean! + commitBody: String """ - Whether the two-factor authentication requirement is currently being enforced. + 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. """ - isUpdatingTwoFactorRequirement: Boolean! + commitHeadline: String """ - The setting value for whether organization members with admin permissions on a - repository can change repository visibility. + The expected head OID of the pull request. """ - membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue! + expectedHeadOid: GitObjectID """ - A list of enterprise organizations configured with the provided can change repository visibility 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. """ - membersCanChangeRepositoryVisibilitySettingOrganizations( - """ - 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 + """ + ID of the pull request to enable auto-merge on. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Autogenerated return type of EnablePullRequestAutoMerge +""" +type EnablePullRequestAutoMergePayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The pull request auto-merge was enabled on. + """ + pullRequest: PullRequest +} - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! +""" +Autogenerated input type of EnqueuePullRequest +""" +input EnqueuePullRequestInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String """ - The setting value for whether members of organizations in the enterprise can create internal repositories. + The expected head OID of the pull request. """ - membersCanCreateInternalRepositoriesSetting: Boolean + expectedHeadOid: GitObjectID """ - The setting value for whether members of organizations in the enterprise can create private repositories. + Add the pull request to the front of the queue. """ - membersCanCreatePrivateRepositoriesSetting: Boolean + jump: Boolean """ - The setting value for whether members of organizations in the enterprise can create public repositories. + The ID of the pull request to enqueue. """ - membersCanCreatePublicRepositoriesSetting: Boolean + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} +""" +Autogenerated return type of EnqueuePullRequest +""" +type EnqueuePullRequestPayload { """ - The setting value for whether members of organizations in the enterprise can create repositories. + A unique identifier for the client performing the mutation. """ - membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue + clientMutationId: String """ - A list of enterprise organizations configured with the provided repository creation setting value. + The merge queue entry for the enqueued pull request. """ - membersCanCreateRepositoriesSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + mergeQueueEntry: MergeQueueEntry +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +An account to manage multiple organizations with consolidated policy and billing. +""" +type Enterprise implements AnnouncementBanner & Node { + """ + The text of the announcement + """ + announcement: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The expiration date of the announcement, if any + """ + announcementExpiresAt: DateTime - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Whether the announcement can be dismissed by the user + """ + announcementUserDismissible: Boolean + """ + A URL pointing to the enterprise's public avatar. + """ + avatarUrl( """ - Ordering options for organizations with this setting. + The size of the resulting square image. """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + size: Int + ): URI! - """ - The setting to find organizations for. - """ - value: OrganizationMembersCanCreateRepositoriesSettingValue! - ): OrganizationConnection! + """ + Enterprise billing information visible to enterprise billing managers. + """ + billingInfo: EnterpriseBillingInfo """ - The setting value for whether members with admin permissions for repositories can delete issues. + Identifies the date and time when the object was created. """ - membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue! + createdAt: DateTime! """ - A list of enterprise organizations configured with the provided members can delete issues setting value. + Identifies the primary key from the database. """ - membersCanDeleteIssuesSettingOrganizations( + 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( """ Returns the elements in the list that come after the specified cursor. """ @@ -8958,36 +12204,57 @@ type EnterpriseOwnerInfo { """ before: String + """ + Only return members within the selected GitHub Enterprise deployment + """ + deployment: EnterpriseUserDeployment + """ Returns the first _n_ elements from the list. """ first: Int + """ + Only return members with this two-factor authentication status. Does not + include members who only have an account on a GitHub Enterprise Server instance. + """ + hasTwoFactorEnabled: Boolean = null + """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for organizations with this setting. + Ordering options for members returned from the connection. """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} """ - The setting value to find organizations for. + Only return members within the organizations with these logins """ - value: Boolean! - ): OrganizationConnection! + organizationLogins: [String!] + + """ + The search string to look for. + """ + query: String + + """ + The role of the user in the enterprise organization or server. + """ + role: EnterpriseUserAccountMembershipRole + ): EnterpriseMemberConnection! """ - The setting value for whether members with admin permissions for repositories can delete or transfer repositories. + The name of the enterprise. """ - membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! + name: String! """ - A list of enterprise organizations configured with the provided members can delete repositories setting value. + A list of organizations that belong to this enterprise. """ - membersCanDeleteRepositoriesSettingOrganizations( + organizations( """ Returns the elements in the list that come after the specified cursor. """ @@ -9009,190 +12276,494 @@ type EnterpriseOwnerInfo { last: Int """ - Ordering options for organizations with this setting. + Ordering options for organizations returned from the connection. """ orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} """ - The setting value to find organizations for. + The search string to look for. """ - value: Boolean! + query: String + + """ + The viewer's role in an organization. + """ + viewerOrganizationRole: RoleInOrganization ): OrganizationConnection! """ - The setting value for whether members of organizations in the enterprise can invite outside collaborators. + Enterprise information visible to enterprise owners or enterprise owners' + personal access tokens (classic) with read:enterprise or admin:enterprise scope. """ - membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! + ownerInfo: EnterpriseOwnerInfo """ - A list of enterprise organizations configured with the provided members can invite collaborators setting value. + The HTTP path for this enterprise. """ - membersCanInviteCollaboratorsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + resourcePath: URI! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The URL-friendly identifier for the enterprise. + """ + slug: String! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for this enterprise. + """ + url: URI! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + Is the current viewer an admin of this enterprise? + """ + viewerIsAdmin: Boolean! - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The URL of the enterprise website. + """ + websiteUrl: URI +} +""" +The connection type for User. +""" +type EnterpriseAdministratorConnection { """ - Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. + A list of edges. """ - membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! + edges: [EnterpriseAdministratorEdge] """ - The setting value for whether members with admin permissions for repositories can update protected branches. + A list of nodes. """ - membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! + nodes: [User] """ - A list of enterprise organizations configured with the provided members can update protected branches setting value. + Information to aid in pagination. """ - membersCanUpdateProtectedBranchesSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + pageInfo: PageInfo! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +A User who is an administrator of an enterprise. +""" +type EnterpriseAdministratorEdge { + """ + 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: User - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The role of the administrator. + """ + role: EnterpriseAdministratorRole! +} - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! +""" +An invitation for a user to become an owner or billing manager of an enterprise. +""" +type EnterpriseAdministratorInvitation implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! """ - The setting value for whether members can view dependency insights. + The email of the person who was invited to the enterprise. """ - membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue! + email: String """ - A list of enterprise organizations configured with the provided members can view dependency insights setting value. + The enterprise the invitation is for. """ - membersCanViewDependencyInsightsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + enterprise: Enterprise! + id: ID! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The user who was invited to the enterprise. + """ + invitee: User - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The user who created the invitation. + """ + inviter: User - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The invitee's pending role in the enterprise (owner or billing_manager). + """ + role: EnterpriseAdministratorRole! +} - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} +""" +The connection type for EnterpriseAdministratorInvitation. +""" +type EnterpriseAdministratorInvitationConnection { + """ + A list of edges. + """ + edges: [EnterpriseAdministratorInvitationEdge] - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + A list of nodes. + """ + nodes: [EnterpriseAdministratorInvitation] """ - Indicates if email notification delivery for this enterprise is restricted to verified domains. + Information to aid in pagination. """ - notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! + pageInfo: PageInfo! """ - The setting value for whether organization projects are enabled for organizations in this enterprise. + Identifies the total count of items in the connection. """ - organizationProjectsSetting: EnterpriseEnabledDisabledSettingValue! + totalCount: Int! +} +""" +An edge in a connection. +""" +type EnterpriseAdministratorInvitationEdge { """ - A list of enterprise organizations configured with the provided organization projects setting value. + A cursor for use in pagination. """ - organizationProjectsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + cursor: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The item at the end of the edge. + """ + node: EnterpriseAdministratorInvitation +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Ordering options for enterprise administrator invitation connections +""" +input EnterpriseAdministratorInvitationOrder { + """ + The ordering direction. + """ + direction: OrderDirection! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The field to order enterprise administrator invitations by. + """ + field: EnterpriseAdministratorInvitationOrderField! +} - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} +""" +Properties by which enterprise administrator invitation connections can be ordered. +""" +enum EnterpriseAdministratorInvitationOrderField { + """ + Order enterprise administrator member invitations by creation time + """ + CREATED_AT +} - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! +""" +The possible administrator roles in an enterprise account. +""" +enum EnterpriseAdministratorRole { + """ + Represents a billing manager of the enterprise account. + """ + BILLING_MANAGER """ - A list of outside collaborators across the repositories in the enterprise. + Represents an owner of the enterprise account. """ - outsideCollaborators( + OWNER +} + +""" +The possible values for the enterprise allow private repository forking policy value. +""" +enum EnterpriseAllowPrivateRepositoryForkingPolicyValue { + """ + Members can fork a repository to an organization within this enterprise. + """ + ENTERPRISE_ORGANIZATIONS + + """ + Members can fork a repository to their enterprise-managed user account or an organization inside this enterprise. + """ + ENTERPRISE_ORGANIZATIONS_USER_ACCOUNTS + + """ + Members can fork a repository to their user account or an organization, either inside or outside of this enterprise. + """ + EVERYWHERE + + """ + Members can fork a repository only within the same organization (intra-org). + """ + SAME_ORGANIZATION + + """ + Members can fork a repository to their user account or within the same organization. + """ + SAME_ORGANIZATION_USER_ACCOUNTS + + """ + Members can fork a repository to their user account. + """ + USER_ACCOUNTS +} + +""" +Metadata for an audit entry containing enterprise account information. +""" +interface EnterpriseAuditEntryData { + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI +} + +""" +Enterprise billing information visible to enterprise billing managers and owners. +""" +type EnterpriseBillingInfo { + """ + The number of licenseable users/emails across the enterprise. + """ + allLicensableUsersCount: Int! + + """ + The number of data packs used by all organizations owned by the enterprise. + """ + assetPacks: Int! + + """ + The bandwidth quota in GB for all organizations owned by the enterprise. + """ + bandwidthQuota: Float! + + """ + The bandwidth usage in GB for all organizations owned by the enterprise. + """ + bandwidthUsage: Float! + + """ + The bandwidth usage as a percentage of the bandwidth quota. + """ + bandwidthUsagePercentage: Int! + + """ + The storage quota in GB for all organizations owned by the enterprise. + """ + storageQuota: Float! + + """ + The storage usage in GB for all organizations owned by the enterprise. + """ + storageUsage: Float! + + """ + The storage usage as a percentage of the storage quota. + """ + storageUsagePercentage: Int! + + """ + The number of available licenses across all owned organizations based on the unique number of billable users. + """ + totalAvailableLicenses: Int! + + """ + The total number of licenses allocated. + """ + totalLicenses: Int! +} + +""" +The connection type for Enterprise. +""" +type EnterpriseConnection { + """ + A list of edges. + """ + edges: [EnterpriseEdge] + + """ + A list of nodes. + """ + nodes: [Enterprise] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +The possible values for the enterprise base repository permission setting. +""" +enum EnterpriseDefaultRepositoryPermissionSettingValue { + """ + Organization members will be able to clone, pull, push, and add new collaborators to all organization repositories. + """ + ADMIN + + """ + Organization members will only be able to clone and pull public repositories. + """ + NONE + + """ + Organizations in the enterprise choose base repository permissions for their members. + """ + NO_POLICY + + """ + Organization members will be able to clone and pull all organization repositories. + """ + READ + + """ + Organization members will be able to clone, pull, and push all organization repositories. + """ + WRITE +} + +""" +An edge in a connection. +""" +type EnterpriseEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Enterprise +} + +""" +The possible values for an enabled/disabled enterprise setting. +""" +enum EnterpriseEnabledDisabledSettingValue { + """ + The setting is disabled for organizations in the enterprise. + """ + DISABLED + + """ + The setting is enabled for organizations in the enterprise. + """ + ENABLED + + """ + There is no policy set for organizations in the enterprise. + """ + NO_POLICY +} + +""" +The possible values for an enabled/no policy enterprise setting. +""" +enum EnterpriseEnabledSettingValue { + """ + The setting is enabled for organizations in the enterprise. + """ + ENABLED + + """ + There is no policy set for organizations in the enterprise. + """ + NO_POLICY +} + +""" +The connection type for OrganizationInvitation. +""" +type EnterpriseFailedInvitationConnection { + """ + A list of edges. + """ + edges: [EnterpriseFailedInvitationEdge] + + """ + A list of nodes. + """ + nodes: [OrganizationInvitation] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! + + """ + Identifies the total count of unique users in the connection. + """ + totalUniqueUserCount: Int! +} + +""" +A failed invitation to be a member in an enterprise organization. +""" +type EnterpriseFailedInvitationEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: OrganizationInvitation +} + +""" +An identity provider configured to provision identities for an enterprise. +Visible to enterprise owners or enterprise owners' personal access tokens +(classic) with read:enterprise or admin:enterprise scope. +""" +type EnterpriseIdentityProvider implements Node { + """ + The digest algorithm used to sign SAML requests for the identity provider. + """ + digestMethod: SamlDigestAlgorithm + + """ + The enterprise this identity provider belongs to. + """ + enterprise: Enterprise + + """ + ExternalIdentities provisioned by this identity provider. + """ + externalIdentities( """ Returns the elements in the list that come after the specified cursor. """ @@ -9214,30 +12785,548 @@ type EnterpriseOwnerInfo { last: Int """ - The login of one specific outside collaborator. + Filter to external identities with the users login """ login: String """ - Ordering options for outside collaborators returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} - - """ - The search string to look for. + Filter to external identities with valid org membership only """ - query: String + membersOnly: Boolean """ - Only return outside collaborators on repositories with this visibility. + Filter to external identities with the users userName/NameID attribute """ - visibility: RepositoryVisibility - ): EnterpriseOutsideCollaboratorConnection! + userName: String + ): ExternalIdentityConnection! + id: ID! """ - A list of pending administrator invitations for the enterprise. + The x509 certificate used by the identity provider to sign assertions and responses. """ - pendingAdminInvitations( + idpCertificate: X509Certificate + + """ + The Issuer Entity ID for the SAML identity provider. + """ + issuer: String + + """ + Recovery codes that can be used by admins to access the enterprise if the identity provider is unavailable. + """ + recoveryCodes: [String!] + + """ + The signature algorithm used to sign SAML requests for the identity provider. + """ + signatureMethod: SamlSignatureAlgorithm + + """ + The URL endpoint for the identity provider's SAML SSO. + """ + ssoUrl: URI +} + +""" +An object that is a member of an enterprise. +""" +union EnterpriseMember = EnterpriseUserAccount | User + +""" +The connection type for EnterpriseMember. +""" +type EnterpriseMemberConnection { + """ + A list of edges. + """ + edges: [EnterpriseMemberEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseMember] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +A User who is a member of an enterprise through one or more organizations. +""" +type EnterpriseMemberEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseMember +} + +""" +Ordering options for enterprise member connections. +""" +input EnterpriseMemberOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order enterprise members by. + """ + field: EnterpriseMemberOrderField! +} + +""" +Properties by which enterprise member connections can be ordered. +""" +enum EnterpriseMemberOrderField { + """ + Order enterprise members by creation time + """ + CREATED_AT + + """ + Order enterprise members by login + """ + LOGIN +} + +""" +The possible values for the enterprise members can create repositories setting. +""" +enum EnterpriseMembersCanCreateRepositoriesSettingValue { + """ + Members will be able to create public and private repositories. + """ + ALL + + """ + Members will not be able to create public or private repositories. + """ + DISABLED + + """ + Organization administrators choose whether to allow members to create repositories. + """ + NO_POLICY + + """ + Members will be able to create only private repositories. + """ + PRIVATE + + """ + Members will be able to create only public repositories. + """ + PUBLIC +} + +""" +The possible values for the members can make purchases setting. +""" +enum EnterpriseMembersCanMakePurchasesSettingValue { + """ + The setting is disabled for organizations in the enterprise. + """ + DISABLED + + """ + The setting is enabled for organizations in the enterprise. + """ + ENABLED +} + +""" +The possible values we have for filtering Platform::Objects::User#enterprises. +""" +enum EnterpriseMembershipType { + """ + Returns all enterprises in which the user is an admin. + """ + ADMIN + + """ + Returns all enterprises in which the user is a member, admin, or billing manager. + """ + ALL + + """ + Returns all enterprises in which the user is a billing manager. + """ + BILLING_MANAGER + + """ + Returns all enterprises in which the user is a member of an org that is owned by the enterprise. + """ + ORG_MEMBERSHIP +} + +""" +Ordering options for enterprises. +""" +input EnterpriseOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order enterprises by. + """ + field: EnterpriseOrderField! +} + +""" +Properties by which enterprise connections can be ordered. +""" +enum EnterpriseOrderField { + """ + Order enterprises by name + """ + NAME +} + +""" +The connection type for Organization. +""" +type EnterpriseOrganizationMembershipConnection { + """ + A list of edges. + """ + edges: [EnterpriseOrganizationMembershipEdge] + + """ + A list of nodes. + """ + nodes: [Organization] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An enterprise organization that a user is a member of. +""" +type EnterpriseOrganizationMembershipEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Organization + + """ + The role of the user in the enterprise membership. + """ + role: EnterpriseUserAccountMembershipRole! +} + +""" +The connection type for User. +""" +type EnterpriseOutsideCollaboratorConnection { + """ + A list of edges. + """ + edges: [EnterpriseOutsideCollaboratorEdge] + + """ + A list of nodes. + """ + nodes: [User] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +A User who is an outside collaborator of an enterprise through one or more organizations. +""" +type EnterpriseOutsideCollaboratorEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: User + + """ + The enterprise organization repositories this user is a member of. + """ + repositories( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories. + """ + orderBy: RepositoryOrder = {field: NAME, direction: ASC} + ): EnterpriseRepositoryInfoConnection! +} + +""" +Enterprise information visible to enterprise owners or enterprise owners' +personal access tokens (classic) with read:enterprise or admin:enterprise scope. +""" +type EnterpriseOwnerInfo { + """ + A list of all of the administrators for this enterprise. + """ + admins( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Only return administrators with this two-factor authentication status. + """ + hasTwoFactorEnabled: Boolean = null + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for administrators returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """ + Only return members within the organizations with these logins + """ + organizationLogins: [String!] + + """ + The search string to look for. + """ + query: String + + """ + The role to filter by. + """ + role: EnterpriseAdministratorRole + ): EnterpriseAdministratorConnection! + + """ + 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 + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! + + """ + Whether or not affiliated users with two-factor authentication disabled exist in the enterprise. + """ + affiliatedUsersWithTwoFactorDisabledExist: Boolean! + + """ + The setting value for whether private repository forking is enabled for repositories in organizations in this enterprise. + """ + allowPrivateRepositoryForkingSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided private repository forking setting value. + """ + allowPrivateRepositoryForkingSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The value for the allow private repository forking policy on the enterprise. + """ + allowPrivateRepositoryForkingSettingPolicyValue: EnterpriseAllowPrivateRepositoryForkingPolicyValue + + """ + The setting value for base repository permissions for organizations in this enterprise. + """ + defaultRepositoryPermissionSetting: EnterpriseDefaultRepositoryPermissionSettingValue! + + """ + A list of enterprise organizations configured with the provided base repository permission. + """ + defaultRepositoryPermissionSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The permission to find organizations for. + """ + value: DefaultRepositoryPermissionField! + ): OrganizationConnection! + + """ + A list of domains owned by the enterprise. Visible to enterprise owners or + enterprise owners' personal access tokens (classic) with admin:enterprise scope. + """ + domains( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Filter whether or not the domain is approved. + """ + isApproved: Boolean = null + + """ + Filter whether or not the domain is verified. + """ + isVerified: Boolean = null + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for verifiable domains returned. + """ + orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} + ): VerifiableDomainConnection! + + """ + Enterprise Server installations owned by the enterprise. + """ + enterpriseServerInstallations( """ Returns the elements in the list that come after the specified cursor. """ @@ -9248,6 +13337,11 @@ type EnterpriseOwnerInfo { """ before: String + """ + Whether or not to only return installations discovered via GitHub Connect. + """ + connectedOnly: Boolean = false + """ Returns the first _n_ elements from the list. """ @@ -9258,2788 +13352,13969 @@ type EnterpriseOwnerInfo { """ last: Int - """ - Ordering options for pending enterprise administrator invitations returned from the connection. - """ - orderBy: EnterpriseAdministratorInvitationOrder = {field: CREATED_AT, direction: DESC} + """ + Ordering options for Enterprise Server installations returned. + """ + orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} + ): EnterpriseServerInstallationConnection! + + """ + A list of failed invitations in the enterprise. + """ + failedInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + The search string to look for. + """ + query: String + ): EnterpriseFailedInvitationConnection! + + """ + The setting value for whether the enterprise has an IP allow list enabled. + """ + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + + """ + The IP addresses that are allowed to access resources owned by the enterprise. + Visible to enterprise owners or enterprise owners' personal access tokens + (classic) with admin:enterprise scope. + """ + ipAllowListEntries( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for IP allow list entries returned. + """ + orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} + ): IpAllowListEntryConnection! + + """ + The setting value for whether the enterprise has IP allow list configuration for installed GitHub Apps enabled. + """ + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! + + """ + Whether or not the base repository permission is currently being updated. + """ + isUpdatingDefaultRepositoryPermission: Boolean! + + """ + Whether the two-factor authentication requirement is currently being enforced. + """ + isUpdatingTwoFactorRequirement: Boolean! + + """ + The setting value for whether organization members with admin permissions on a + repository can change repository visibility. + """ + membersCanChangeRepositoryVisibilitySetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided can change repository visibility setting value. + """ + membersCanChangeRepositoryVisibilitySettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The setting value for whether members of organizations in the enterprise can create internal repositories. + """ + membersCanCreateInternalRepositoriesSetting: Boolean + + """ + The setting value for whether members of organizations in the enterprise can create private repositories. + """ + membersCanCreatePrivateRepositoriesSetting: Boolean + + """ + The setting value for whether members of organizations in the enterprise can create public repositories. + """ + membersCanCreatePublicRepositoriesSetting: Boolean + + """ + The setting value for whether members of organizations in the enterprise can create repositories. + """ + membersCanCreateRepositoriesSetting: EnterpriseMembersCanCreateRepositoriesSettingValue + + """ + A list of enterprise organizations configured with the provided repository creation setting value. + """ + membersCanCreateRepositoriesSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting to find organizations for. + """ + value: OrganizationMembersCanCreateRepositoriesSettingValue! + ): OrganizationConnection! + + """ + The setting value for whether members with admin permissions for repositories can delete issues. + """ + membersCanDeleteIssuesSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can delete issues setting value. + """ + membersCanDeleteIssuesSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The setting value for whether members with admin permissions for repositories can delete or transfer repositories. + """ + membersCanDeleteRepositoriesSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can delete repositories setting value. + """ + membersCanDeleteRepositoriesSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The setting value for whether members of organizations in the enterprise can invite outside collaborators. + """ + membersCanInviteCollaboratorsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can invite collaborators setting value. + """ + membersCanInviteCollaboratorsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + Indicates whether members of this enterprise's organizations can purchase additional services for those organizations. + """ + membersCanMakePurchasesSetting: EnterpriseMembersCanMakePurchasesSettingValue! + + """ + The setting value for whether members with admin permissions for repositories can update protected branches. + """ + membersCanUpdateProtectedBranchesSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can update protected branches setting value. + """ + membersCanUpdateProtectedBranchesSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The setting value for whether members can view dependency insights. + """ + membersCanViewDependencyInsightsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided members can view dependency insights setting value. + """ + membersCanViewDependencyInsightsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + Indicates if email notification delivery for this enterprise is restricted to verified or approved domains. + """ + notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! + + """ + The OIDC Identity Provider for the enterprise. + """ + oidcProvider: OIDCProvider + + """ + The setting value for whether organization projects are enabled for organizations in this enterprise. + """ + organizationProjectsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided organization projects setting value. + """ + organizationProjectsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + A list of outside collaborators across the repositories in the enterprise. + """ + outsideCollaborators( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Only return outside collaborators with this two-factor authentication status. + """ + hasTwoFactorEnabled: Boolean = null + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + The login of one specific outside collaborator. + """ + login: String + + """ + Ordering options for outside collaborators returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + + """ + Only return outside collaborators within the organizations with these logins + """ + organizationLogins: [String!] + + """ + The search string to look for. + """ + query: String + + """ + Only return outside collaborators on repositories with this visibility. + """ + visibility: RepositoryVisibility + ): EnterpriseOutsideCollaboratorConnection! + + """ + A list of pending administrator invitations for the enterprise. + """ + pendingAdminInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pending enterprise administrator invitations returned from the connection. + """ + orderBy: EnterpriseAdministratorInvitationOrder = {field: CREATED_AT, direction: DESC} + + """ + The search string to look for. + """ + query: String + + """ + The role to filter by. + """ + role: EnterpriseAdministratorRole + ): EnterpriseAdministratorInvitationConnection! + + """ + A list of pending collaborator invitations across the repositories in the enterprise. + """ + pendingCollaboratorInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pending repository collaborator invitations returned from the connection. + """ + orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} + + """ + The search string to look for. + """ + query: String + ): RepositoryInvitationConnection! + + """ + A list of pending member invitations for organizations in the enterprise. + """ + pendingMemberInvitations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Only return invitations matching this invitation source + """ + invitationSource: OrganizationInvitationSource + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Only return invitations within the organizations with these logins + """ + organizationLogins: [String!] + + """ + The search string to look for. + """ + query: String + ): EnterprisePendingMemberInvitationConnection! + + """ + The setting value for whether repository projects are enabled in this enterprise. + """ + repositoryProjectsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided repository projects setting value. + """ + repositoryProjectsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The SAML Identity Provider for the enterprise. + """ + samlIdentityProvider: EnterpriseIdentityProvider + + """ + A list of enterprise organizations configured with the SAML single sign-on setting value. + """ + samlIdentityProviderSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: IdentityProviderConfigurationState! + ): OrganizationConnection! + + """ + A list of members with a support entitlement. + """ + supportEntitlements( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for support entitlement users returned from the connection. + """ + orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} + ): EnterpriseMemberConnection! + + """ + The setting value for whether team discussions are enabled for organizations in this enterprise. + """ + teamDiscussionsSetting: EnterpriseEnabledDisabledSettingValue! + + """ + A list of enterprise organizations configured with the provided team discussions setting value. + """ + teamDiscussionsSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! + + """ + The setting value for whether the enterprise requires two-factor authentication for its organizations and users. + """ + twoFactorRequiredSetting: EnterpriseEnabledSettingValue! + + """ + A list of enterprise organizations configured with the two-factor authentication setting value. + """ + twoFactorRequiredSettingOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations with this setting. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The setting value to find organizations for. + """ + value: Boolean! + ): OrganizationConnection! +} + +""" +The connection type for OrganizationInvitation. +""" +type EnterprisePendingMemberInvitationConnection { + """ + A list of edges. + """ + edges: [EnterprisePendingMemberInvitationEdge] + + """ + A list of nodes. + """ + nodes: [OrganizationInvitation] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! + + """ + Identifies the total count of unique users in the connection. + """ + totalUniqueUserCount: Int! +} + +""" +An invitation to be a member in an enterprise organization. +""" +type EnterprisePendingMemberInvitationEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: OrganizationInvitation +} + +""" +A subset of repository information queryable from an enterprise. +""" +type EnterpriseRepositoryInfo implements Node { + id: ID! + + """ + Identifies if the repository is private or internal. + """ + isPrivate: Boolean! + + """ + The repository's name. + """ + name: String! + + """ + The repository's name with owner. + """ + nameWithOwner: String! +} + +""" +The connection type for EnterpriseRepositoryInfo. +""" +type EnterpriseRepositoryInfoConnection { + """ + A list of edges. + """ + edges: [EnterpriseRepositoryInfoEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseRepositoryInfo] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseRepositoryInfoEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseRepositoryInfo +} + +""" +An Enterprise Server installation. +""" +type EnterpriseServerInstallation implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The customer name to which the Enterprise Server installation belongs. + """ + customerName: String! + + """ + The host name of the Enterprise Server installation. + """ + hostName: String! + id: ID! + + """ + Whether or not the installation is connected to an Enterprise Server installation via GitHub Connect. + """ + isConnected: Boolean! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + User accounts on this Enterprise Server installation. + """ + userAccounts( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for Enterprise Server user accounts returned from the connection. + """ + orderBy: EnterpriseServerUserAccountOrder = {field: LOGIN, direction: ASC} + ): EnterpriseServerUserAccountConnection! + + """ + User accounts uploads for the Enterprise Server installation. + """ + userAccountsUploads( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for Enterprise Server user accounts uploads returned from the connection. + """ + orderBy: EnterpriseServerUserAccountsUploadOrder = {field: CREATED_AT, direction: DESC} + ): EnterpriseServerUserAccountsUploadConnection! +} + +""" +The connection type for EnterpriseServerInstallation. +""" +type EnterpriseServerInstallationConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerInstallationEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerInstallation] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerInstallationEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerInstallation +} + +""" +The connection type for EnterpriseServerInstallation. +""" +type EnterpriseServerInstallationMembershipConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerInstallationMembershipEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerInstallation] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An Enterprise Server installation that a user is a member of. +""" +type EnterpriseServerInstallationMembershipEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerInstallation + + """ + The role of the user in the enterprise membership. + """ + role: EnterpriseUserAccountMembershipRole! +} + +""" +Ordering options for Enterprise Server installation connections. +""" +input EnterpriseServerInstallationOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order Enterprise Server installations by. + """ + field: EnterpriseServerInstallationOrderField! +} + +""" +Properties by which Enterprise Server installation connections can be ordered. +""" +enum EnterpriseServerInstallationOrderField { + """ + Order Enterprise Server installations by creation time + """ + CREATED_AT + + """ + Order Enterprise Server installations by customer name + """ + CUSTOMER_NAME + + """ + Order Enterprise Server installations by host name + """ + HOST_NAME +} + +""" +A user account on an Enterprise Server installation. +""" +type EnterpriseServerUserAccount implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + User emails belonging to this user account. + """ + emails( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for Enterprise Server user account emails returned from the connection. + """ + orderBy: EnterpriseServerUserAccountEmailOrder = {field: EMAIL, direction: ASC} + ): EnterpriseServerUserAccountEmailConnection! + + """ + The Enterprise Server installation on which this user account exists. + """ + enterpriseServerInstallation: EnterpriseServerInstallation! + id: ID! + + """ + Whether the user account is a site administrator on the Enterprise Server installation. + """ + isSiteAdmin: Boolean! + + """ + The login of the user account on the Enterprise Server installation. + """ + login: String! + + """ + The profile name of the user account on the Enterprise Server installation. + """ + profileName: String + + """ + The date and time when the user account was created on the Enterprise Server installation. + """ + remoteCreatedAt: DateTime! + + """ + The ID of the user account on the Enterprise Server installation. + """ + remoteUserId: Int! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for EnterpriseServerUserAccount. +""" +type EnterpriseServerUserAccountConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerUserAccountEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerUserAccount] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerUserAccountEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerUserAccount +} + +""" +An email belonging to a user account on an Enterprise Server installation. +""" +type EnterpriseServerUserAccountEmail implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The email address. + """ + email: String! + id: ID! + + """ + Indicates whether this is the primary email of the associated user account. + """ + isPrimary: Boolean! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The user account to which the email belongs. + """ + userAccount: EnterpriseServerUserAccount! +} + +""" +The connection type for EnterpriseServerUserAccountEmail. +""" +type EnterpriseServerUserAccountEmailConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerUserAccountEmailEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerUserAccountEmail] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerUserAccountEmailEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerUserAccountEmail +} + +""" +Ordering options for Enterprise Server user account email connections. +""" +input EnterpriseServerUserAccountEmailOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order emails by. + """ + field: EnterpriseServerUserAccountEmailOrderField! +} + +""" +Properties by which Enterprise Server user account email connections can be ordered. +""" +enum EnterpriseServerUserAccountEmailOrderField { + """ + Order emails by email + """ + EMAIL +} + +""" +Ordering options for Enterprise Server user account connections. +""" +input EnterpriseServerUserAccountOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order user accounts by. + """ + field: EnterpriseServerUserAccountOrderField! +} + +""" +Properties by which Enterprise Server user account connections can be ordered. +""" +enum EnterpriseServerUserAccountOrderField { + """ + Order user accounts by login + """ + LOGIN + + """ + Order user accounts by creation time on the Enterprise Server installation + """ + REMOTE_CREATED_AT +} + +""" +A user accounts upload from an Enterprise Server installation. +""" +type EnterpriseServerUserAccountsUpload implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The enterprise to which this upload belongs. + """ + enterprise: Enterprise! + + """ + The Enterprise Server installation for which this upload was generated. + """ + enterpriseServerInstallation: EnterpriseServerInstallation! + id: ID! + + """ + The name of the file uploaded. + """ + name: String! + + """ + The synchronization state of the upload + """ + syncState: EnterpriseServerUserAccountsUploadSyncState! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for EnterpriseServerUserAccountsUpload. +""" +type EnterpriseServerUserAccountsUploadConnection { + """ + A list of edges. + """ + edges: [EnterpriseServerUserAccountsUploadEdge] + + """ + A list of nodes. + """ + nodes: [EnterpriseServerUserAccountsUpload] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnterpriseServerUserAccountsUploadEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: EnterpriseServerUserAccountsUpload +} + +""" +Ordering options for Enterprise Server user accounts upload connections. +""" +input EnterpriseServerUserAccountsUploadOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order user accounts uploads by. + """ + field: EnterpriseServerUserAccountsUploadOrderField! +} + +""" +Properties by which Enterprise Server user accounts upload connections can be ordered. +""" +enum EnterpriseServerUserAccountsUploadOrderField { + """ + Order user accounts uploads by creation time + """ + CREATED_AT +} + +""" +Synchronization state of the Enterprise Server user accounts upload +""" +enum EnterpriseServerUserAccountsUploadSyncState { + """ + The synchronization of the upload failed. + """ + FAILURE + + """ + The synchronization of the upload is pending. + """ + PENDING + + """ + The synchronization of the upload succeeded. + """ + SUCCESS +} + +""" +An account for a user who is an admin of an enterprise or a member of an enterprise through one or more organizations. +""" +type EnterpriseUserAccount implements Actor & Node { + """ + A URL pointing to the enterprise user account's public avatar. + """ + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The enterprise in which this user account exists. + """ + enterprise: Enterprise! + + """ + A list of Enterprise Server installations this user is a member of. + """ + enterpriseInstallations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for installations returned from the connection. + """ + orderBy: EnterpriseServerInstallationOrder = {field: HOST_NAME, direction: ASC} + + """ + The search string to look for. + """ + query: String + + """ + The role of the user in the installation. + """ + role: EnterpriseUserAccountMembershipRole + ): EnterpriseServerInstallationMembershipConnection! + id: ID! + + """ + An identifier for the enterprise user account, a login or email address + """ + login: String! + + """ + The name of the enterprise user account + """ + name: String + + """ + A list of enterprise organizations this user is a member of. + """ + organizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for organizations returned from the connection. + """ + orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + + """ + The search string to look for. + """ + query: String + + """ + The role of the user in the enterprise organization. + """ + role: EnterpriseUserAccountMembershipRole + ): EnterpriseOrganizationMembershipConnection! + + """ + The HTTP path for this user. + """ + resourcePath: URI! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this user. + """ + url: URI! + + """ + The user within the enterprise. + """ + user: User +} + +""" +The possible roles for enterprise membership. +""" +enum EnterpriseUserAccountMembershipRole { + """ + The user is a member of an organization in the enterprise. + """ + MEMBER + + """ + The user is an owner of an organization in the enterprise. + """ + OWNER + + """ + The user is not an owner of the enterprise, and not a member or owner of any + organizations in the enterprise; only for EMU-enabled enterprises. + """ + UNAFFILIATED +} + +""" +The possible GitHub Enterprise deployments where this user can exist. +""" +enum EnterpriseUserDeployment { + """ + The user is part of a GitHub Enterprise Cloud deployment. + """ + CLOUD + + """ + The user is part of a GitHub Enterprise Server deployment. + """ + SERVER +} + +""" +An environment. +""" +type Environment implements Node { + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! + + """ + The name of the environment + """ + name: String! + + """ + The protection rules defined for this environment + """ + protectionRules( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentProtectionRuleConnection! +} + +""" +The connection type for Environment. +""" +type EnvironmentConnection { + """ + A list of edges. + """ + edges: [EnvironmentEdge] + + """ + A list of nodes. + """ + nodes: [Environment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type EnvironmentEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Environment +} + +""" +Properties by which environments connections can be ordered +""" +enum EnvironmentOrderField { + """ + Order environments by name. + """ + NAME +} + +""" +Ordering options for environments +""" +input Environments { + """ + The direction in which to order environments by the specified field. + """ + direction: OrderDirection! + + """ + The field to order environments by. + """ + field: EnvironmentOrderField! +} + +""" +An external identity provisioned by SAML SSO or SCIM. If SAML is configured on +the organization, the external identity is visible to (1) organization owners, +(2) organization owners' personal access tokens (classic) with read:org or +admin:org scope, (3) GitHub App with an installation token with read or write +access to members. If SAML is configured on the enterprise, the external +identity is visible to (1) enterprise owners, (2) enterprise owners' personal +access tokens (classic) with read:enterprise or admin:enterprise scope. +""" +type ExternalIdentity implements Node { + """ + The GUID for this identity + """ + guid: String! + id: ID! + + """ + Organization invitation for this SCIM-provisioned external identity + """ + organizationInvitation: OrganizationInvitation + + """ + SAML Identity attributes + """ + samlIdentity: ExternalIdentitySamlAttributes + + """ + SCIM Identity attributes + """ + scimIdentity: ExternalIdentityScimAttributes + + """ + User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member. + """ + user: User +} + +""" +An attribute for the External Identity attributes collection +""" +type ExternalIdentityAttribute { + """ + The attribute metadata as JSON + """ + metadata: String + + """ + The attribute name + """ + name: String! + + """ + The attribute value + """ + value: String! +} + +""" +The connection type for ExternalIdentity. +""" +type ExternalIdentityConnection { + """ + A list of edges. + """ + edges: [ExternalIdentityEdge] + + """ + A list of nodes. + """ + nodes: [ExternalIdentity] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type ExternalIdentityEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: ExternalIdentity +} + +""" +SAML attributes for the External Identity +""" +type ExternalIdentitySamlAttributes { + """ + SAML Identity attributes + """ + attributes: [ExternalIdentityAttribute!]! + + """ + The emails associated with the SAML identity + """ + emails: [UserEmailMetadata!] + + """ + Family name of the SAML identity + """ + familyName: String + + """ + Given name of the SAML identity + """ + givenName: String + + """ + The groups linked to this identity in IDP + """ + groups: [String!] + + """ + The NameID of the SAML identity + """ + nameId: String + + """ + The userName of the SAML identity + """ + username: String +} + +""" +SCIM attributes for the External Identity +""" +type ExternalIdentityScimAttributes { + """ + The emails associated with the SCIM identity + """ + emails: [UserEmailMetadata!] + + """ + Family name of the SCIM identity + """ + familyName: String + + """ + Given name of the SCIM identity + """ + givenName: String + + """ + The groups linked to this identity in IDP + """ + groups: [String!] + + """ + The userName of the SCIM identity + """ + username: String +} + +""" +A command to add a file at the given path with the given contents as part of a +commit. Any existing file at that that path will be replaced. +""" +input FileAddition { + """ + The base64 encoded contents of the file + """ + contents: Base64String! + + """ + The path in the repository where the file will be located + """ + path: String! +} + +""" +A description of a set of changes to a file tree to be made as part of +a git commit, modeled as zero or more file `additions` and zero or more +file `deletions`. + +Both fields are optional; omitting both will produce a commit with no +file changes. + +`deletions` and `additions` describe changes to files identified +by their path in the git tree using unix-style path separators, i.e. +`/`. The root of a git tree is an empty string, so paths are not +slash-prefixed. + +`path` values must be unique across all `additions` and `deletions` +provided. Any duplication will result in a validation error. + +### Encoding + +File contents must be provided in full for each `FileAddition`. + +The `contents` of a `FileAddition` must be encoded using RFC 4648 +compliant base64, i.e. correct padding is required and no characters +outside the standard alphabet may be used. Invalid base64 +encoding will be rejected with a validation error. + +The encoded contents may be binary. + +For text files, no assumptions are made about the character encoding of +the file contents (after base64 decoding). No charset transcoding or +line-ending normalization will be performed; it is the client's +responsibility to manage the character encoding of files they provide. +However, for maximum compatibility we recommend using UTF-8 encoding +and ensuring that all files in a repository use a consistent +line-ending convention (`\n` or `\r\n`), and that all files end +with a newline. + +### Modeling file changes + +Each of the the five types of conceptual changes that can be made in a +git commit can be described using the `FileChanges` type as follows: + +1. New file addition: create file `hello world\n` at path `docs/README.txt`: + + { + "additions" [ + { + "path": "docs/README.txt", + "contents": base64encode("hello world\n") + } + ] + } + +2. Existing file modification: change existing `docs/README.txt` to have new + content `new content here\n`: + + { + "additions" [ + { + "path": "docs/README.txt", + "contents": base64encode("new content here\n") + } + ] + } + +3. Existing file deletion: remove existing file `docs/README.txt`. + Note that the path is required to exist -- specifying a + path that does not exist on the given branch will abort the + commit and return an error. + + { + "deletions" [ + { + "path": "docs/README.txt" + } + ] + } + + +4. File rename with no changes: rename `docs/README.txt` with + previous content `hello world\n` to the same content at + `newdocs/README.txt`: + + { + "deletions" [ + { + "path": "docs/README.txt", + } + ], + "additions" [ + { + "path": "newdocs/README.txt", + "contents": base64encode("hello world\n") + } + ] + } + + +5. File rename with changes: rename `docs/README.txt` with + previous content `hello world\n` to a file at path + `newdocs/README.txt` with content `new contents\n`: + + { + "deletions" [ + { + "path": "docs/README.txt", + } + ], + "additions" [ + { + "path": "newdocs/README.txt", + "contents": base64encode("new contents\n") + } + ] + } +""" +input FileChanges { + """ + File to add or change. + """ + additions: [FileAddition!] = [] + + """ + Files to delete. + """ + deletions: [FileDeletion!] = [] +} + +""" +A command to delete the file at the given path as part of a commit. +""" +input FileDeletion { + """ + The path to delete + """ + path: String! +} + +""" +The possible viewed states of a file . +""" +enum FileViewedState { + """ + The file has new changes since last viewed. + """ + DISMISSED + + """ + The file has not been marked as viewed. + """ + UNVIEWED + + """ + The file has been marked as viewed. + """ + VIEWED +} + +""" +Autogenerated input type of FollowOrganization +""" +input FollowOrganizationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the organization to follow. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of FollowOrganization +""" +type FollowOrganizationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organization that was followed. + """ + organization: Organization +} + +""" +Autogenerated input type of FollowUser +""" +input FollowUserInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the user to follow. + """ + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} + +""" +Autogenerated return type of FollowUser +""" +type FollowUserPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The user that was followed. + """ + user: User +} + +""" +The connection type for User. +""" +type FollowerConnection { + """ + A list of edges. + """ + edges: [UserEdge] + + """ + A list of nodes. + """ + nodes: [User] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +The connection type for User. +""" +type FollowingConnection { + """ + A list of edges. + """ + edges: [UserEdge] + + """ + A list of nodes. + """ + nodes: [User] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +A funding platform link for a repository. +""" +type FundingLink { + """ + The funding platform this link is for. + """ + platform: FundingPlatform! + + """ + The configured URL for this funding link. + """ + url: URI! +} + +""" +The possible funding platforms for repository funding links. +""" +enum FundingPlatform { + """ + Community Bridge funding platform. + """ + COMMUNITY_BRIDGE + + """ + Custom funding platform. + """ + CUSTOM + + """ + GitHub funding platform. + """ + GITHUB + + """ + IssueHunt funding platform. + """ + ISSUEHUNT + + """ + Ko-fi funding platform. + """ + KO_FI + + """ + LFX Crowdfunding funding platform. + """ + LFX_CROWDFUNDING + + """ + Liberapay funding platform. + """ + LIBERAPAY + + """ + Open Collective funding platform. + """ + OPEN_COLLECTIVE + + """ + Otechie funding platform. + """ + OTECHIE + + """ + Patreon funding platform. + """ + PATREON + + """ + Tidelift funding platform. + """ + TIDELIFT +} + +""" +A generic hovercard context with a message and icon +""" +type GenericHovercardContext implements HovercardContext { + """ + A string describing this context + """ + message: String! + + """ + An octicon to accompany this context + """ + octicon: String! +} + +""" +A Gist. +""" +type Gist implements Node & Starrable & UniformResourceLocatable { + """ + A list of comments associated with the gist + """ + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): GistCommentConnection! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The gist description. + """ + description: String + + """ + The files in this gist. + """ + files( + """ + The maximum number of files to return. + """ + limit: Int = 10 + + """ + The oid of the files to return + """ + oid: GitObjectID + ): [GistFile] + + """ + A list of forks associated with the gist + """ + forks( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for gists returned from the connection + """ + orderBy: GistOrder + ): GistConnection! + id: ID! + + """ + Identifies if the gist is a fork. + """ + isFork: Boolean! + + """ + Whether the gist is public or not. + """ + isPublic: Boolean! + + """ + The gist name. + """ + name: String! + + """ + The gist owner. + """ + owner: RepositoryOwner + + """ + Identifies when the gist was last pushed to. + """ + pushedAt: DateTime + + """ + The HTML path to this resource. + """ + resourcePath: URI! + + """ + Returns a count of how many stargazers there are on this object + """ + stargazerCount: Int! + + """ + A list of users who have starred this starrable. + """ + stargazers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Order for connection + """ + orderBy: StarOrder + ): StargazerConnection! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this Gist. + """ + url: URI! + + """ + Returns a boolean indicating whether the viewing user has starred this starrable. + """ + viewerHasStarred: Boolean! +} + +""" +Represents a comment on an Gist. +""" +type GistComment implements Comment & Deletable & Minimizable & Node & Updatable & UpdatableComment { + """ + The actor who authored the comment. + """ + author: Actor + + """ + Author's association with the gist. + """ + authorAssociation: CommentAuthorAssociation! + + """ + Identifies the comment body. + """ + body: String! + + """ + The body rendered to HTML. + """ + bodyHTML: HTML! + + """ + The body rendered to text. + """ + bodyText: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Check if this comment was created via an email reply. + """ + createdViaEmail: Boolean! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The actor who edited the comment. + """ + editor: Actor + + """ + The associated gist. + """ + gist: Gist! + id: ID! + + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! + + """ + Returns whether or not a comment has been minimized. + """ + isMinimized: Boolean! + + """ + The moment the editor made the last edit + """ + lastEditedAt: DateTime + + """ + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. + """ + minimizedReason: String + + """ + Identifies when the comment was published at. + """ + publishedAt: DateTime + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + A list of edits to this content. + """ + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection + + """ + Check if the current viewer can delete this object. + """ + viewerCanDelete: Boolean! + + """ + Check if the current viewer can minimize this object. + """ + viewerCanMinimize: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! +} + +""" +The connection type for GistComment. +""" +type GistCommentConnection { + """ + A list of edges. + """ + edges: [GistCommentEdge] + + """ + A list of nodes. + """ + nodes: [GistComment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type GistCommentEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: GistComment +} + +""" +The connection type for Gist. +""" +type GistConnection { + """ + A list of edges. + """ + edges: [GistEdge] + + """ + A list of nodes. + """ + nodes: [Gist] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type GistEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Gist +} + +""" +A file in a gist. +""" +type GistFile { + """ + The file name encoded to remove characters that are invalid in URL paths. + """ + encodedName: String + + """ + The gist file encoding. + """ + encoding: String + + """ + The file extension from the file name. + """ + extension: String + + """ + Indicates if this file is an image. + """ + isImage: Boolean! + + """ + Whether the file's contents were truncated. + """ + isTruncated: Boolean! + + """ + The programming language this file is written in. + """ + language: Language + + """ + The gist file name. + """ + name: String + + """ + The gist file size in bytes. + """ + size: Int + + """ + UTF8 text data or null if the file is binary + """ + text( + """ + Optionally truncate the returned file to this length. + """ + truncate: Int + ): String +} + +""" +Ordering options for gist connections +""" +input GistOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order repositories by. + """ + field: GistOrderField! +} + +""" +Properties by which gist connections can be ordered. +""" +enum GistOrderField { + """ + Order gists by creation time + """ + CREATED_AT + + """ + Order gists by push time + """ + PUSHED_AT + + """ + Order gists by update time + """ + UPDATED_AT +} + +""" +The privacy of a Gist +""" +enum GistPrivacy { + """ + Gists that are public and secret + """ + ALL + + """ + Public + """ + PUBLIC + + """ + Secret + """ + SECRET +} + +""" +Represents an actor in a Git commit (ie. an author or committer). +""" +type GitActor { + """ + A URL pointing to the author's public avatar. + """ + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + + """ + The timestamp of the Git action (authoring or committing). + """ + date: GitTimestamp + + """ + The email in the Git commit. + """ + email: String + + """ + The name in the Git commit. + """ + name: String + + """ + The GitHub user corresponding to the email field. Null if no such user exists. + """ + user: User +} + +""" +The connection type for GitActor. +""" +type GitActorConnection { + """ + A list of edges. + """ + edges: [GitActorEdge] + + """ + A list of nodes. + """ + nodes: [GitActor] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type GitActorEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: GitActor +} + +""" +Represents information about the GitHub instance. +""" +type GitHubMetadata { + """ + Returns a String that's a SHA of `github-services` + """ + gitHubServicesSha: GitObjectID! + + """ + IP addresses that users connect to for git operations + """ + gitIpAddresses: [String!] + + """ + IP addresses that GitHub Enterprise Importer uses for outbound connections + """ + githubEnterpriseImporterIpAddresses: [String!] + + """ + IP addresses that service hooks are sent from + """ + hookIpAddresses: [String!] + + """ + IP addresses that the importer connects from + """ + importerIpAddresses: [String!] + + """ + Whether or not users are verified + """ + isPasswordAuthenticationVerifiable: Boolean! + + """ + IP addresses for GitHub Pages' A records + """ + pagesIpAddresses: [String!] +} + +""" +Represents a Git object. +""" +interface GitObject { + """ + An abbreviated version of the Git object ID + """ + abbreviatedOid: String! + + """ + The HTTP path for this Git object + """ + commitResourcePath: URI! + + """ + The HTTP URL for this Git object + """ + commitUrl: URI! + id: ID! + + """ + The Git object ID + """ + oid: GitObjectID! + + """ + The Repository the Git object belongs to + """ + repository: Repository! +} + +""" +A Git object ID. +""" +scalar GitObjectID + +""" +A fully qualified reference name (e.g. `refs/heads/master`). +""" +scalar GitRefname @preview(toggledBy: "update-refs-preview") + +""" +Git SSH string +""" +scalar GitSSHRemote + +""" +Information about a signature (GPG or S/MIME) on a Commit or Tag. +""" +interface GitSignature { + """ + Email used to sign this object. + """ + email: String! + + """ + True if the signature is valid and verified by GitHub. + """ + isValid: Boolean! + + """ + Payload for GPG signing object. Raw ODB object without the signature header. + """ + payload: String! + + """ + ASCII-armored signature header from object. + """ + signature: String! + + """ + GitHub user corresponding to the email signing this commit. + """ + signer: User + + """ + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. + """ + state: GitSignatureState! + + """ + True if the signature was made with GitHub's signing key. + """ + wasSignedByGitHub: Boolean! +} + +""" +The state of a Git signature. +""" +enum GitSignatureState { + """ + The signing certificate or its chain could not be verified + """ + BAD_CERT + + """ + Invalid email used for signing + """ + BAD_EMAIL + + """ + Signing key expired + """ + EXPIRED_KEY + + """ + Internal error - the GPG verification service misbehaved + """ + GPGVERIFY_ERROR + + """ + Internal error - the GPG verification service is unavailable at the moment + """ + GPGVERIFY_UNAVAILABLE + + """ + Invalid signature + """ + INVALID + + """ + Malformed signature + """ + MALFORMED_SIG + + """ + The usage flags for the key that signed this don't allow signing + """ + NOT_SIGNING_KEY + + """ + Email used for signing not known to GitHub + """ + NO_USER + + """ + Valid signature, though certificate revocation check failed + """ + OCSP_ERROR + + """ + Valid signature, pending certificate revocation checking + """ + OCSP_PENDING + + """ + One or more certificates in chain has been revoked + """ + OCSP_REVOKED + + """ + Key used for signing not known to GitHub + """ + UNKNOWN_KEY + + """ + Unknown signature type + """ + UNKNOWN_SIG_TYPE + + """ + Unsigned + """ + UNSIGNED + + """ + Email used for signing unverified on GitHub + """ + UNVERIFIED_EMAIL + + """ + Valid signature and verified by GitHub + """ + VALID +} + +""" +An ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC. +""" +scalar GitTimestamp + +""" +Represents a GPG signature on a Commit or Tag. +""" +type GpgSignature implements GitSignature { + """ + Email used to sign this object. + """ + email: String! + + """ + True if the signature is valid and verified by GitHub. + """ + isValid: Boolean! + + """ + Hex-encoded ID of the key that signed this object. + """ + keyId: String + + """ + Payload for GPG signing object. Raw ODB object without the signature header. + """ + payload: String! + + """ + ASCII-armored signature header from object. + """ + signature: String! + + """ + GitHub user corresponding to the email signing this commit. + """ + signer: User + + """ + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. + """ + state: GitSignatureState! + + """ + True if the signature was made with GitHub's signing key. + """ + wasSignedByGitHub: Boolean! +} + +""" +Autogenerated input type of GrantEnterpriseOrganizationsMigratorRole +""" +input GrantEnterpriseOrganizationsMigratorRoleInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise to which all organizations managed by it will be granted the migrator role. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The login of the user to grant the migrator role + """ + login: String! +} + +""" +Autogenerated return type of GrantEnterpriseOrganizationsMigratorRole +""" +type GrantEnterpriseOrganizationsMigratorRolePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organizations that had the migrator role applied to for the given user. + """ + organizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): OrganizationConnection +} + +""" +Autogenerated input type of GrantMigratorRole +""" +input GrantMigratorRoleInput { + """ + The user login or Team slug to grant the migrator role. + """ + actor: String! + + """ + Specifies the type of the actor, can be either USER or TEAM. + """ + actorType: ActorType! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the organization that the user/team belongs to. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of GrantMigratorRole +""" +type GrantMigratorRolePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Did the operation succeed? + """ + success: Boolean +} + +""" +A string containing HTML code. +""" +scalar HTML + +""" +Represents a 'head_ref_deleted' event on a given pull request. +""" +type HeadRefDeletedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the Ref associated with the `head_ref_deleted` event. + """ + headRef: Ref + + """ + Identifies the name of the Ref associated with the `head_ref_deleted` event. + """ + headRefName: String! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! +} + +""" +Represents a 'head_ref_force_pushed' event on a given pull request. +""" +type HeadRefForcePushedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the after commit SHA for the 'head_ref_force_pushed' event. + """ + afterCommit: Commit + + """ + Identifies the before commit SHA for the 'head_ref_force_pushed' event. + """ + beforeCommit: Commit + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! + + """ + Identifies the fully qualified ref name for the 'head_ref_force_pushed' event. + """ + ref: Ref +} + +""" +Represents a 'head_ref_restored' event on a given pull request. +""" +type HeadRefRestoredEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! +} + +""" +Detail needed to display a hovercard for a user +""" +type Hovercard { + """ + Each of the contexts for this hovercard + """ + contexts: [HovercardContext!]! +} + +""" +An individual line of a hovercard +""" +interface HovercardContext { + """ + A string describing this context + """ + message: String! + + """ + An octicon to accompany this context + """ + octicon: String! +} + +""" +The possible states in which authentication can be configured with an identity provider. +""" +enum IdentityProviderConfigurationState { + """ + Authentication with an identity provider is configured but not enforced. + """ + CONFIGURED + + """ + Authentication with an identity provider is configured and enforced. + """ + ENFORCED + + """ + Authentication with an identity provider is not configured. + """ + UNCONFIGURED +} + +""" +Autogenerated input type of ImportProject +""" +input ImportProjectInput { + """ + The description of Project. + """ + body: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A list of columns containing issues and pull requests. + """ + columnImports: [ProjectColumnImport!]! + + """ + The name of Project. + """ + name: String! + + """ + The name of the Organization or User to create the Project under. + """ + ownerName: String! + + """ + Whether the Project is public or not. + """ + public: Boolean = false +} + +""" +Autogenerated return type of ImportProject +""" +type ImportProjectPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new Project! + """ + project: Project +} + +""" +Autogenerated input type of InviteEnterpriseAdmin +""" +input InviteEnterpriseAdminInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The email of the person to invite as an administrator. + """ + email: String + + """ + The ID of the enterprise to which you want to invite an administrator. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The login of a user to invite as an administrator. + """ + invitee: String + + """ + The role of the administrator. + """ + role: EnterpriseAdministratorRole +} + +""" +Autogenerated return type of InviteEnterpriseAdmin +""" +type InviteEnterpriseAdminPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The created enterprise administrator invitation. + """ + invitation: EnterpriseAdministratorInvitation +} + +""" +The possible values for the IP allow list enabled setting. +""" +enum IpAllowListEnabledSettingValue { + """ + The setting is disabled for the owner. + """ + DISABLED + + """ + The setting is enabled for the owner. + """ + ENABLED +} + +""" +An IP address or range of addresses that is allowed to access an owner's resources. +""" +type IpAllowListEntry implements Node { + """ + A single IP address or range of IP addresses in CIDR notation. + """ + allowListValue: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Whether the entry is currently active. + """ + isActive: Boolean! + + """ + The name of the IP allow list entry. + """ + name: String + + """ + The owner of the IP allow list entry. + """ + owner: IpAllowListOwner! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for IpAllowListEntry. +""" +type IpAllowListEntryConnection { + """ + A list of edges. + """ + edges: [IpAllowListEntryEdge] + + """ + A list of nodes. + """ + nodes: [IpAllowListEntry] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type IpAllowListEntryEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IpAllowListEntry +} + +""" +Ordering options for IP allow list entry connections. +""" +input IpAllowListEntryOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order IP allow list entries by. + """ + field: IpAllowListEntryOrderField! +} + +""" +Properties by which IP allow list entry connections can be ordered. +""" +enum IpAllowListEntryOrderField { + """ + Order IP allow list entries by the allow list value. + """ + ALLOW_LIST_VALUE + + """ + Order IP allow list entries by creation time. + """ + CREATED_AT +} + +""" +The possible values for the IP allow list configuration for installed GitHub Apps setting. +""" +enum IpAllowListForInstalledAppsEnabledSettingValue { + """ + The setting is disabled for the owner. + """ + DISABLED + + """ + The setting is enabled for the owner. + """ + ENABLED +} + +""" +Types that can own an IP allow list. +""" +union IpAllowListOwner = App | Enterprise | Organization + +""" +An Issue is a place to discuss ideas, enhancements, tasks, and bugs for a project. +""" +type Issue implements Assignable & Closable & Comment & Deletable & Labelable & Lockable & Node & ProjectV2Owner & Reactable & RepositoryNode & Subscribable & SubscribableThread & UniformResourceLocatable & Updatable & UpdatableComment { + """ + Reason that the conversation was locked. + """ + activeLockReason: LockReason + + """ + A list of Users assigned to this object. + """ + assignees( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! + + """ + The actor who authored the comment. + """ + author: Actor + + """ + Author's association with the subject of the comment. + """ + authorAssociation: CommentAuthorAssociation! + + """ + Identifies the body of the issue. + """ + body: String! + + """ + The body rendered to HTML. + """ + bodyHTML: HTML! + + """ + The http path for this issue body + """ + bodyResourcePath: URI! + + """ + Identifies the body of the issue rendered to text. + """ + bodyText: String! + + """ + The http URL for this issue body + """ + bodyUrl: URI! + + """ + Indicates if the object is closed (definition of closed may depend on type) + """ + closed: Boolean! + + """ + Identifies the date and time when the object was closed. + """ + closedAt: DateTime + + """ + A list of comments associated with the Issue. + """ + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issue comments returned from the connection. + """ + orderBy: IssueCommentOrder + ): IssueCommentConnection! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Check if this comment was created via an email reply. + """ + createdViaEmail: Boolean! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The actor who edited the comment. + """ + editor: Actor + + """ + Identifies the primary key from the database as a BigInt. + """ + fullDatabaseId: BigInt + + """ + The hovercard information for this issue + """ + hovercard( + """ + Whether or not to include notification contexts + """ + includeNotificationContexts: Boolean = true + ): Hovercard! + id: ID! + + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! + + """ + Indicates whether or not this issue is currently pinned to the repository issues list + """ + isPinned: Boolean + + """ + Is this issue read by the viewer + """ + isReadByViewer: Boolean + + """ + A list of labels associated with the object. + """ + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection + + """ + The moment the editor made the last edit + """ + lastEditedAt: DateTime + + """ + Branches linked to this issue. + """ + linkedBranches( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): LinkedBranchConnection! + + """ + `true` if the object is locked + """ + locked: Boolean! + + """ + Identifies the milestone associated with the issue. + """ + milestone: Milestone + + """ + Identifies the issue number. + """ + number: Int! + + """ + A list of Users that are participating in the Issue conversation. + """ + participants( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! + + """ + List of project cards associated with this issue. + """ + projectCards( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + A list of archived states to filter the cards by + """ + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectCardConnection! + + """ + List of project items associated with this issue. + """ + projectItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Include archived items. + """ + includeArchived: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2ItemConnection! + + """ + Find a project by number. + """ + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 + + """ + A list of projects under the owner. + """ + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! + + """ + Identifies when the comment was published at. + """ + publishedAt: DateTime + + """ + A list of reactions grouped by content left on the subject. + """ + reactionGroups: [ReactionGroup!] + + """ + A list of Reactions left on the Issue. + """ + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! + + """ + The repository associated with this node. + """ + repository: Repository! + + """ + The HTTP path for this issue + """ + resourcePath: URI! + + """ + Identifies the state of the issue. + """ + state: IssueState! + + """ + Identifies the reason for the issue state. + """ + stateReason: IssueStateReason + + """ + A list of events, comments, commits, etc. associated with the issue. + """ + timeline( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows filtering timeline events by a `since` timestamp. + """ + since: DateTime + ): IssueTimelineConnection! + @deprecated(reason: "`timeline` will be removed Use Issue.timelineItems instead. Removal on 2020-10-01 UTC.") + + """ + A list of events, comments, commits, etc. associated with the issue. + """ + timelineItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Filter timeline items by type. + """ + itemTypes: [IssueTimelineItemsItemType!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter timeline items by a `since` timestamp. + """ + since: DateTime + + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): IssueTimelineItemsConnection! + + """ + Identifies the issue title. + """ + title: String! + + """ + Identifies the issue title rendered to HTML. + """ + titleHTML: String! + + """ + A list of issues that track this issue + """ + trackedInIssues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): IssueConnection! + + """ + A list of issues tracked inside the current issue + """ + trackedIssues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): IssueConnection! + + """ + The number of tracked issues for this issue + """ + trackedIssuesCount( + """ + Limit the count to tracked issues with the specified states. + """ + states: [TrackedIssueStates] + ): Int! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this issue + """ + url: URI! + + """ + A list of edits to this content. + """ + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection + + """ + Indicates if the object can be closed by the viewer. + """ + viewerCanClose: Boolean! + + """ + Check if the current viewer can delete this object. + """ + viewerCanDelete: Boolean! + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! + + """ + Indicates if the object can be reopened by the viewer. + """ + viewerCanReopen: Boolean! + + """ + Check if the viewer is able to change their subscription status for the repository. + """ + viewerCanSubscribe: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! + + """ + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + """ + viewerSubscription: SubscriptionState + + """ + Identifies the viewer's thread subscription form action. + """ + viewerThreadSubscriptionFormAction: ThreadSubscriptionFormAction + + """ + Identifies the viewer's thread subscription status. + """ + viewerThreadSubscriptionStatus: ThreadSubscriptionState +} + +""" +The possible state reasons of a closed issue. +""" +enum IssueClosedStateReason { + """ + An issue that has been closed as completed + """ + COMPLETED + + """ + An issue that has been closed as not planned + """ + NOT_PLANNED +} + +""" +Represents a comment on an Issue. +""" +type IssueComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { + """ + The actor who authored the comment. + """ + author: Actor + + """ + Author's association with the subject of the comment. + """ + authorAssociation: CommentAuthorAssociation! + + """ + The body as Markdown. + """ + body: String! + + """ + The body rendered to HTML. + """ + bodyHTML: HTML! + + """ + The body rendered to text. + """ + bodyText: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Check if this comment was created via an email reply. + """ + createdViaEmail: Boolean! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The actor who edited the comment. + """ + editor: Actor + + """ + Identifies the primary key from the database as a BigInt. + """ + fullDatabaseId: BigInt + id: ID! + + """ + Check if this comment was edited and includes an edit with the creation data + """ + includesCreatedEdit: Boolean! + + """ + Returns whether or not a comment has been minimized. + """ + isMinimized: Boolean! + + """ + Identifies the issue associated with the comment. + """ + issue: Issue! + + """ + The moment the editor made the last edit + """ + lastEditedAt: DateTime + + """ + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. + """ + minimizedReason: String + + """ + Identifies when the comment was published at. + """ + publishedAt: DateTime + + """ + Returns the pull request associated with the comment, if this comment was made on a + pull request. + """ + pullRequest: PullRequest + + """ + A list of reactions grouped by content left on the subject. + """ + reactionGroups: [ReactionGroup!] + + """ + A list of Reactions left on the Issue. + """ + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! + + """ + The repository associated with this node. + """ + repository: Repository! + + """ + The HTTP path for this issue comment + """ + resourcePath: URI! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this issue comment + """ + url: URI! + + """ + A list of edits to this content. + """ + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection + + """ + Check if the current viewer can delete this object. + """ + viewerCanDelete: Boolean! + + """ + Check if the current viewer can minimize this object. + """ + viewerCanMinimize: Boolean! + + """ + Can user react to this subject + """ + viewerCanReact: Boolean! + + """ + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! + + """ + Reasons why the current viewer can not update this comment. + """ + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + + """ + Did the viewer author this comment. + """ + viewerDidAuthor: Boolean! +} + +""" +The connection type for IssueComment. +""" +type IssueCommentConnection { + """ + A list of edges. + """ + edges: [IssueCommentEdge] + + """ + A list of nodes. + """ + nodes: [IssueComment] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type IssueCommentEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IssueComment +} + +""" +Ways in which lists of issue comments can be ordered upon return. +""" +input IssueCommentOrder { + """ + The direction in which to order issue comments by the specified field. + """ + direction: OrderDirection! + + """ + The field in which to order issue comments by. + """ + field: IssueCommentOrderField! +} + +""" +Properties by which issue comment connections can be ordered. +""" +enum IssueCommentOrderField { + """ + Order issue comments by update time + """ + UPDATED_AT +} + +""" +The connection type for Issue. +""" +type IssueConnection { + """ + A list of edges. + """ + edges: [IssueEdge] + + """ + A list of nodes. + """ + nodes: [Issue] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +This aggregates issues opened by a user within one repository. +""" +type IssueContributionsByRepository { + """ + The issue contributions. + """ + contributions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for contributions returned from the connection. + """ + orderBy: ContributionOrder = {direction: DESC} + ): CreatedIssueContributionConnection! + + """ + The repository in which the issues were opened. + """ + repository: Repository! +} + +""" +An edge in a connection. +""" +type IssueEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Issue +} + +""" +Ways in which to filter lists of issues. +""" +input IssueFilters { + """ + List issues assigned to given name. Pass in `null` for issues with no assigned + user, and `*` for issues assigned to any user. + """ + assignee: String + + """ + List issues created by given name. + """ + createdBy: String + + """ + List issues where the list of label names exist on the issue. + """ + labels: [String!] + + """ + List issues where the given name is mentioned in the issue. + """ + mentioned: String + + """ + List issues by given milestone argument. If an string representation of an + integer is passed, it should refer to a milestone by its database ID. Pass in + `null` for issues with no milestone, and `*` for issues that are assigned to any milestone. + """ + milestone: String + + """ + List issues by given milestone argument. If an string representation of an + integer is passed, it should refer to a milestone by its number field. Pass in + `null` for issues with no milestone, and `*` for issues that are assigned to any milestone. + """ + milestoneNumber: String + + """ + List issues that have been updated at or after the given date. + """ + since: DateTime + + """ + List issues filtered by the list of states given. + """ + states: [IssueState!] + + """ + List issues subscribed to by viewer. + """ + viewerSubscribed: Boolean = false +} + +""" +Used for return value of Repository.issueOrPullRequest. +""" +union IssueOrPullRequest = Issue | PullRequest + +""" +Ways in which lists of issues can be ordered upon return. +""" +input IssueOrder { + """ + The direction in which to order issues by the specified field. + """ + direction: OrderDirection! + + """ + The field in which to order issues by. + """ + field: IssueOrderField! +} + +""" +Properties by which issue connections can be ordered. +""" +enum IssueOrderField { + """ + Order issues by comment count + """ + COMMENTS + + """ + Order issues by creation time + """ + CREATED_AT + + """ + Order issues by update time + """ + UPDATED_AT +} + +""" +The possible states of an issue. +""" +enum IssueState { + """ + An issue that has been closed + """ + CLOSED + + """ + An issue that is still open + """ + OPEN +} + +""" +The possible state reasons of an issue. +""" +enum IssueStateReason { + """ + An issue that has been closed as completed + """ + COMPLETED + + """ + An issue that has been closed as not planned + """ + NOT_PLANNED + + """ + An issue that has been reopened + """ + REOPENED +} + +""" +A repository issue template. +""" +type IssueTemplate { + """ + The template purpose. + """ + about: String + + """ + The suggested assignees. + """ + assignees( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! + + """ + The suggested issue body. + """ + body: String + + """ + The template filename. + """ + filename: String! + + """ + The suggested issue labels + """ + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection + + """ + The template name. + """ + name: String! + + """ + The suggested issue title. + """ + title: String +} + +""" +The connection type for IssueTimelineItem. +""" +type IssueTimelineConnection { + """ + A list of edges. + """ + edges: [IssueTimelineItemEdge] + + """ + A list of nodes. + """ + nodes: [IssueTimelineItem] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An item in an issue timeline +""" +union IssueTimelineItem = + AssignedEvent + | ClosedEvent + | Commit + | CrossReferencedEvent + | DemilestonedEvent + | IssueComment + | LabeledEvent + | LockedEvent + | MilestonedEvent + | ReferencedEvent + | RenamedTitleEvent + | ReopenedEvent + | SubscribedEvent + | TransferredEvent + | UnassignedEvent + | UnlabeledEvent + | UnlockedEvent + | UnsubscribedEvent + | UserBlockedEvent + +""" +An edge in a connection. +""" +type IssueTimelineItemEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IssueTimelineItem +} + +""" +An item in an issue timeline +""" +union IssueTimelineItems = + AddedToProjectEvent + | AssignedEvent + | ClosedEvent + | CommentDeletedEvent + | ConnectedEvent + | ConvertedNoteToIssueEvent + | ConvertedToDiscussionEvent + | CrossReferencedEvent + | DemilestonedEvent + | DisconnectedEvent + | IssueComment + | LabeledEvent + | LockedEvent + | MarkedAsDuplicateEvent + | MentionedEvent + | MilestonedEvent + | MovedColumnsInProjectEvent + | PinnedEvent + | ReferencedEvent + | RemovedFromProjectEvent + | RenamedTitleEvent + | ReopenedEvent + | SubscribedEvent + | TransferredEvent + | UnassignedEvent + | UnlabeledEvent + | UnlockedEvent + | UnmarkedAsDuplicateEvent + | UnpinnedEvent + | UnsubscribedEvent + | UserBlockedEvent + +""" +The connection type for IssueTimelineItems. +""" +type IssueTimelineItemsConnection { + """ + A list of edges. + """ + edges: [IssueTimelineItemsEdge] + + """ + Identifies the count of items after applying `before` and `after` filters. + """ + filteredCount: Int! + + """ + A list of nodes. + """ + nodes: [IssueTimelineItems] + + """ + Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + """ + pageCount: Int! + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! + + """ + Identifies the date and time when the timeline was last updated. + """ + updatedAt: DateTime! +} + +""" +An edge in a connection. +""" +type IssueTimelineItemsEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: IssueTimelineItems +} + +""" +The possible item types found in a timeline. +""" +enum IssueTimelineItemsItemType { + """ + Represents a 'added_to_project' event on a given issue or pull request. + """ + ADDED_TO_PROJECT_EVENT + + """ + Represents an 'assigned' event on any assignable object. + """ + ASSIGNED_EVENT + + """ + Represents a 'closed' event on any `Closable`. + """ + CLOSED_EVENT + + """ + Represents a 'comment_deleted' event on a given issue or pull request. + """ + COMMENT_DELETED_EVENT + + """ + Represents a 'connected' event on a given issue or pull request. + """ + CONNECTED_EVENT + + """ + Represents a 'converted_note_to_issue' event on a given issue or pull request. + """ + CONVERTED_NOTE_TO_ISSUE_EVENT + + """ + Represents a 'converted_to_discussion' event on a given issue. + """ + CONVERTED_TO_DISCUSSION_EVENT + + """ + Represents a mention made by one issue or pull request to another. + """ + CROSS_REFERENCED_EVENT + + """ + Represents a 'demilestoned' event on a given issue or pull request. + """ + DEMILESTONED_EVENT + + """ + Represents a 'disconnected' event on a given issue or pull request. + """ + DISCONNECTED_EVENT + + """ + Represents a comment on an Issue. + """ + ISSUE_COMMENT + + """ + Represents a 'labeled' event on a given issue or pull request. + """ + LABELED_EVENT + + """ + Represents a 'locked' event on a given issue or pull request. + """ + LOCKED_EVENT + + """ + Represents a 'marked_as_duplicate' event on a given issue or pull request. + """ + MARKED_AS_DUPLICATE_EVENT + + """ + Represents a 'mentioned' event on a given issue or pull request. + """ + MENTIONED_EVENT + + """ + Represents a 'milestoned' event on a given issue or pull request. + """ + MILESTONED_EVENT + + """ + Represents a 'moved_columns_in_project' event on a given issue or pull request. + """ + MOVED_COLUMNS_IN_PROJECT_EVENT + + """ + Represents a 'pinned' event on a given issue or pull request. + """ + PINNED_EVENT + + """ + Represents a 'referenced' event on a given `ReferencedSubject`. + """ + REFERENCED_EVENT + + """ + Represents a 'removed_from_project' event on a given issue or pull request. + """ + REMOVED_FROM_PROJECT_EVENT + + """ + Represents a 'renamed' event on a given issue or pull request + """ + RENAMED_TITLE_EVENT + + """ + Represents a 'reopened' event on any `Closable`. + """ + REOPENED_EVENT + + """ + Represents a 'subscribed' event on a given `Subscribable`. + """ + SUBSCRIBED_EVENT + + """ + Represents a 'transferred' event on a given issue or pull request. + """ + TRANSFERRED_EVENT + + """ + Represents an 'unassigned' event on any assignable object. + """ + UNASSIGNED_EVENT + + """ + Represents an 'unlabeled' event on a given issue or pull request. + """ + UNLABELED_EVENT + + """ + Represents an 'unlocked' event on a given issue or pull request. + """ + UNLOCKED_EVENT + + """ + Represents an 'unmarked_as_duplicate' event on a given issue or pull request. + """ + UNMARKED_AS_DUPLICATE_EVENT + + """ + Represents an 'unpinned' event on a given issue or pull request. + """ + UNPINNED_EVENT + + """ + Represents an 'unsubscribed' event on a given `Subscribable`. + """ + UNSUBSCRIBED_EVENT + + """ + Represents a 'user_blocked' event on a given user. + """ + USER_BLOCKED_EVENT +} + +""" +Represents a user signing up for a GitHub account. +""" +type JoinedGitHubContribution implements Contribution { + """ + Whether this contribution is associated with a record you do not have access to. For + example, your own 'first issue' contribution may have been made on a repository you can no + longer access. + """ + isRestricted: Boolean! + + """ + When this contribution was made. + """ + occurredAt: DateTime! + + """ + The HTTP path for this contribution. + """ + resourcePath: URI! + + """ + The HTTP URL for this contribution. + """ + url: URI! + + """ + The user who made this contribution. + """ + user: User! +} + +""" +A label for categorizing Issues, Pull Requests, Milestones, or Discussions with a given Repository. +""" +type Label implements Node { + """ + Identifies the label color. + """ + color: String! + + """ + Identifies the date and time when the label was created. + """ + createdAt: DateTime + + """ + A brief description of this label. + """ + description: String + id: ID! + + """ + Indicates whether or not this is a default label. + """ + isDefault: Boolean! + + """ + A list of issues associated with this label. + """ + issues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Filtering options for issues returned from the connection. + """ + filterBy: IssueFilters + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issues returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the issues by. + """ + states: [IssueState!] + ): IssueConnection! + + """ + Identifies the label name. + """ + name: String! + + """ + A list of pull requests associated with this label. + """ + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! + + """ + The repository associated with this label. + """ + repository: Repository! + + """ + The HTTP path for this label. + """ + resourcePath: URI! + + """ + Identifies the date and time when the label was last updated. + """ + updatedAt: DateTime + + """ + The HTTP URL for this label. + """ + url: URI! +} + +""" +The connection type for Label. +""" +type LabelConnection { + """ + A list of edges. + """ + edges: [LabelEdge] + + """ + A list of nodes. + """ + nodes: [Label] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type LabelEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Label +} + +""" +Ways in which lists of labels can be ordered upon return. +""" +input LabelOrder { + """ + The direction in which to order labels by the specified field. + """ + direction: OrderDirection! + + """ + The field in which to order labels by. + """ + field: LabelOrderField! +} + +""" +Properties by which label connections can be ordered. +""" +enum LabelOrderField { + """ + Order labels by creation time + """ + CREATED_AT + + """ + Order labels by name + """ + NAME +} + +""" +An object that can have labels assigned to it. +""" +interface Labelable { + """ + A list of labels associated with the object. + """ + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection +} + +""" +Represents a 'labeled' event on a given issue or pull request. +""" +type LabeledEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Identifies the label associated with the 'labeled' event. + """ + label: Label! + + """ + Identifies the `Labelable` associated with the event. + """ + labelable: Labelable! +} + +""" +Represents a given language found in repositories. +""" +type Language implements Node { + """ + The color defined for the current language. + """ + color: String + id: ID! + + """ + The name of the current language. + """ + name: String! +} + +""" +A list of languages associated with the parent. +""" +type LanguageConnection { + """ + A list of edges. + """ + edges: [LanguageEdge] + + """ + A list of nodes. + """ + nodes: [Language] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! + + """ + The total size in bytes of files written in that language. + """ + totalSize: Int! +} + +""" +Represents the language of a repository. +""" +type LanguageEdge { + cursor: String! + node: Language! + + """ + The number of bytes of code written in the language. + """ + size: Int! +} + +""" +Ordering options for language connections. +""" +input LanguageOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order languages by. + """ + field: LanguageOrderField! +} + +""" +Properties by which language connections can be ordered. +""" +enum LanguageOrderField { + """ + Order languages by the size of all files containing the language + """ + SIZE +} + +""" +A repository's open source license +""" +type License implements Node { + """ + The full text of the license + """ + body: String! + + """ + The conditions set by the license + """ + conditions: [LicenseRule]! + + """ + A human-readable description of the license + """ + description: String + + """ + Whether the license should be featured + """ + featured: Boolean! + + """ + Whether the license should be displayed in license pickers + """ + hidden: Boolean! + id: ID! + + """ + Instructions on how to implement the license + """ + implementation: String + + """ + The lowercased SPDX ID of the license + """ + key: String! + + """ + The limitations set by the license + """ + limitations: [LicenseRule]! + + """ + The license full name specified by + """ + name: String! + + """ + Customary short name if applicable (e.g, GPLv3) + """ + nickname: String + + """ + The permissions set by the license + """ + permissions: [LicenseRule]! + + """ + Whether the license is a pseudo-license placeholder (e.g., other, no-license) + """ + pseudoLicense: Boolean! + + """ + Short identifier specified by + """ + spdxId: String + + """ + URL to the license on + """ + url: URI +} + +""" +Describes a License's conditions, permissions, and limitations +""" +type LicenseRule { + """ + A description of the rule + """ + description: String! + + """ + The machine-readable rule key + """ + key: String! + + """ + The human-readable rule label + """ + label: String! +} + +""" +Autogenerated input type of LinkProjectV2ToRepository +""" +input LinkProjectV2ToRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to link to the repository. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the repository to link to the project. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of LinkProjectV2ToRepository +""" +type LinkProjectV2ToRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository the project is linked to. + """ + repository: Repository +} + +""" +Autogenerated input type of LinkProjectV2ToTeam +""" +input LinkProjectV2ToTeamInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to link to the team. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the team to link to the project. + """ + teamId: ID! @possibleTypes(concreteTypes: ["Team"]) +} + +""" +Autogenerated return type of LinkProjectV2ToTeam +""" +type LinkProjectV2ToTeamPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The team the project is linked to + """ + team: Team +} + +""" +Autogenerated input type of LinkRepositoryToProject +""" +input LinkRepositoryToProjectInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to link to a Repository + """ + projectId: ID! @possibleTypes(concreteTypes: ["Project"]) + + """ + The ID of the Repository to link to a Project. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of LinkRepositoryToProject +""" +type LinkRepositoryToProjectPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The linked Project. + """ + project: Project + + """ + The linked Repository. + """ + repository: Repository +} + +""" +A branch linked to an issue. +""" +type LinkedBranch implements Node { + id: ID! + + """ + The branch's ref. + """ + ref: Ref +} + +""" +The connection type for LinkedBranch. +""" +type LinkedBranchConnection { + """ + A list of edges. + """ + edges: [LinkedBranchEdge] + + """ + A list of nodes. + """ + nodes: [LinkedBranch] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type LinkedBranchEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: LinkedBranch +} + +""" +Autogenerated input type of LockLockable +""" +input LockLockableInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A reason for why the item will be locked. + """ + lockReason: LockReason + + """ + ID of the item to be locked. + """ + lockableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Lockable") +} + +""" +Autogenerated return type of LockLockable +""" +type LockLockablePayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item that was locked. + """ + lockedRecord: Lockable +} + +""" +The possible reasons that an issue or pull request was locked. +""" +enum LockReason { + """ + The issue or pull request was locked because the conversation was off-topic. + """ + OFF_TOPIC + + """ + The issue or pull request was locked because the conversation was resolved. + """ + RESOLVED + + """ + The issue or pull request was locked because the conversation was spam. + """ + SPAM + + """ + The issue or pull request was locked because the conversation was too heated. + """ + TOO_HEATED +} + +""" +An object that can be locked. +""" +interface Lockable { + """ + Reason that the conversation was locked. + """ + activeLockReason: LockReason + + """ + `true` if the object is locked + """ + locked: Boolean! +} + +""" +Represents a 'locked' event on a given issue or pull request. +""" +type LockedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Reason that the conversation was locked (optional). + """ + lockReason: LockReason + + """ + Object that was locked. + """ + lockable: Lockable! +} + +""" +A placeholder user for attribution of imported data on GitHub. +""" +type Mannequin implements Actor & Node & UniformResourceLocatable { + """ + A URL pointing to the GitHub App's public avatar. + """ + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + + """ + The user that has claimed the data attributed to this mannequin. + """ + claimant: User + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The mannequin's email on the source instance. + """ + email: String + id: ID! + + """ + The username of the actor. + """ + login: String! + + """ + The HTML path to this resource. + """ + resourcePath: URI! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The URL to this resource. + """ + url: URI! +} + +""" +The connection type for Mannequin. +""" +type MannequinConnection { + """ + A list of edges. + """ + edges: [MannequinEdge] + + """ + A list of nodes. + """ + nodes: [Mannequin] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +Represents a mannequin. +""" +type MannequinEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Mannequin +} + +""" +Ordering options for mannequins. +""" +input MannequinOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order mannequins by. + """ + field: MannequinOrderField! +} + +""" +Properties by which mannequins can be ordered. +""" +enum MannequinOrderField { + """ + Order mannequins why when they were created. + """ + CREATED_AT + + """ + Order mannequins alphabetically by their source login. + """ + LOGIN +} + +""" +Autogenerated input type of MarkDiscussionCommentAsAnswer +""" +input MarkDiscussionCommentAsAnswerInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion comment to mark as an answer. + """ + id: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of MarkDiscussionCommentAsAnswer +""" +type MarkDiscussionCommentAsAnswerPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that includes the chosen comment. + """ + discussion: Discussion +} + +""" +Autogenerated input type of MarkFileAsViewed +""" +input MarkFileAsViewedInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The path of the file to mark as viewed + """ + path: String! + + """ + The Node ID of the pull request. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of MarkFileAsViewed +""" +type MarkFileAsViewedPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated pull request. + """ + pullRequest: PullRequest +} + +""" +Autogenerated input type of MarkProjectV2AsTemplate +""" +input MarkProjectV2AsTemplateInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to mark as a template. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of MarkProjectV2AsTemplate +""" +type MarkProjectV2AsTemplatePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The project. + """ + projectV2: ProjectV2 +} + +""" +Autogenerated input type of MarkPullRequestReadyForReview +""" +input MarkPullRequestReadyForReviewInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the pull request to be marked as ready for review. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of MarkPullRequestReadyForReview +""" +type MarkPullRequestReadyForReviewPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The pull request that is ready for review. + """ + pullRequest: PullRequest +} + +""" +Represents a 'marked_as_duplicate' event on a given issue or pull request. +""" +type MarkedAsDuplicateEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + The authoritative issue or pull request which has been duplicated by another. + """ + canonical: IssueOrPullRequest + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + The issue or pull request which has been marked as a duplicate of another. + """ + duplicate: IssueOrPullRequest + id: ID! + + """ + Canonical and duplicate belong to different repositories. + """ + isCrossRepository: Boolean! +} + +""" +A public description of a Marketplace category. +""" +type MarketplaceCategory implements Node { + """ + The category's description. + """ + description: String + + """ + The technical description of how apps listed in this category work with GitHub. + """ + howItWorks: String + id: ID! + + """ + The category's name. + """ + name: String! + + """ + How many Marketplace listings have this as their primary category. + """ + primaryListingCount: Int! + + """ + The HTTP path for this Marketplace category. + """ + resourcePath: URI! + + """ + How many Marketplace listings have this as their secondary category. + """ + secondaryListingCount: Int! + + """ + The short name of the category used in its URL. + """ + slug: String! + + """ + The HTTP URL for this Marketplace category. + """ + url: URI! +} + +""" +A listing in the GitHub integration marketplace. +""" +type MarketplaceListing implements Node { + """ + The GitHub App this listing represents. + """ + app: App + + """ + URL to the listing owner's company site. + """ + companyUrl: URI + + """ + The HTTP path for configuring access to the listing's integration or OAuth app + """ + configurationResourcePath: URI! + + """ + The HTTP URL for configuring access to the listing's integration or OAuth app + """ + configurationUrl: URI! + + """ + URL to the listing's documentation. + """ + documentationUrl: URI + + """ + The listing's detailed description. + """ + extendedDescription: String + + """ + The listing's detailed description rendered to HTML. + """ + extendedDescriptionHTML: HTML! + + """ + The listing's introductory description. + """ + fullDescription: String! + + """ + The listing's introductory description rendered to HTML. + """ + fullDescriptionHTML: HTML! + + """ + Does this listing have any plans with a free trial? + """ + hasPublishedFreeTrialPlans: Boolean! + + """ + Does this listing have a terms of service link? + """ + hasTermsOfService: Boolean! + + """ + Whether the creator of the app is a verified org + """ + hasVerifiedOwner: Boolean! + + """ + A technical description of how this app works with GitHub. + """ + howItWorks: String + + """ + The listing's technical description rendered to HTML. + """ + howItWorksHTML: HTML! + id: ID! + + """ + URL to install the product to the viewer's account or organization. + """ + installationUrl: URI + + """ + Whether this listing's app has been installed for the current viewer + """ + installedForViewer: Boolean! + + """ + Whether this listing has been removed from the Marketplace. + """ + isArchived: Boolean! + + """ + Whether this listing is still an editable draft that has not been submitted + for review and is not publicly visible in the Marketplace. + """ + isDraft: Boolean! + + """ + Whether the product this listing represents is available as part of a paid plan. + """ + isPaid: Boolean! + + """ + Whether this listing has been approved for display in the Marketplace. + """ + isPublic: Boolean! + + """ + Whether this listing has been rejected by GitHub for display in the Marketplace. + """ + isRejected: Boolean! + + """ + Whether this listing has been approved for unverified display in the Marketplace. + """ + isUnverified: Boolean! + + """ + Whether this draft listing has been submitted for review for approval to be unverified in the Marketplace. + """ + isUnverifiedPending: Boolean! + + """ + Whether this draft listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + """ + isVerificationPendingFromDraft: Boolean! + + """ + Whether this unverified listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + """ + isVerificationPendingFromUnverified: Boolean! + + """ + Whether this listing has been approved for verified display in the Marketplace. + """ + isVerified: Boolean! + + """ + The hex color code, without the leading '#', for the logo background. + """ + logoBackgroundColor: String! + + """ + URL for the listing's logo image. + """ + logoUrl( + """ + The size in pixels of the resulting square image. + """ + size: Int = 400 + ): URI + + """ + The listing's full name. + """ + name: String! + + """ + The listing's very short description without a trailing period or ampersands. + """ + normalizedShortDescription: String! + + """ + URL to the listing's detailed pricing. + """ + pricingUrl: URI + + """ + The category that best describes the listing. + """ + primaryCategory: MarketplaceCategory! + + """ + URL to the listing's privacy policy, may return an empty string for listings that do not require a privacy policy URL. + """ + privacyPolicyUrl: URI! + + """ + The HTTP path for the Marketplace listing. + """ + resourcePath: URI! + + """ + The URLs for the listing's screenshots. + """ + screenshotUrls: [String]! + + """ + An alternate category that describes the listing. + """ + secondaryCategory: MarketplaceCategory + + """ + The listing's very short description. + """ + shortDescription: String! + + """ + The short name of the listing used in its URL. + """ + slug: String! + + """ + URL to the listing's status page. + """ + statusUrl: URI + + """ + An email address for support for this listing's app. + """ + supportEmail: String + + """ + Either a URL or an email address for support for this listing's app, may + return an empty string for listings that do not require a support URL. + """ + supportUrl: URI! + + """ + URL to the listing's terms of service. + """ + termsOfServiceUrl: URI + + """ + The HTTP URL for the Marketplace listing. + """ + url: URI! + + """ + Can the current viewer add plans for this Marketplace listing. + """ + viewerCanAddPlans: Boolean! + + """ + Can the current viewer approve this Marketplace listing. + """ + viewerCanApprove: Boolean! + + """ + Can the current viewer delist this Marketplace listing. + """ + viewerCanDelist: Boolean! + + """ + Can the current viewer edit this Marketplace listing. + """ + viewerCanEdit: Boolean! + + """ + Can the current viewer edit the primary and secondary category of this + Marketplace listing. + """ + viewerCanEditCategories: Boolean! + + """ + Can the current viewer edit the plans for this Marketplace listing. + """ + viewerCanEditPlans: Boolean! + + """ + Can the current viewer return this Marketplace listing to draft state + so it becomes editable again. + """ + viewerCanRedraft: Boolean! + + """ + Can the current viewer reject this Marketplace listing by returning it to + an editable draft state or rejecting it entirely. + """ + viewerCanReject: Boolean! + + """ + Can the current viewer request this listing be reviewed for display in + the Marketplace as verified. + """ + viewerCanRequestApproval: Boolean! + + """ + Indicates whether the current user has an active subscription to this Marketplace listing. + """ + viewerHasPurchased: Boolean! + + """ + Indicates if the current user has purchased a subscription to this Marketplace listing + for all of the organizations the user owns. + """ + viewerHasPurchasedForAllOrganizations: Boolean! + + """ + Does the current viewer role allow them to administer this Marketplace listing. + """ + viewerIsListingAdmin: Boolean! +} + +""" +Look up Marketplace Listings +""" +type MarketplaceListingConnection { + """ + A list of edges. + """ + edges: [MarketplaceListingEdge] + + """ + A list of nodes. + """ + nodes: [MarketplaceListing] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type MarketplaceListingEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: MarketplaceListing +} + +""" +Entities that have members who can set status messages. +""" +interface MemberStatusable { + """ + Get the status messages members of this entity have set that are either public or visible only to the organization. + """ + memberStatuses( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for user statuses returned from the connection. + """ + orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} + ): UserStatusConnection! +} + +""" +Audit log entry for a members_can_delete_repos.clear event. +""" +type MembersCanDeleteReposClearAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a members_can_delete_repos.disable event. +""" +type MembersCanDeleteReposDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a members_can_delete_repos.enable event. +""" +type MembersCanDeleteReposEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Represents a 'mentioned' event on a given issue or pull request. +""" +type MentionedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! +} + +""" +Autogenerated input type of MergeBranch +""" +input MergeBranchInput { + """ + The email address to associate with this commit. + """ + authorEmail: String + + """ + The name of the base branch that the provided head will be merged into. + """ + base: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Message to use for the merge commit. If omitted, a default will be used. + """ + commitMessage: String + + """ + The head to merge into the base branch. This can be a branch name or a commit GitObjectID. + """ + head: String! + + """ + The Node ID of the Repository containing the base branch that will be modified. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of MergeBranch +""" +type MergeBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The resulting merge Commit. + """ + mergeCommit: Commit +} + +""" +The possible default commit messages for merges. +""" +enum MergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the pull request's body. + """ + PR_BODY + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +The possible default commit titles for merges. +""" +enum MergeCommitTitle { + """ + Default to the classic title for a merge message (e.g., Merge pull request #123 from branch-name). + """ + MERGE_MESSAGE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +Autogenerated input type of MergePullRequest +""" +input MergePullRequestInput { + """ + The email address to associate with this merge. + """ + authorEmail: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Commit body to use for the merge commit; if omitted, a default message will be used + """ + commitBody: String + + """ + Commit headline to use for the merge commit; if omitted, a default message will be used. + """ + commitHeadline: String + + """ + OID that the pull request head ref must match to allow merge; if omitted, no check is performed. + """ + expectedHeadOid: GitObjectID + + """ + The merge method to use. If omitted, defaults to 'MERGE' + """ + mergeMethod: PullRequestMergeMethod = MERGE + + """ + ID of the pull request to be merged. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} + +""" +Autogenerated return type of MergePullRequest +""" +type MergePullRequestPayload { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The pull request that was merged. + """ + pullRequest: PullRequest +} + +""" +The queue of pull request entries to be merged into a protected branch in a repository. +""" +type MergeQueue implements Node { + """ + The configuration for this merge queue + """ + configuration: MergeQueueConfiguration + + """ + The entries in the queue + """ + entries( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): MergeQueueEntryConnection + id: ID! + + """ + The estimated time in seconds until a newly added entry would be merged + """ + nextEntryEstimatedTimeToMerge: Int + + """ + The repository this merge queue belongs to + """ + repository: Repository + + """ + The HTTP path for this merge queue + """ + resourcePath: URI! + + """ + The HTTP URL for this merge queue + """ + url: URI! +} + +""" +Configuration for a MergeQueue +""" +type MergeQueueConfiguration { + """ + The amount of time in minutes to wait for a check response before considering it a failure. + """ + checkResponseTimeout: Int + + """ + The maximum number of entries to build at once. + """ + maximumEntriesToBuild: Int + + """ + The maximum number of entries to merge at once. + """ + maximumEntriesToMerge: Int + + """ + The merge method to use for this queue. + """ + mergeMethod: PullRequestMergeMethod + + """ + The strategy to use when merging entries. + """ + mergingStrategy: MergeQueueMergingStrategy + + """ + The minimum number of entries required to merge at once. + """ + minimumEntriesToMerge: Int + + """ + The amount of time in minutes to wait before ignoring the minumum number of + entries in the queue requirement and merging a collection of entries + """ + minimumEntriesToMergeWaitTime: Int +} + +""" +Entries in a MergeQueue +""" +type MergeQueueEntry implements Node { + """ + The base commit for this entry + """ + baseCommit: Commit + + """ + The date and time this entry was added to the merge queue + """ + enqueuedAt: DateTime! + + """ + The actor that enqueued this entry + """ + enqueuer: Actor! + + """ + The estimated time in seconds until this entry will be merged + """ + estimatedTimeToMerge: Int + + """ + The head commit for this entry + """ + headCommit: Commit + id: ID! + + """ + Whether this pull request should jump the queue + """ + jump: Boolean! + + """ + The merge queue that this entry belongs to + """ + mergeQueue: MergeQueue + + """ + The position of this entry in the queue + """ + position: Int! + + """ + The pull request that will be added to a merge group + """ + pullRequest: PullRequest + + """ + Does this pull request need to be deployed on its own + """ + solo: Boolean! + + """ + The state of this entry in the queue + """ + state: MergeQueueEntryState! +} + +""" +The connection type for MergeQueueEntry. +""" +type MergeQueueEntryConnection { + """ + A list of edges. + """ + edges: [MergeQueueEntryEdge] + + """ + A list of nodes. + """ + nodes: [MergeQueueEntry] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type MergeQueueEntryEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: MergeQueueEntry +} + +""" +The possible states for a merge queue entry. +""" +enum MergeQueueEntryState { + """ + The entry is currently waiting for checks to pass. + """ + AWAITING_CHECKS + + """ + The entry is currently locked. + """ + LOCKED + + """ + The entry is currently mergeable. + """ + MERGEABLE + + """ + The entry is currently queued. + """ + QUEUED + + """ + The entry is currently unmergeable. + """ + UNMERGEABLE +} + +""" +The possible merging strategies for a merge queue. +""" +enum MergeQueueMergingStrategy { + """ + Entries only allowed to merge if they are passing. + """ + ALLGREEN + + """ + Failing Entires are allowed to merge if they are with a passing entry. + """ + HEADGREEN +} + +""" +Detailed status information about a pull request merge. +""" +enum MergeStateStatus { + """ + The head ref is out of date. + """ + BEHIND + + """ + The merge is blocked. + """ + BLOCKED + + """ + Mergeable and passing commit status. + """ + CLEAN + + """ + The merge commit cannot be cleanly created. + """ + DIRTY + + """ + The merge is blocked due to the pull request being a draft. + """ + DRAFT + @deprecated( + reason: "DRAFT state will be removed from this enum and `isDraft` should be used instead Use PullRequest.isDraft instead. Removal on 2021-01-01 UTC." + ) + + """ + Mergeable with passing commit status and pre-receive hooks. + """ + HAS_HOOKS + + """ + The state cannot currently be determined. + """ + UNKNOWN + + """ + Mergeable with non-passing commit status. + """ + UNSTABLE +} + +""" +Whether or not a PullRequest can be merged. +""" +enum MergeableState { + """ + The pull request cannot be merged due to merge conflicts. + """ + CONFLICTING + + """ + The pull request can be merged. + """ + MERGEABLE + + """ + The mergeability of the pull request is still being calculated. + """ + UNKNOWN +} + +""" +Represents a 'merged' event on a given pull request. +""" +type MergedEvent implements Node & UniformResourceLocatable { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the commit associated with the `merge` event. + """ + commit: Commit + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Identifies the Ref associated with the `merge` event. + """ + mergeRef: Ref + + """ + Identifies the name of the Ref associated with the `merge` event. + """ + mergeRefName: String! + + """ + PullRequest referenced by event. + """ + pullRequest: PullRequest! + + """ + The HTTP path for this merged event. + """ + resourcePath: URI! + + """ + The HTTP URL for this merged event. + """ + url: URI! +} + +""" +Represents a GitHub Enterprise Importer (GEI) migration. +""" +interface Migration { + """ + The migration flag to continue on error. + """ + continueOnError: Boolean! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: String + + """ + The reason the migration failed. + """ + failureReason: String + id: ID! + + """ + The URL for the migration log (expires 1 day after migration completes). + """ + migrationLogUrl: URI + + """ + The migration source. + """ + migrationSource: MigrationSource! + + """ + The target repository name. + """ + repositoryName: String! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + sourceUrl: URI! + + """ + The migration state. + """ + state: MigrationState! + + """ + The number of warnings encountered for this migration. To review the warnings, + check the [Migration Log](https://docs.github.com/en/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/accessing-your-migration-logs-for-github-enterprise-importer). + """ + warningsCount: Int! +} + +""" +A GitHub Enterprise Importer (GEI) migration source. +""" +type MigrationSource implements Node { + id: ID! + + """ + The migration source name. + """ + name: String! + + """ + The migration source type. + """ + type: MigrationSourceType! + + """ + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. + """ + url: URI! +} + +""" +Represents the different GitHub Enterprise Importer (GEI) migration sources. +""" +enum MigrationSourceType { + """ + An Azure DevOps migration source. + """ + AZURE_DEVOPS + + """ + A Bitbucket Server migration source. + """ + BITBUCKET_SERVER + + """ + A GitHub Migration API source. + """ + GITHUB_ARCHIVE +} + +""" +The GitHub Enterprise Importer (GEI) migration state. +""" +enum MigrationState { + """ + The migration has failed. + """ + FAILED + + """ + The migration has invalid credentials. + """ + FAILED_VALIDATION + + """ + The migration is in progress. + """ + IN_PROGRESS + + """ + The migration has not started. + """ + NOT_STARTED + + """ + The migration needs to have its credentials validated. + """ + PENDING_VALIDATION + + """ + The migration has been queued. + """ + QUEUED + + """ + The migration has succeeded. + """ + SUCCEEDED +} + +""" +Represents a Milestone object on a given repository. +""" +type Milestone implements Closable & Node & UniformResourceLocatable { + """ + Indicates if the object is closed (definition of closed may depend on type) + """ + closed: Boolean! + + """ + Identifies the date and time when the object was closed. + """ + closedAt: DateTime + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the actor who created the milestone. + """ + creator: Actor + + """ + Identifies the description of the milestone. + """ + description: String + + """ + Identifies the due date of the milestone. + """ + dueOn: DateTime + id: ID! + + """ + A list of issues associated with the milestone. + """ + issues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Filtering options for issues returned from the connection. + """ + filterBy: IssueFilters + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issues returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the issues by. + """ + states: [IssueState!] + ): IssueConnection! + + """ + Identifies the number of the milestone. + """ + number: Int! + + """ + Identifies the percentage complete for the milestone + """ + progressPercentage: Float! + + """ + A list of pull requests associated with the milestone. + """ + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! + + """ + The repository associated with this milestone. + """ + repository: Repository! + + """ + The HTTP path for this milestone + """ + resourcePath: URI! + + """ + Identifies the state of the milestone. + """ + state: MilestoneState! + + """ + Identifies the title of the milestone. + """ + title: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this milestone + """ + url: URI! + + """ + Indicates if the object can be closed by the viewer. + """ + viewerCanClose: Boolean! + + """ + Indicates if the object can be reopened by the viewer. + """ + viewerCanReopen: Boolean! +} + +""" +The connection type for Milestone. +""" +type MilestoneConnection { + """ + A list of edges. + """ + edges: [MilestoneEdge] + + """ + A list of nodes. + """ + nodes: [Milestone] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type MilestoneEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: Milestone +} + +""" +Types that can be inside a Milestone. +""" +union MilestoneItem = Issue | PullRequest + +""" +Ordering options for milestone connections. +""" +input MilestoneOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order milestones by. + """ + field: MilestoneOrderField! +} + +""" +Properties by which milestone connections can be ordered. +""" +enum MilestoneOrderField { + """ + Order milestones by when they were created. + """ + CREATED_AT + + """ + Order milestones by when they are due. + """ + DUE_DATE + + """ + Order milestones by their number. + """ + NUMBER + + """ + Order milestones by when they were last updated. + """ + UPDATED_AT +} + +""" +The possible states of a milestone. +""" +enum MilestoneState { + """ + A milestone that has been closed. + """ + CLOSED + + """ + A milestone that is still open. + """ + OPEN +} + +""" +Represents a 'milestoned' event on a given issue or pull request. +""" +type MilestonedEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Identifies the milestone title associated with the 'milestoned' event. + """ + milestoneTitle: String! + + """ + Object referenced by event. + """ + subject: MilestoneItem! +} + +""" +Entities that can be minimized. +""" +interface Minimizable { + """ + Returns whether or not a comment has been minimized. + """ + isMinimized: Boolean! + + """ + Returns why the comment was minimized. One of `abuse`, `off-topic`, + `outdated`, `resolved`, `duplicate` and `spam`. Note that the case and + formatting of these values differs from the inputs to the `MinimizeComment` mutation. + """ + minimizedReason: String + + """ + Check if the current viewer can minimize this object. + """ + viewerCanMinimize: Boolean! +} + +""" +Autogenerated input type of MinimizeComment +""" +input MinimizeCommentInput { + """ + The classification of comment + """ + classifier: ReportedContentClassifiers! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the subject to modify. + """ + subjectId: ID! + @possibleTypes( + concreteTypes: ["CommitComment", "DiscussionComment", "GistComment", "IssueComment", "PullRequestReviewComment"] + abstractType: "Minimizable" + ) +} + +""" +Autogenerated return type of MinimizeComment +""" +type MinimizeCommentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The comment that was minimized. + """ + minimizedComment: Minimizable +} + +""" +Autogenerated input type of MoveProjectCard +""" +input MoveProjectCardInput { + """ + Place the new card after the card with this id. Pass null to place it at the top. + """ + afterCardId: ID @possibleTypes(concreteTypes: ["ProjectCard"]) + + """ + The id of the card to move. + """ + cardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the column to move it into. + """ + columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) +} + +""" +Autogenerated return type of MoveProjectCard +""" +type MoveProjectCardPayload { + """ + The new edge of the moved card. + """ + cardEdge: ProjectCardEdge + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} + +""" +Autogenerated input type of MoveProjectColumn +""" +input MoveProjectColumnInput { + """ + Place the new column after the column with this id. Pass null to place it at the front. + """ + afterColumnId: ID @possibleTypes(concreteTypes: ["ProjectColumn"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The id of the column to move. + """ + columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) +} + +""" +Autogenerated return type of MoveProjectColumn +""" +type MoveProjectColumnPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new edge of the moved column. + """ + columnEdge: ProjectColumnEdge +} + +""" +Represents a 'moved_columns_in_project' event on a given issue or pull request. +""" +type MovedColumnsInProjectEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! + + """ + Column name the issue or pull request was moved from. + """ + previousProjectColumnName: String! @preview(toggledBy: "starfox-preview") + + """ + Project referenced by event. + """ + project: Project @preview(toggledBy: "starfox-preview") + + """ + Project card referenced by this project event. + """ + projectCard: ProjectCard @preview(toggledBy: "starfox-preview") + + """ + Column name the issue or pull request was moved to. + """ + projectColumnName: String! @preview(toggledBy: "starfox-preview") +} + +""" +The root query for implementing GraphQL mutations. +""" +type Mutation { + """ + Clear all of a customer's queued migrations + """ + abortQueuedMigrations( + """ + Parameters for AbortQueuedMigrations + """ + input: AbortQueuedMigrationsInput! + ): AbortQueuedMigrationsPayload + + """ + Accepts a pending invitation for a user to become an administrator of an enterprise. + """ + acceptEnterpriseAdministratorInvitation( + """ + Parameters for AcceptEnterpriseAdministratorInvitation + """ + input: AcceptEnterpriseAdministratorInvitationInput! + ): AcceptEnterpriseAdministratorInvitationPayload + + """ + Applies a suggested topic to the repository. + """ + acceptTopicSuggestion( + """ + Parameters for AcceptTopicSuggestion + """ + input: AcceptTopicSuggestionInput! + ): AcceptTopicSuggestionPayload + + """ + Adds assignees to an assignable object. + """ + addAssigneesToAssignable( + """ + Parameters for AddAssigneesToAssignable + """ + input: AddAssigneesToAssignableInput! + ): AddAssigneesToAssignablePayload + + """ + Adds a comment to an Issue or Pull Request. + """ + addComment( + """ + Parameters for AddComment + """ + input: AddCommentInput! + ): AddCommentPayload + + """ + Adds a comment to a Discussion, possibly as a reply to another comment. + """ + addDiscussionComment( + """ + Parameters for AddDiscussionComment + """ + input: AddDiscussionCommentInput! + ): AddDiscussionCommentPayload + + """ + Vote for an option in a discussion poll. + """ + addDiscussionPollVote( + """ + Parameters for AddDiscussionPollVote + """ + input: AddDiscussionPollVoteInput! + ): AddDiscussionPollVotePayload + + """ + Adds enterprise members to an organization within the enterprise. + """ + addEnterpriseOrganizationMember( + """ + Parameters for AddEnterpriseOrganizationMember + """ + input: AddEnterpriseOrganizationMemberInput! + ): AddEnterpriseOrganizationMemberPayload + + """ + Adds a support entitlement to an enterprise member. + """ + addEnterpriseSupportEntitlement( + """ + Parameters for AddEnterpriseSupportEntitlement + """ + input: AddEnterpriseSupportEntitlementInput! + ): AddEnterpriseSupportEntitlementPayload + + """ + Adds labels to a labelable object. + """ + addLabelsToLabelable( + """ + Parameters for AddLabelsToLabelable + """ + input: AddLabelsToLabelableInput! + ): AddLabelsToLabelablePayload + + """ + Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. + """ + addProjectCard( + """ + Parameters for AddProjectCard + """ + input: AddProjectCardInput! + ): AddProjectCardPayload + + """ + Adds a column to a Project. + """ + addProjectColumn( + """ + Parameters for AddProjectColumn + """ + input: AddProjectColumnInput! + ): AddProjectColumnPayload + + """ + Creates a new draft issue and add it to a Project. + """ + addProjectV2DraftIssue( + """ + Parameters for AddProjectV2DraftIssue + """ + input: AddProjectV2DraftIssueInput! + ): AddProjectV2DraftIssuePayload + + """ + Links an existing content instance to a Project. + """ + addProjectV2ItemById( + """ + Parameters for AddProjectV2ItemById + """ + input: AddProjectV2ItemByIdInput! + ): AddProjectV2ItemByIdPayload + + """ + Adds a review to a Pull Request. + """ + addPullRequestReview( + """ + Parameters for AddPullRequestReview + """ + input: AddPullRequestReviewInput! + ): AddPullRequestReviewPayload + + """ + Adds a comment to a review. + """ + addPullRequestReviewComment( + """ + Parameters for AddPullRequestReviewComment + """ + input: AddPullRequestReviewCommentInput! + ): AddPullRequestReviewCommentPayload + + """ + Adds a new thread to a pending Pull Request Review. + """ + addPullRequestReviewThread( + """ + Parameters for AddPullRequestReviewThread + """ + input: AddPullRequestReviewThreadInput! + ): AddPullRequestReviewThreadPayload + + """ + Adds a reply to an existing Pull Request Review Thread. + """ + addPullRequestReviewThreadReply( + """ + Parameters for AddPullRequestReviewThreadReply + """ + input: AddPullRequestReviewThreadReplyInput! + ): AddPullRequestReviewThreadReplyPayload + + """ + Adds a reaction to a subject. + """ + addReaction( + """ + Parameters for AddReaction + """ + input: AddReactionInput! + ): AddReactionPayload + + """ + Adds a star to a Starrable. + """ + addStar( + """ + Parameters for AddStar + """ + input: AddStarInput! + ): AddStarPayload + + """ + Add an upvote to a discussion or discussion comment. + """ + addUpvote( + """ + Parameters for AddUpvote + """ + input: AddUpvoteInput! + ): AddUpvotePayload + + """ + Adds a verifiable domain to an owning account. + """ + addVerifiableDomain( + """ + Parameters for AddVerifiableDomain + """ + input: AddVerifiableDomainInput! + ): AddVerifiableDomainPayload + + """ + Approve all pending deployments under one or more environments + """ + approveDeployments( + """ + Parameters for ApproveDeployments + """ + input: ApproveDeploymentsInput! + ): ApproveDeploymentsPayload + + """ + Approve a verifiable domain for notification delivery. + """ + approveVerifiableDomain( + """ + Parameters for ApproveVerifiableDomain + """ + input: ApproveVerifiableDomainInput! + ): ApproveVerifiableDomainPayload + + """ + Archives a ProjectV2Item + """ + archiveProjectV2Item( + """ + Parameters for ArchiveProjectV2Item + """ + input: ArchiveProjectV2ItemInput! + ): ArchiveProjectV2ItemPayload + + """ + Marks a repository as archived. + """ + archiveRepository( + """ + Parameters for ArchiveRepository + """ + input: ArchiveRepositoryInput! + ): ArchiveRepositoryPayload + + """ + Cancels a pending invitation for an administrator to join an enterprise. + """ + cancelEnterpriseAdminInvitation( + """ + Parameters for CancelEnterpriseAdminInvitation + """ + input: CancelEnterpriseAdminInvitationInput! + ): CancelEnterpriseAdminInvitationPayload + + """ + Cancel an active sponsorship. + """ + cancelSponsorship( + """ + Parameters for CancelSponsorship + """ + input: CancelSponsorshipInput! + ): CancelSponsorshipPayload + + """ + Update your status on GitHub. + """ + changeUserStatus( + """ + Parameters for ChangeUserStatus + """ + input: ChangeUserStatusInput! + ): ChangeUserStatusPayload + + """ + Clears all labels from a labelable object. + """ + clearLabelsFromLabelable( + """ + Parameters for ClearLabelsFromLabelable + """ + input: ClearLabelsFromLabelableInput! + ): ClearLabelsFromLabelablePayload + + """ + This mutation clears the value of a field for an item in a Project. Currently + only text, number, date, assignees, labels, single-select, iteration and + milestone fields are supported. + """ + clearProjectV2ItemFieldValue( + """ + Parameters for ClearProjectV2ItemFieldValue + """ + input: ClearProjectV2ItemFieldValueInput! + ): ClearProjectV2ItemFieldValuePayload + + """ + Creates a new project by cloning configuration from an existing project. + """ + cloneProject( + """ + Parameters for CloneProject + """ + input: CloneProjectInput! + ): CloneProjectPayload + + """ + Create a new repository with the same files and directory structure as a template repository. + """ + cloneTemplateRepository( + """ + Parameters for CloneTemplateRepository + """ + input: CloneTemplateRepositoryInput! + ): CloneTemplateRepositoryPayload + + """ + Close a discussion. + """ + closeDiscussion( + """ + Parameters for CloseDiscussion + """ + input: CloseDiscussionInput! + ): CloseDiscussionPayload + + """ + Close an issue. + """ + closeIssue( + """ + Parameters for CloseIssue + """ + input: CloseIssueInput! + ): CloseIssuePayload + + """ + Close a pull request. + """ + closePullRequest( + """ + Parameters for ClosePullRequest + """ + input: ClosePullRequestInput! + ): ClosePullRequestPayload + + """ + Convert a project note card to one associated with a newly created issue. + """ + convertProjectCardNoteToIssue( + """ + Parameters for ConvertProjectCardNoteToIssue + """ + input: ConvertProjectCardNoteToIssueInput! + ): ConvertProjectCardNoteToIssuePayload + + """ + Converts a pull request to draft + """ + convertPullRequestToDraft( + """ + Parameters for ConvertPullRequestToDraft + """ + input: ConvertPullRequestToDraftInput! + ): ConvertPullRequestToDraftPayload + + """ + Copy a project. + """ + copyProjectV2( + """ + Parameters for CopyProjectV2 + """ + input: CopyProjectV2Input! + ): CopyProjectV2Payload + + """ + Invites a user to claim reattributable data + """ + createAttributionInvitation( + """ + Parameters for CreateAttributionInvitation + """ + input: CreateAttributionInvitationInput! + ): CreateAttributionInvitationPayload + + """ + Create a new branch protection rule + """ + createBranchProtectionRule( + """ + Parameters for CreateBranchProtectionRule + """ + input: CreateBranchProtectionRuleInput! + ): CreateBranchProtectionRulePayload + + """ + Create a check run. + """ + createCheckRun( + """ + Parameters for CreateCheckRun + """ + input: CreateCheckRunInput! + ): CreateCheckRunPayload + + """ + Create a check suite + """ + createCheckSuite( + """ + Parameters for CreateCheckSuite + """ + input: CreateCheckSuiteInput! + ): CreateCheckSuitePayload + + """ + Appends a commit to the given branch as the authenticated user. + + This mutation creates a commit whose parent is the HEAD of the provided + branch and also updates that branch to point to the new commit. + It can be thought of as similar to `git commit`. + + ### Locating a Branch + + Commits are appended to a `branch` of type `Ref`. + This must refer to a git branch (i.e. the fully qualified path must + begin with `refs/heads/`, although including this prefix is optional. + + Callers may specify the `branch` to commit to either by its global node + ID or by passing both of `repositoryNameWithOwner` and `refName`. For + more details see the documentation for `CommittableBranch`. + + ### Describing Changes + + `fileChanges` are specified as a `FilesChanges` object describing + `FileAdditions` and `FileDeletions`. + + Please see the documentation for `FileChanges` for more information on + how to use this argument to describe any set of file changes. + + ### Authorship + + Similar to the web commit interface, this mutation does not support + specifying the author or committer of the commit and will not add + support for this in the future. + + A commit created by a successful execution of this mutation will be + authored by the owner of the credential which authenticates the API + request. The committer will be identical to that of commits authored + using the web interface. + + If you need full control over author and committer information, please + use the Git Database REST API instead. + + ### Commit Signing + + Commits made using this mutation are automatically signed by GitHub if + supported and will be marked as verified in the user interface. + """ + createCommitOnBranch( + """ + Parameters for CreateCommitOnBranch + """ + input: CreateCommitOnBranchInput! + ): CreateCommitOnBranchPayload + + """ + Creates a new deployment event. + """ + createDeployment( + """ + Parameters for CreateDeployment + """ + input: CreateDeploymentInput! + ): CreateDeploymentPayload @preview(toggledBy: "flash-preview") + + """ + Create a deployment status. + """ + createDeploymentStatus( + """ + Parameters for CreateDeploymentStatus + """ + input: CreateDeploymentStatusInput! + ): CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") + + """ + Create a discussion. + """ + createDiscussion( + """ + Parameters for CreateDiscussion + """ + input: CreateDiscussionInput! + ): CreateDiscussionPayload + + """ + Creates an organization as part of an enterprise account. + """ + createEnterpriseOrganization( + """ + Parameters for CreateEnterpriseOrganization + """ + input: CreateEnterpriseOrganizationInput! + ): CreateEnterpriseOrganizationPayload + + """ + Creates an environment or simply returns it if already exists. + """ + createEnvironment( + """ + Parameters for CreateEnvironment + """ + input: CreateEnvironmentInput! + ): CreateEnvironmentPayload + + """ + Creates a new IP allow list entry. + """ + createIpAllowListEntry( + """ + Parameters for CreateIpAllowListEntry + """ + input: CreateIpAllowListEntryInput! + ): CreateIpAllowListEntryPayload + + """ + Creates a new issue. + """ + createIssue( + """ + Parameters for CreateIssue + """ + input: CreateIssueInput! + ): CreateIssuePayload + + """ + Creates a new label. + """ + createLabel( + """ + Parameters for CreateLabel + """ + input: CreateLabelInput! + ): CreateLabelPayload @preview(toggledBy: "bane-preview") + + """ + Create a branch linked to an issue. + """ + createLinkedBranch( + """ + Parameters for CreateLinkedBranch + """ + input: CreateLinkedBranchInput! + ): CreateLinkedBranchPayload + + """ + Creates a GitHub Enterprise Importer (GEI) migration source. + """ + createMigrationSource( + """ + Parameters for CreateMigrationSource + """ + input: CreateMigrationSourceInput! + ): CreateMigrationSourcePayload + + """ + Creates a new project. + """ + createProject( + """ + Parameters for CreateProject + """ + input: CreateProjectInput! + ): CreateProjectPayload + + """ + Creates a new project. + """ + createProjectV2( + """ + Parameters for CreateProjectV2 + """ + input: CreateProjectV2Input! + ): CreateProjectV2Payload + + """ + Create a new project field. + """ + createProjectV2Field( + """ + Parameters for CreateProjectV2Field + """ + input: CreateProjectV2FieldInput! + ): CreateProjectV2FieldPayload + + """ + Create a new pull request + """ + createPullRequest( + """ + Parameters for CreatePullRequest + """ + input: CreatePullRequestInput! + ): CreatePullRequestPayload + + """ + Create a new Git Ref. + """ + createRef( + """ + Parameters for CreateRef + """ + input: CreateRefInput! + ): CreateRefPayload + + """ + Create a new repository. + """ + createRepository( + """ + Parameters for CreateRepository + """ + input: CreateRepositoryInput! + ): CreateRepositoryPayload + + """ + Create a repository ruleset + """ + createRepositoryRuleset( + """ + Parameters for CreateRepositoryRuleset + """ + input: CreateRepositoryRulesetInput! + ): CreateRepositoryRulesetPayload + + """ + Create a GitHub Sponsors profile to allow others to sponsor you or your organization. + """ + createSponsorsListing( + """ + Parameters for CreateSponsorsListing + """ + input: CreateSponsorsListingInput! + ): CreateSponsorsListingPayload + + """ + Create a new payment tier for your GitHub Sponsors profile. + """ + createSponsorsTier( + """ + Parameters for CreateSponsorsTier + """ + input: CreateSponsorsTierInput! + ): CreateSponsorsTierPayload + + """ + Start a new sponsorship of a maintainer in GitHub Sponsors, or reactivate a past sponsorship. + """ + createSponsorship( + """ + Parameters for CreateSponsorship + """ + input: CreateSponsorshipInput! + ): CreateSponsorshipPayload + + """ + Make many one-time sponsorships for different sponsorable users or + organizations at once. Can only sponsor those who have a public GitHub + Sponsors profile. + """ + createSponsorships( + """ + Parameters for CreateSponsorships + """ + input: CreateSponsorshipsInput! + ): CreateSponsorshipsPayload + + """ + Creates a new team discussion. + """ + createTeamDiscussion( + """ + Parameters for CreateTeamDiscussion + """ + input: CreateTeamDiscussionInput! + ): CreateTeamDiscussionPayload + + """ + Creates a new team discussion comment. + """ + createTeamDiscussionComment( + """ + Parameters for CreateTeamDiscussionComment + """ + input: CreateTeamDiscussionCommentInput! + ): CreateTeamDiscussionCommentPayload + + """ + Rejects a suggested topic for the repository. + """ + declineTopicSuggestion( + """ + Parameters for DeclineTopicSuggestion + """ + input: DeclineTopicSuggestionInput! + ): DeclineTopicSuggestionPayload + + """ + Delete a branch protection rule + """ + deleteBranchProtectionRule( + """ + Parameters for DeleteBranchProtectionRule + """ + input: DeleteBranchProtectionRuleInput! + ): DeleteBranchProtectionRulePayload + + """ + Deletes a deployment. + """ + deleteDeployment( + """ + Parameters for DeleteDeployment + """ + input: DeleteDeploymentInput! + ): DeleteDeploymentPayload + + """ + Delete a discussion and all of its replies. + """ + deleteDiscussion( + """ + Parameters for DeleteDiscussion + """ + input: DeleteDiscussionInput! + ): DeleteDiscussionPayload + + """ + Delete a discussion comment. If it has replies, wipe it instead. + """ + deleteDiscussionComment( + """ + Parameters for DeleteDiscussionComment + """ + input: DeleteDiscussionCommentInput! + ): DeleteDiscussionCommentPayload + + """ + Deletes an environment + """ + deleteEnvironment( + """ + Parameters for DeleteEnvironment + """ + input: DeleteEnvironmentInput! + ): DeleteEnvironmentPayload + + """ + Deletes an IP allow list entry. + """ + deleteIpAllowListEntry( + """ + Parameters for DeleteIpAllowListEntry + """ + input: DeleteIpAllowListEntryInput! + ): DeleteIpAllowListEntryPayload + + """ + Deletes an Issue object. + """ + deleteIssue( + """ + Parameters for DeleteIssue + """ + input: DeleteIssueInput! + ): DeleteIssuePayload + + """ + Deletes an IssueComment object. + """ + deleteIssueComment( + """ + Parameters for DeleteIssueComment + """ + input: DeleteIssueCommentInput! + ): DeleteIssueCommentPayload + + """ + Deletes a label. + """ + deleteLabel( + """ + Parameters for DeleteLabel + """ + input: DeleteLabelInput! + ): DeleteLabelPayload @preview(toggledBy: "bane-preview") + + """ + Unlink a branch from an issue. + """ + deleteLinkedBranch( + """ + Parameters for DeleteLinkedBranch + """ + input: DeleteLinkedBranchInput! + ): DeleteLinkedBranchPayload + + """ + Delete a package version. + """ + deletePackageVersion( + """ + Parameters for DeletePackageVersion + """ + input: DeletePackageVersionInput! + ): DeletePackageVersionPayload @preview(toggledBy: "package-deletes-preview") + + """ + Deletes a project. + """ + deleteProject( + """ + Parameters for DeleteProject + """ + input: DeleteProjectInput! + ): DeleteProjectPayload + + """ + Deletes a project card. + """ + deleteProjectCard( + """ + Parameters for DeleteProjectCard + """ + input: DeleteProjectCardInput! + ): DeleteProjectCardPayload + + """ + Deletes a project column. + """ + deleteProjectColumn( + """ + Parameters for DeleteProjectColumn + """ + input: DeleteProjectColumnInput! + ): DeleteProjectColumnPayload + + """ + Delete a project. + """ + deleteProjectV2( + """ + Parameters for DeleteProjectV2 + """ + input: DeleteProjectV2Input! + ): DeleteProjectV2Payload + + """ + Delete a project field. + """ + deleteProjectV2Field( + """ + Parameters for DeleteProjectV2Field + """ + input: DeleteProjectV2FieldInput! + ): DeleteProjectV2FieldPayload + + """ + Deletes an item from a Project. + """ + deleteProjectV2Item( + """ + Parameters for DeleteProjectV2Item + """ + input: DeleteProjectV2ItemInput! + ): DeleteProjectV2ItemPayload + + """ + Deletes a project workflow. + """ + deleteProjectV2Workflow( + """ + Parameters for DeleteProjectV2Workflow + """ + input: DeleteProjectV2WorkflowInput! + ): DeleteProjectV2WorkflowPayload + + """ + Deletes a pull request review. + """ + deletePullRequestReview( + """ + Parameters for DeletePullRequestReview + """ + input: DeletePullRequestReviewInput! + ): DeletePullRequestReviewPayload + + """ + Deletes a pull request review comment. + """ + deletePullRequestReviewComment( + """ + Parameters for DeletePullRequestReviewComment + """ + input: DeletePullRequestReviewCommentInput! + ): DeletePullRequestReviewCommentPayload + + """ + Delete a Git Ref. + """ + deleteRef( + """ + Parameters for DeleteRef + """ + input: DeleteRefInput! + ): DeleteRefPayload + + """ + Delete a repository ruleset + """ + deleteRepositoryRuleset( + """ + Parameters for DeleteRepositoryRuleset + """ + input: DeleteRepositoryRulesetInput! + ): DeleteRepositoryRulesetPayload + + """ + Deletes a team discussion. + """ + deleteTeamDiscussion( + """ + Parameters for DeleteTeamDiscussion + """ + input: DeleteTeamDiscussionInput! + ): DeleteTeamDiscussionPayload + + """ + Deletes a team discussion comment. + """ + deleteTeamDiscussionComment( + """ + Parameters for DeleteTeamDiscussionComment + """ + input: DeleteTeamDiscussionCommentInput! + ): DeleteTeamDiscussionCommentPayload + + """ + Deletes a verifiable domain. + """ + deleteVerifiableDomain( + """ + Parameters for DeleteVerifiableDomain + """ + input: DeleteVerifiableDomainInput! + ): DeleteVerifiableDomainPayload + + """ + Remove a pull request from the merge queue. + """ + dequeuePullRequest( + """ + Parameters for DequeuePullRequest + """ + input: DequeuePullRequestInput! + ): DequeuePullRequestPayload + + """ + Disable auto merge on the given pull request + """ + disablePullRequestAutoMerge( + """ + Parameters for DisablePullRequestAutoMerge + """ + input: DisablePullRequestAutoMergeInput! + ): DisablePullRequestAutoMergePayload + + """ + Dismisses an approved or rejected pull request review. + """ + dismissPullRequestReview( + """ + Parameters for DismissPullRequestReview + """ + input: DismissPullRequestReviewInput! + ): DismissPullRequestReviewPayload + + """ + Dismisses the Dependabot alert. + """ + dismissRepositoryVulnerabilityAlert( + """ + Parameters for DismissRepositoryVulnerabilityAlert + """ + input: DismissRepositoryVulnerabilityAlertInput! + ): DismissRepositoryVulnerabilityAlertPayload + + """ + Enable the default auto-merge on a pull request. + """ + enablePullRequestAutoMerge( + """ + Parameters for EnablePullRequestAutoMerge + """ + input: EnablePullRequestAutoMergeInput! + ): EnablePullRequestAutoMergePayload + + """ + Add a pull request to the merge queue. + """ + enqueuePullRequest( + """ + Parameters for EnqueuePullRequest + """ + input: EnqueuePullRequestInput! + ): EnqueuePullRequestPayload + + """ + Follow an organization. + """ + followOrganization( + """ + Parameters for FollowOrganization + """ + input: FollowOrganizationInput! + ): FollowOrganizationPayload + + """ + Follow a user. + """ + followUser( + """ + Parameters for FollowUser + """ + input: FollowUserInput! + ): FollowUserPayload + + """ + Grant the migrator role to a user for all organizations under an enterprise account. + """ + grantEnterpriseOrganizationsMigratorRole( + """ + Parameters for GrantEnterpriseOrganizationsMigratorRole + """ + input: GrantEnterpriseOrganizationsMigratorRoleInput! + ): GrantEnterpriseOrganizationsMigratorRolePayload + + """ + Grant the migrator role to a user or a team. + """ + grantMigratorRole( + """ + Parameters for GrantMigratorRole + """ + input: GrantMigratorRoleInput! + ): GrantMigratorRolePayload + + """ + Creates a new project by importing columns and a list of issues/PRs. + """ + importProject( + """ + Parameters for ImportProject + """ + input: ImportProjectInput! + ): ImportProjectPayload @preview(toggledBy: "slothette-preview") + + """ + Invite someone to become an administrator of the enterprise. + """ + inviteEnterpriseAdmin( + """ + Parameters for InviteEnterpriseAdmin + """ + input: InviteEnterpriseAdminInput! + ): InviteEnterpriseAdminPayload + + """ + Links a project to a repository. + """ + linkProjectV2ToRepository( + """ + Parameters for LinkProjectV2ToRepository + """ + input: LinkProjectV2ToRepositoryInput! + ): LinkProjectV2ToRepositoryPayload + + """ + Links a project to a team. + """ + linkProjectV2ToTeam( + """ + Parameters for LinkProjectV2ToTeam + """ + input: LinkProjectV2ToTeamInput! + ): LinkProjectV2ToTeamPayload + + """ + Creates a repository link for a project. + """ + linkRepositoryToProject( + """ + Parameters for LinkRepositoryToProject + """ + input: LinkRepositoryToProjectInput! + ): LinkRepositoryToProjectPayload + + """ + Lock a lockable object + """ + lockLockable( + """ + Parameters for LockLockable + """ + input: LockLockableInput! + ): LockLockablePayload + + """ + Mark a discussion comment as the chosen answer for discussions in an answerable category. + """ + markDiscussionCommentAsAnswer( + """ + Parameters for MarkDiscussionCommentAsAnswer + """ + input: MarkDiscussionCommentAsAnswerInput! + ): MarkDiscussionCommentAsAnswerPayload + + """ + Mark a pull request file as viewed + """ + markFileAsViewed( + """ + Parameters for MarkFileAsViewed + """ + input: MarkFileAsViewedInput! + ): MarkFileAsViewedPayload + + """ + Mark a project as a template. Note that only projects which are owned by an Organization can be marked as a template. + """ + markProjectV2AsTemplate( + """ + Parameters for MarkProjectV2AsTemplate + """ + input: MarkProjectV2AsTemplateInput! + ): MarkProjectV2AsTemplatePayload + + """ + Marks a pull request ready for review. + """ + markPullRequestReadyForReview( + """ + Parameters for MarkPullRequestReadyForReview + """ + input: MarkPullRequestReadyForReviewInput! + ): MarkPullRequestReadyForReviewPayload + + """ + Merge a head into a branch. + """ + mergeBranch( + """ + Parameters for MergeBranch + """ + input: MergeBranchInput! + ): MergeBranchPayload + + """ + Merge a pull request. + """ + mergePullRequest( + """ + Parameters for MergePullRequest + """ + input: MergePullRequestInput! + ): MergePullRequestPayload + + """ + Minimizes a comment on an Issue, Commit, Pull Request, or Gist + """ + minimizeComment( + """ + Parameters for MinimizeComment + """ + input: MinimizeCommentInput! + ): MinimizeCommentPayload + + """ + Moves a project card to another place. + """ + moveProjectCard( + """ + Parameters for MoveProjectCard + """ + input: MoveProjectCardInput! + ): MoveProjectCardPayload + + """ + Moves a project column to another place. + """ + moveProjectColumn( + """ + Parameters for MoveProjectColumn + """ + input: MoveProjectColumnInput! + ): MoveProjectColumnPayload + + """ + Pin an issue to a repository + """ + pinIssue( + """ + Parameters for PinIssue + """ + input: PinIssueInput! + ): PinIssuePayload + + """ + Publish an existing sponsorship tier that is currently still a draft to a GitHub Sponsors profile. + """ + publishSponsorsTier( + """ + Parameters for PublishSponsorsTier + """ + input: PublishSponsorsTierInput! + ): PublishSponsorsTierPayload + + """ + Regenerates the identity provider recovery codes for an enterprise + """ + regenerateEnterpriseIdentityProviderRecoveryCodes( + """ + Parameters for RegenerateEnterpriseIdentityProviderRecoveryCodes + """ + input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput! + ): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload + + """ + Regenerates a verifiable domain's verification token. + """ + regenerateVerifiableDomainToken( + """ + Parameters for RegenerateVerifiableDomainToken + """ + input: RegenerateVerifiableDomainTokenInput! + ): RegenerateVerifiableDomainTokenPayload + + """ + Reject all pending deployments under one or more environments + """ + rejectDeployments( + """ + Parameters for RejectDeployments + """ + input: RejectDeploymentsInput! + ): RejectDeploymentsPayload + + """ + Removes assignees from an assignable object. + """ + removeAssigneesFromAssignable( + """ + Parameters for RemoveAssigneesFromAssignable + """ + input: RemoveAssigneesFromAssignableInput! + ): RemoveAssigneesFromAssignablePayload + + """ + Removes an administrator from the enterprise. + """ + removeEnterpriseAdmin( + """ + Parameters for RemoveEnterpriseAdmin + """ + input: RemoveEnterpriseAdminInput! + ): RemoveEnterpriseAdminPayload + + """ + Removes the identity provider from an enterprise + """ + removeEnterpriseIdentityProvider( + """ + Parameters for RemoveEnterpriseIdentityProvider + """ + input: RemoveEnterpriseIdentityProviderInput! + ): RemoveEnterpriseIdentityProviderPayload + + """ + Removes a user from all organizations within the enterprise + """ + removeEnterpriseMember( + """ + Parameters for RemoveEnterpriseMember + """ + input: RemoveEnterpriseMemberInput! + ): RemoveEnterpriseMemberPayload + + """ + Removes an organization from the enterprise + """ + removeEnterpriseOrganization( + """ + Parameters for RemoveEnterpriseOrganization + """ + input: RemoveEnterpriseOrganizationInput! + ): RemoveEnterpriseOrganizationPayload + + """ + Removes a support entitlement from an enterprise member. + """ + removeEnterpriseSupportEntitlement( + """ + Parameters for RemoveEnterpriseSupportEntitlement + """ + input: RemoveEnterpriseSupportEntitlementInput! + ): RemoveEnterpriseSupportEntitlementPayload + + """ + Removes labels from a Labelable object. + """ + removeLabelsFromLabelable( + """ + Parameters for RemoveLabelsFromLabelable + """ + input: RemoveLabelsFromLabelableInput! + ): RemoveLabelsFromLabelablePayload + + """ + Removes outside collaborator from all repositories in an organization. + """ + removeOutsideCollaborator( + """ + Parameters for RemoveOutsideCollaborator + """ + input: RemoveOutsideCollaboratorInput! + ): RemoveOutsideCollaboratorPayload + + """ + Removes a reaction from a subject. + """ + removeReaction( + """ + Parameters for RemoveReaction + """ + input: RemoveReactionInput! + ): RemoveReactionPayload + + """ + Removes a star from a Starrable. + """ + removeStar( + """ + Parameters for RemoveStar + """ + input: RemoveStarInput! + ): RemoveStarPayload + + """ + Remove an upvote to a discussion or discussion comment. + """ + removeUpvote( + """ + Parameters for RemoveUpvote + """ + input: RemoveUpvoteInput! + ): RemoveUpvotePayload + + """ + Reopen a discussion. + """ + reopenDiscussion( + """ + Parameters for ReopenDiscussion + """ + input: ReopenDiscussionInput! + ): ReopenDiscussionPayload + + """ + Reopen a issue. + """ + reopenIssue( + """ + Parameters for ReopenIssue + """ + input: ReopenIssueInput! + ): ReopenIssuePayload + + """ + Reopen a pull request. + """ + reopenPullRequest( + """ + Parameters for ReopenPullRequest + """ + input: ReopenPullRequestInput! + ): ReopenPullRequestPayload + + """ + Set review requests on a pull request. + """ + requestReviews( + """ + Parameters for RequestReviews + """ + input: RequestReviewsInput! + ): RequestReviewsPayload + + """ + Rerequests an existing check suite. + """ + rerequestCheckSuite( + """ + Parameters for RerequestCheckSuite + """ + input: RerequestCheckSuiteInput! + ): RerequestCheckSuitePayload + + """ + Marks a review thread as resolved. + """ + resolveReviewThread( + """ + Parameters for ResolveReviewThread + """ + input: ResolveReviewThreadInput! + ): ResolveReviewThreadPayload + + """ + Retire a published payment tier from your GitHub Sponsors profile so it cannot be used to start new sponsorships. + """ + retireSponsorsTier( + """ + Parameters for RetireSponsorsTier + """ + input: RetireSponsorsTierInput! + ): RetireSponsorsTierPayload + + """ + Create a pull request that reverts the changes from a merged pull request. + """ + revertPullRequest( + """ + Parameters for RevertPullRequest + """ + input: RevertPullRequestInput! + ): RevertPullRequestPayload + + """ + Revoke the migrator role to a user for all organizations under an enterprise account. + """ + revokeEnterpriseOrganizationsMigratorRole( + """ + Parameters for RevokeEnterpriseOrganizationsMigratorRole + """ + input: RevokeEnterpriseOrganizationsMigratorRoleInput! + ): RevokeEnterpriseOrganizationsMigratorRolePayload + + """ + Revoke the migrator role from a user or a team. + """ + revokeMigratorRole( + """ + Parameters for RevokeMigratorRole + """ + input: RevokeMigratorRoleInput! + ): RevokeMigratorRolePayload + + """ + Creates or updates the identity provider for an enterprise. + """ + setEnterpriseIdentityProvider( + """ + Parameters for SetEnterpriseIdentityProvider + """ + input: SetEnterpriseIdentityProviderInput! + ): SetEnterpriseIdentityProviderPayload + + """ + Set an organization level interaction limit for an organization's public repositories. + """ + setOrganizationInteractionLimit( + """ + Parameters for SetOrganizationInteractionLimit + """ + input: SetOrganizationInteractionLimitInput! + ): SetOrganizationInteractionLimitPayload + + """ + Sets an interaction limit setting for a repository. + """ + setRepositoryInteractionLimit( + """ + Parameters for SetRepositoryInteractionLimit + """ + input: SetRepositoryInteractionLimitInput! + ): SetRepositoryInteractionLimitPayload + + """ + Set a user level interaction limit for an user's public repositories. + """ + setUserInteractionLimit( + """ + Parameters for SetUserInteractionLimit + """ + input: SetUserInteractionLimitInput! + ): SetUserInteractionLimitPayload + + """ + Starts a GitHub Enterprise Importer organization migration. + """ + startOrganizationMigration( + """ + Parameters for StartOrganizationMigration + """ + input: StartOrganizationMigrationInput! + ): StartOrganizationMigrationPayload + + """ + Starts a GitHub Enterprise Importer (GEI) repository migration. + """ + startRepositoryMigration( + """ + Parameters for StartRepositoryMigration + """ + input: StartRepositoryMigrationInput! + ): StartRepositoryMigrationPayload + + """ + Submits a pending pull request review. + """ + submitPullRequestReview( + """ + Parameters for SubmitPullRequestReview + """ + input: SubmitPullRequestReviewInput! + ): SubmitPullRequestReviewPayload + + """ + Transfer an organization from one enterprise to another enterprise. + """ + transferEnterpriseOrganization( + """ + Parameters for TransferEnterpriseOrganization + """ + input: TransferEnterpriseOrganizationInput! + ): TransferEnterpriseOrganizationPayload + + """ + Transfer an issue to a different repository + """ + transferIssue( + """ + Parameters for TransferIssue + """ + input: TransferIssueInput! + ): TransferIssuePayload + + """ + Unarchives a ProjectV2Item + """ + unarchiveProjectV2Item( + """ + Parameters for UnarchiveProjectV2Item + """ + input: UnarchiveProjectV2ItemInput! + ): UnarchiveProjectV2ItemPayload + + """ + Unarchives a repository. + """ + unarchiveRepository( + """ + Parameters for UnarchiveRepository + """ + input: UnarchiveRepositoryInput! + ): UnarchiveRepositoryPayload + + """ + Unfollow an organization. + """ + unfollowOrganization( + """ + Parameters for UnfollowOrganization + """ + input: UnfollowOrganizationInput! + ): UnfollowOrganizationPayload + + """ + Unfollow a user. + """ + unfollowUser( + """ + Parameters for UnfollowUser + """ + input: UnfollowUserInput! + ): UnfollowUserPayload + + """ + Unlinks a project from a repository. + """ + unlinkProjectV2FromRepository( + """ + Parameters for UnlinkProjectV2FromRepository + """ + input: UnlinkProjectV2FromRepositoryInput! + ): UnlinkProjectV2FromRepositoryPayload + + """ + Unlinks a project to a team. + """ + unlinkProjectV2FromTeam( + """ + Parameters for UnlinkProjectV2FromTeam + """ + input: UnlinkProjectV2FromTeamInput! + ): UnlinkProjectV2FromTeamPayload + + """ + Deletes a repository link from a project. + """ + unlinkRepositoryFromProject( + """ + Parameters for UnlinkRepositoryFromProject + """ + input: UnlinkRepositoryFromProjectInput! + ): UnlinkRepositoryFromProjectPayload + + """ + Unlock a lockable object + """ + unlockLockable( + """ + Parameters for UnlockLockable + """ + input: UnlockLockableInput! + ): UnlockLockablePayload + + """ + Unmark a discussion comment as the chosen answer for discussions in an answerable category. + """ + unmarkDiscussionCommentAsAnswer( + """ + Parameters for UnmarkDiscussionCommentAsAnswer + """ + input: UnmarkDiscussionCommentAsAnswerInput! + ): UnmarkDiscussionCommentAsAnswerPayload + + """ + Unmark a pull request file as viewed + """ + unmarkFileAsViewed( + """ + Parameters for UnmarkFileAsViewed + """ + input: UnmarkFileAsViewedInput! + ): UnmarkFileAsViewedPayload + + """ + Unmark an issue as a duplicate of another issue. + """ + unmarkIssueAsDuplicate( + """ + Parameters for UnmarkIssueAsDuplicate + """ + input: UnmarkIssueAsDuplicateInput! + ): UnmarkIssueAsDuplicatePayload + + """ + Unmark a project as a template. + """ + unmarkProjectV2AsTemplate( + """ + Parameters for UnmarkProjectV2AsTemplate + """ + input: UnmarkProjectV2AsTemplateInput! + ): UnmarkProjectV2AsTemplatePayload + + """ + Unminimizes a comment on an Issue, Commit, Pull Request, or Gist + """ + unminimizeComment( + """ + Parameters for UnminimizeComment + """ + input: UnminimizeCommentInput! + ): UnminimizeCommentPayload + + """ + Unpin a pinned issue from a repository + """ + unpinIssue( + """ + Parameters for UnpinIssue + """ + input: UnpinIssueInput! + ): UnpinIssuePayload + + """ + Marks a review thread as unresolved. + """ + unresolveReviewThread( + """ + Parameters for UnresolveReviewThread + """ + input: UnresolveReviewThreadInput! + ): UnresolveReviewThreadPayload + + """ + Update a branch protection rule + """ + updateBranchProtectionRule( + """ + Parameters for UpdateBranchProtectionRule + """ + input: UpdateBranchProtectionRuleInput! + ): UpdateBranchProtectionRulePayload + + """ + Update a check run + """ + updateCheckRun( + """ + Parameters for UpdateCheckRun + """ + input: UpdateCheckRunInput! + ): UpdateCheckRunPayload + + """ + Modifies the settings of an existing check suite + """ + updateCheckSuitePreferences( + """ + Parameters for UpdateCheckSuitePreferences + """ + input: UpdateCheckSuitePreferencesInput! + ): UpdateCheckSuitePreferencesPayload + + """ + Update a discussion + """ + updateDiscussion( + """ + Parameters for UpdateDiscussion + """ + input: UpdateDiscussionInput! + ): UpdateDiscussionPayload + + """ + Update the contents of a comment on a Discussion + """ + updateDiscussionComment( + """ + Parameters for UpdateDiscussionComment + """ + input: UpdateDiscussionCommentInput! + ): UpdateDiscussionCommentPayload + + """ + Updates the role of an enterprise administrator. + """ + updateEnterpriseAdministratorRole( + """ + Parameters for UpdateEnterpriseAdministratorRole + """ + input: UpdateEnterpriseAdministratorRoleInput! + ): UpdateEnterpriseAdministratorRolePayload + + """ + Sets whether private repository forks are enabled for an enterprise. + """ + updateEnterpriseAllowPrivateRepositoryForkingSetting( + """ + Parameters for UpdateEnterpriseAllowPrivateRepositoryForkingSetting + """ + input: UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput! + ): UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload + + """ + Sets the base repository permission for organizations in an enterprise. + """ + updateEnterpriseDefaultRepositoryPermissionSetting( + """ + Parameters for UpdateEnterpriseDefaultRepositoryPermissionSetting + """ + input: UpdateEnterpriseDefaultRepositoryPermissionSettingInput! + ): UpdateEnterpriseDefaultRepositoryPermissionSettingPayload + + """ + Sets whether organization members with admin permissions on a repository can change repository visibility. + """ + updateEnterpriseMembersCanChangeRepositoryVisibilitySetting( + """ + Parameters for UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting + """ + input: UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput! + ): UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload + + """ + Sets the members can create repositories setting for an enterprise. + """ + updateEnterpriseMembersCanCreateRepositoriesSetting( + """ + Parameters for UpdateEnterpriseMembersCanCreateRepositoriesSetting + """ + input: UpdateEnterpriseMembersCanCreateRepositoriesSettingInput! + ): UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload + + """ + Sets the members can delete issues setting for an enterprise. + """ + updateEnterpriseMembersCanDeleteIssuesSetting( + """ + Parameters for UpdateEnterpriseMembersCanDeleteIssuesSetting + """ + input: UpdateEnterpriseMembersCanDeleteIssuesSettingInput! + ): UpdateEnterpriseMembersCanDeleteIssuesSettingPayload + + """ + Sets the members can delete repositories setting for an enterprise. + """ + updateEnterpriseMembersCanDeleteRepositoriesSetting( + """ + Parameters for UpdateEnterpriseMembersCanDeleteRepositoriesSetting + """ + input: UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput! + ): UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload + + """ + Sets whether members can invite collaborators are enabled for an enterprise. + """ + updateEnterpriseMembersCanInviteCollaboratorsSetting( + """ + Parameters for UpdateEnterpriseMembersCanInviteCollaboratorsSetting + """ + input: UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput! + ): UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload + + """ + Sets whether or not an organization admin can make purchases. + """ + updateEnterpriseMembersCanMakePurchasesSetting( + """ + Parameters for UpdateEnterpriseMembersCanMakePurchasesSetting + """ + input: UpdateEnterpriseMembersCanMakePurchasesSettingInput! + ): UpdateEnterpriseMembersCanMakePurchasesSettingPayload + + """ + Sets the members can update protected branches setting for an enterprise. + """ + updateEnterpriseMembersCanUpdateProtectedBranchesSetting( + """ + Parameters for UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting + """ + input: UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput! + ): UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload + + """ + Sets the members can view dependency insights for an enterprise. + """ + updateEnterpriseMembersCanViewDependencyInsightsSetting( + """ + Parameters for UpdateEnterpriseMembersCanViewDependencyInsightsSetting + """ + input: UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput! + ): UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload + + """ + Sets whether organization projects are enabled for an enterprise. + """ + updateEnterpriseOrganizationProjectsSetting( + """ + Parameters for UpdateEnterpriseOrganizationProjectsSetting + """ + input: UpdateEnterpriseOrganizationProjectsSettingInput! + ): UpdateEnterpriseOrganizationProjectsSettingPayload + + """ + Updates the role of an enterprise owner with an organization. + """ + updateEnterpriseOwnerOrganizationRole( + """ + Parameters for UpdateEnterpriseOwnerOrganizationRole + """ + input: UpdateEnterpriseOwnerOrganizationRoleInput! + ): UpdateEnterpriseOwnerOrganizationRolePayload + + """ + Updates an enterprise's profile. + """ + updateEnterpriseProfile( + """ + Parameters for UpdateEnterpriseProfile + """ + input: UpdateEnterpriseProfileInput! + ): UpdateEnterpriseProfilePayload + + """ + Sets whether repository projects are enabled for a enterprise. + """ + updateEnterpriseRepositoryProjectsSetting( + """ + Parameters for UpdateEnterpriseRepositoryProjectsSetting + """ + input: UpdateEnterpriseRepositoryProjectsSettingInput! + ): UpdateEnterpriseRepositoryProjectsSettingPayload + + """ + Sets whether team discussions are enabled for an enterprise. + """ + updateEnterpriseTeamDiscussionsSetting( + """ + Parameters for UpdateEnterpriseTeamDiscussionsSetting + """ + input: UpdateEnterpriseTeamDiscussionsSettingInput! + ): UpdateEnterpriseTeamDiscussionsSettingPayload + + """ + Sets whether two factor authentication is required for all users in an enterprise. + """ + updateEnterpriseTwoFactorAuthenticationRequiredSetting( + """ + Parameters for UpdateEnterpriseTwoFactorAuthenticationRequiredSetting + """ + input: UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput! + ): UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload + + """ + Updates an environment. + """ + updateEnvironment( + """ + Parameters for UpdateEnvironment + """ + input: UpdateEnvironmentInput! + ): UpdateEnvironmentPayload + + """ + Sets whether an IP allow list is enabled on an owner. + """ + updateIpAllowListEnabledSetting( + """ + Parameters for UpdateIpAllowListEnabledSetting + """ + input: UpdateIpAllowListEnabledSettingInput! + ): UpdateIpAllowListEnabledSettingPayload + + """ + Updates an IP allow list entry. + """ + updateIpAllowListEntry( + """ + Parameters for UpdateIpAllowListEntry + """ + input: UpdateIpAllowListEntryInput! + ): UpdateIpAllowListEntryPayload + + """ + Sets whether IP allow list configuration for installed GitHub Apps is enabled on an owner. + """ + updateIpAllowListForInstalledAppsEnabledSetting( + """ + Parameters for UpdateIpAllowListForInstalledAppsEnabledSetting + """ + input: UpdateIpAllowListForInstalledAppsEnabledSettingInput! + ): UpdateIpAllowListForInstalledAppsEnabledSettingPayload + + """ + Updates an Issue. + """ + updateIssue( + """ + Parameters for UpdateIssue + """ + input: UpdateIssueInput! + ): UpdateIssuePayload + + """ + Updates an IssueComment object. + """ + updateIssueComment( + """ + Parameters for UpdateIssueComment + """ + input: UpdateIssueCommentInput! + ): UpdateIssueCommentPayload + + """ + Updates an existing label. + """ + updateLabel( + """ + Parameters for UpdateLabel + """ + input: UpdateLabelInput! + ): UpdateLabelPayload @preview(toggledBy: "bane-preview") + + """ + Update the setting to restrict notifications to only verified or approved domains available to an owner. + """ + updateNotificationRestrictionSetting( + """ + Parameters for UpdateNotificationRestrictionSetting + """ + input: UpdateNotificationRestrictionSettingInput! + ): UpdateNotificationRestrictionSettingPayload + + """ + Sets whether private repository forks are enabled for an organization. + """ + updateOrganizationAllowPrivateRepositoryForkingSetting( + """ + Parameters for UpdateOrganizationAllowPrivateRepositoryForkingSetting + """ + input: UpdateOrganizationAllowPrivateRepositoryForkingSettingInput! + ): UpdateOrganizationAllowPrivateRepositoryForkingSettingPayload + + """ + Sets whether contributors are required to sign off on web-based commits for repositories in an organization. + """ + updateOrganizationWebCommitSignoffSetting( + """ + Parameters for UpdateOrganizationWebCommitSignoffSetting + """ + input: UpdateOrganizationWebCommitSignoffSettingInput! + ): UpdateOrganizationWebCommitSignoffSettingPayload + + """ + Updates an existing project. + """ + updateProject( + """ + Parameters for UpdateProject + """ + input: UpdateProjectInput! + ): UpdateProjectPayload + + """ + Updates an existing project card. + """ + updateProjectCard( + """ + Parameters for UpdateProjectCard + """ + input: UpdateProjectCardInput! + ): UpdateProjectCardPayload + + """ + Updates an existing project column. + """ + updateProjectColumn( + """ + Parameters for UpdateProjectColumn + """ + input: UpdateProjectColumnInput! + ): UpdateProjectColumnPayload + + """ + Updates an existing project (beta). + """ + updateProjectV2( + """ + Parameters for UpdateProjectV2 + """ + input: UpdateProjectV2Input! + ): UpdateProjectV2Payload + + """ + Update the collaborators on a team or a project + """ + updateProjectV2Collaborators( + """ + Parameters for UpdateProjectV2Collaborators + """ + input: UpdateProjectV2CollaboratorsInput! + ): UpdateProjectV2CollaboratorsPayload + + """ + Updates a draft issue within a Project. + """ + updateProjectV2DraftIssue( + """ + Parameters for UpdateProjectV2DraftIssue + """ + input: UpdateProjectV2DraftIssueInput! + ): UpdateProjectV2DraftIssuePayload + + """ + This mutation updates the value of a field for an item in a Project. Currently + only single-select, text, number, date, and iteration fields are supported. + """ + updateProjectV2ItemFieldValue( + """ + Parameters for UpdateProjectV2ItemFieldValue + """ + input: UpdateProjectV2ItemFieldValueInput! + ): UpdateProjectV2ItemFieldValuePayload + + """ + This mutation updates the position of the item in the project, where the position represents the priority of an item. + """ + updateProjectV2ItemPosition( + """ + Parameters for UpdateProjectV2ItemPosition + """ + input: UpdateProjectV2ItemPositionInput! + ): UpdateProjectV2ItemPositionPayload + + """ + Update a pull request + """ + updatePullRequest( + """ + Parameters for UpdatePullRequest + """ + input: UpdatePullRequestInput! + ): UpdatePullRequestPayload + + """ + Merge or Rebase HEAD from upstream branch into pull request branch + """ + updatePullRequestBranch( + """ + Parameters for UpdatePullRequestBranch + """ + input: UpdatePullRequestBranchInput! + ): UpdatePullRequestBranchPayload + + """ + Updates the body of a pull request review. + """ + updatePullRequestReview( + """ + Parameters for UpdatePullRequestReview + """ + input: UpdatePullRequestReviewInput! + ): UpdatePullRequestReviewPayload + + """ + Updates a pull request review comment. + """ + updatePullRequestReviewComment( + """ + Parameters for UpdatePullRequestReviewComment + """ + input: UpdatePullRequestReviewCommentInput! + ): UpdatePullRequestReviewCommentPayload + + """ + Update a Git Ref. + """ + updateRef( + """ + Parameters for UpdateRef + """ + input: UpdateRefInput! + ): UpdateRefPayload + + """ + Creates, updates and/or deletes multiple refs in a repository. + + This mutation takes a list of `RefUpdate`s and performs these updates + on the repository. All updates are performed atomically, meaning that + if one of them is rejected, no other ref will be modified. + + `RefUpdate.beforeOid` specifies that the given reference needs to point + to the given value before performing any updates. A value of + `0000000000000000000000000000000000000000` can be used to verify that + the references should not exist. + + `RefUpdate.afterOid` specifies the value that the given reference + will point to after performing all updates. A value of + `0000000000000000000000000000000000000000` can be used to delete a + reference. + + If `RefUpdate.force` is set to `true`, a non-fast-forward updates + for the given reference will be allowed. + """ + updateRefs( + """ + Parameters for UpdateRefs + """ + input: UpdateRefsInput! + ): UpdateRefsPayload @preview(toggledBy: "update-refs-preview") + + """ + Update information about a repository. + """ + updateRepository( + """ + Parameters for UpdateRepository + """ + input: UpdateRepositoryInput! + ): UpdateRepositoryPayload + + """ + Update a repository ruleset + """ + updateRepositoryRuleset( + """ + Parameters for UpdateRepositoryRuleset + """ + input: UpdateRepositoryRulesetInput! + ): UpdateRepositoryRulesetPayload + + """ + Sets whether contributors are required to sign off on web-based commits for a repository. + """ + updateRepositoryWebCommitSignoffSetting( + """ + Parameters for UpdateRepositoryWebCommitSignoffSetting + """ + input: UpdateRepositoryWebCommitSignoffSettingInput! + ): UpdateRepositoryWebCommitSignoffSettingPayload + + """ + Change visibility of your sponsorship and opt in or out of email updates from the maintainer. + """ + updateSponsorshipPreferences( + """ + Parameters for UpdateSponsorshipPreferences + """ + input: UpdateSponsorshipPreferencesInput! + ): UpdateSponsorshipPreferencesPayload + + """ + Updates the state for subscribable subjects. + """ + updateSubscription( + """ + Parameters for UpdateSubscription + """ + input: UpdateSubscriptionInput! + ): UpdateSubscriptionPayload + + """ + Updates a team discussion. + """ + updateTeamDiscussion( + """ + Parameters for UpdateTeamDiscussion + """ + input: UpdateTeamDiscussionInput! + ): UpdateTeamDiscussionPayload + + """ + Updates a discussion comment. + """ + updateTeamDiscussionComment( + """ + Parameters for UpdateTeamDiscussionComment + """ + input: UpdateTeamDiscussionCommentInput! + ): UpdateTeamDiscussionCommentPayload + + """ + Updates team review assignment. + """ + updateTeamReviewAssignment( + """ + Parameters for UpdateTeamReviewAssignment + """ + input: UpdateTeamReviewAssignmentInput! + ): UpdateTeamReviewAssignmentPayload @preview(toggledBy: "stone-crop-preview") + + """ + Update team repository. + """ + updateTeamsRepository( + """ + Parameters for UpdateTeamsRepository + """ + input: UpdateTeamsRepositoryInput! + ): UpdateTeamsRepositoryPayload + + """ + Replaces the repository's topics with the given topics. + """ + updateTopics( + """ + Parameters for UpdateTopics + """ + input: UpdateTopicsInput! + ): UpdateTopicsPayload + + """ + Verify that a verifiable domain has the expected DNS record. + """ + verifyVerifiableDomain( + """ + Parameters for VerifyVerifiableDomain + """ + input: VerifyVerifiableDomainInput! + ): VerifyVerifiableDomainPayload +} + +""" +An object with an ID. +""" +interface Node { + """ + ID of the object. + """ + id: ID! +} + +""" +The possible values for the notification restriction setting. +""" +enum NotificationRestrictionSettingValue { + """ + The setting is disabled for the owner. + """ + DISABLED + + """ + The setting is enabled for the owner. + """ + ENABLED +} + +""" +An OIDC identity provider configured to provision identities for an enterprise. +Visible to enterprise owners or enterprise owners' personal access tokens +(classic) with read:enterprise or admin:enterprise scope. +""" +type OIDCProvider implements Node { + """ + The enterprise this identity provider belongs to. + """ + enterprise: Enterprise + + """ + ExternalIdentities provisioned by this identity provider. + """ + externalIdentities( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter to external identities with the users login + """ + login: String + + """ + Filter to external identities with valid org membership only + """ + membersOnly: Boolean + + """ + Filter to external identities with the users userName/NameID attribute + """ + userName: String + ): ExternalIdentityConnection! + id: ID! + + """ + The OIDC identity provider type + """ + providerType: OIDCProviderType! + + """ + The id of the tenant this provider is attached to + """ + tenantId: String! +} + +""" +The OIDC identity provider type +""" +enum OIDCProviderType { + """ + Azure Active Directory + """ + AAD +} + +""" +Metadata for an audit entry with action oauth_application.* +""" +interface OauthApplicationAuditEntryData { + """ + The name of the OAuth application. + """ + oauthApplicationName: String + + """ + The HTTP path for the OAuth application + """ + oauthApplicationResourcePath: URI + + """ + The HTTP URL for the OAuth application + """ + oauthApplicationUrl: URI +} + +""" +Audit log entry for a oauth_application.create event. +""" +type OauthApplicationCreateAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The application URL of the OAuth application. + """ + applicationUrl: URI + + """ + The callback URL of the OAuth application. + """ + callbackUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The name of the OAuth application. + """ + oauthApplicationName: String + + """ + The HTTP path for the OAuth application + """ + oauthApplicationResourcePath: URI + + """ + The HTTP URL for the OAuth application + """ + oauthApplicationUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The rate limit of the OAuth application. + """ + rateLimit: Int + + """ + The state of the OAuth application. + """ + state: OauthApplicationCreateAuditEntryState + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The state of an OAuth application when it was created. +""" +enum OauthApplicationCreateAuditEntryState { + """ + The OAuth application was active and allowed to have OAuth Accesses. + """ + ACTIVE + + """ + The OAuth application was in the process of being deleted. + """ + PENDING_DELETION + + """ + The OAuth application was suspended from generating OAuth Accesses due to abuse or security concerns. + """ + SUSPENDED +} + +""" +The corresponding operation type for the action +""" +enum OperationType { + """ + An existing resource was accessed + """ + ACCESS + + """ + A resource performed an authentication event + """ + AUTHENTICATION + + """ + A new resource was created + """ + CREATE + + """ + An existing resource was modified + """ + MODIFY + + """ + An existing resource was removed + """ + REMOVE + + """ + An existing resource was restored + """ + RESTORE + + """ + An existing resource was transferred between multiple resources + """ + TRANSFER +} + +""" +Possible directions in which to order a list of items when provided an `orderBy` argument. +""" +enum OrderDirection { + """ + Specifies an ascending order for a given `orderBy` argument. + """ + ASC + + """ + Specifies a descending order for a given `orderBy` argument. + """ + DESC +} + +""" +Audit log entry for a org.add_billing_manager +""" +type OrgAddBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The email address used to invite a billing manager for the organization. + """ + invitationEmail: String + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.add_member +""" +type OrgAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The permission level of the member added to the organization. + """ + permission: OrgAddMemberAuditEntryPermission + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The permissions available to members on an Organization. +""" +enum OrgAddMemberAuditEntryPermission { + """ + Can read, clone, push, and add collaborators to repositories. + """ + ADMIN + + """ + Can read and clone repositories. + """ + READ +} + +""" +Audit log entry for a org.block_user +""" +type OrgBlockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The blocked user. + """ + blockedUser: User + + """ + The username of the blocked user. + """ + blockedUserName: String + + """ + The HTTP path for the blocked user. + """ + blockedUserResourcePath: URI + + """ + The HTTP URL for the blocked user. + """ + blockedUserUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.config.disable_collaborators_only event. +""" +type OrgConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.config.enable_collaborators_only event. +""" +type OrgConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.create event. +""" +type OrgCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The billing plan for the Organization. + """ + billingPlan: OrgCreateAuditEntryBillingPlan + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +The billing plans available for organizations. +""" +enum OrgCreateAuditEntryBillingPlan { + """ + Team Plan + """ + BUSINESS + + """ + Enterprise Cloud Plan + """ + BUSINESS_PLUS + + """ + Free Plan + """ + FREE + + """ + Tiered Per Seat Plan + """ + TIERED_PER_SEAT + + """ + Legacy Unlimited Plan + """ + UNLIMITED +} + +""" +Audit log entry for a org.disable_oauth_app_restrictions event. +""" +type OrgDisableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.disable_saml event. +""" +type OrgDisableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + + """ + The SAML provider's digest algorithm URL. + """ + digestMethodUrl: URI + id: ID! + + """ + The SAML provider's issuer URL. + """ + issuerUrl: URI + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String + + """ + The HTTP path for the organization + """ + organizationResourcePath: URI + + """ + The HTTP URL for the organization + """ + organizationUrl: URI + + """ + The SAML provider's signature algorithm URL. + """ + signatureMethodUrl: URI + + """ + The SAML provider's single sign-on URL. + """ + singleSignOnUrl: URI + + """ + The user affected by the action + """ + user: User + + """ + For actions involving two users, the actor is the initiator and the user is the affected user. + """ + userLogin: String + + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} + +""" +Audit log entry for a org.disable_two_factor_requirement event. +""" +type OrgDisableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! + + """ + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor + """ + actorIp: String + + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! + + """ + The corresponding operation type for the action + """ + operationType: OperationType + + """ + The Organization associated with the Audit Entry. + """ + organization: Organization + + """ + The name of the Organization. + """ + organizationName: String - """ - The search string to look for. - """ - query: String + """ + The HTTP path for the organization + """ + organizationResourcePath: URI - """ - The role to filter by. - """ - role: EnterpriseAdministratorRole - ): EnterpriseAdministratorInvitationConnection! + """ + The HTTP URL for the organization + """ + organizationUrl: URI """ - A list of pending collaborator invitations across the repositories in the enterprise. + The user affected by the action """ - pendingCollaboratorInvitations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 pending repository collaborator invitations returned from the connection. - """ - orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} +""" +Audit log entry for a org.enable_oauth_app_restrictions event. +""" +type OrgEnableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! - """ - The search string to look for. - """ - query: String - ): RepositoryInvitationConnection! + """ + The user who initiated the action + """ + actor: AuditEntryActor """ - A list of pending collaborators across the repositories in the enterprise. + The IP address of the actor """ - pendingCollaborators( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - """ - Ordering options for pending repository collaborator invitations returned from the connection. - """ - orderBy: RepositoryInvitationOrder = {field: CREATED_AT, direction: DESC} + """ + The HTTP URL for the actor. + """ + actorUrl: URI - """ - The search string to look for. - """ - query: String - ): EnterprisePendingCollaboratorConnection! @deprecated(reason: "Repository invitations can now be associated with an email, not only an invitee. Use the `pendingCollaboratorInvitations` field instead. Removal on 2020-10-01 UTC.") + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! """ - A list of pending member invitations for organizations in the enterprise. + The corresponding operation type for the action """ - pendingMemberInvitations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - """ - The search string to look for. - """ - query: String - ): EnterprisePendingMemberInvitationConnection! + """ + The HTTP URL for the organization + """ + organizationUrl: URI """ - The setting value for whether repository projects are enabled in this enterprise. + The user affected by the action """ - repositoryProjectsSetting: EnterpriseEnabledDisabledSettingValue! + user: User """ - A list of enterprise organizations configured with the provided repository projects setting value. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - repositoryProjectsSettingOrganizations( - """ - 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 org.enable_saml event. +""" +type OrgEnableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The user who initiated the action + """ + actor: AuditEntryActor - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! + """ + The IP address of the actor + """ + actorIp: String """ - The SAML Identity Provider for the enterprise. + A readable representation of the actor's location """ - samlIdentityProvider: EnterpriseIdentityProvider + actorLocation: ActorLocation """ - A list of enterprise organizations configured with the SAML single sign-on setting value. + The username of the user who initiated the action """ - samlIdentityProviderSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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! - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The SAML provider's digest algorithm URL. + """ + digestMethodUrl: URI + id: ID! - """ - The setting value to find organizations for. - """ - value: IdentityProviderConfigurationState! - ): OrganizationConnection! + """ + The SAML provider's issuer URL. + """ + issuerUrl: URI """ - A list of members with a support entitlement. + The corresponding operation type for the action """ - supportEntitlements( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 support entitlement users returned from the connection. - """ - orderBy: EnterpriseMemberOrder = {field: LOGIN, direction: ASC} - ): EnterpriseMemberConnection! + """ + The HTTP URL for the organization + """ + organizationUrl: URI """ - The setting value for whether team discussions are enabled for organizations in this enterprise. + The SAML provider's signature algorithm URL. """ - teamDiscussionsSetting: EnterpriseEnabledDisabledSettingValue! + signatureMethodUrl: URI """ - A list of enterprise organizations configured with the provided team discussions setting value. + The SAML provider's single sign-on URL. """ - teamDiscussionsSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + singleSignOnUrl: 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 organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The HTTP URL for the user. + """ + userUrl: URI +} - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! +""" +Audit log entry for a org.enable_two_factor_requirement event. +""" +type OrgEnableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { + """ + The action name + """ + action: String! """ - The setting value for whether the enterprise requires two-factor authentication for its organizations and users. + The user who initiated the action """ - twoFactorRequiredSetting: EnterpriseEnabledSettingValue! + actor: AuditEntryActor """ - A list of enterprise organizations configured with the two-factor authentication setting value. + The IP address of the actor """ - twoFactorRequiredSettingOrganizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - """ - Ordering options for organizations with this setting. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} + """ + The HTTP URL for the actor. + """ + actorUrl: URI - """ - The setting value to find organizations for. - """ - value: Boolean! - ): OrganizationConnection! -} + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! -""" -The connection type for User. -""" -type EnterprisePendingCollaboratorConnection { """ - A list of edges. + The corresponding operation type for the action """ - edges: [EnterprisePendingCollaboratorEdge] + operationType: OperationType """ - A list of nodes. + The Organization associated with the Audit Entry. """ - nodes: [User] + organization: Organization """ - Information to aid in pagination. + The name of the Organization. """ - pageInfo: PageInfo! + organizationName: String """ - Identifies the total count of items in the connection. + The HTTP path for the organization """ - totalCount: Int! -} + organizationResourcePath: URI -""" -A user with an invitation to be a collaborator on a repository owned by an organization in an enterprise. -""" -type EnterprisePendingCollaboratorEdge { """ - A cursor for use in pagination. + The HTTP URL for the organization """ - cursor: String! + organizationUrl: URI """ - Whether the invited collaborator does not have a license for the enterprise. + The user affected by the action """ - isUnlicensed: Boolean! @deprecated(reason: "All pending collaborators consume a license Removal on 2021-01-01 UTC.") + user: User """ - The item at the end of the edge. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - node: User + userLogin: String """ - The enterprise organization repositories this user is a member of. + The HTTP path for the user. """ - repositories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 +""" +Ordering options for an organization's enterprise owner connections. +""" +input OrgEnterpriseOwnerOrder { + """ + The ordering direction. + """ + direction: OrderDirection! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The field to order enterprise owners by. + """ + field: OrgEnterpriseOwnerOrderField! +} - """ - Ordering options for repositories. - """ - orderBy: RepositoryOrder = {field: NAME, direction: ASC} - ): EnterpriseRepositoryInfoConnection! +""" +Properties by which enterprise owners can be ordered. +""" +enum OrgEnterpriseOwnerOrderField { + """ + Order enterprise owners by login. + """ + LOGIN } """ -The connection type for OrganizationInvitation. +Audit log entry for a org.invite_member event. """ -type EnterprisePendingMemberInvitationConnection { +type OrgInviteMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A list of edges. + The action name """ - edges: [EnterprisePendingMemberInvitationEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [OrganizationInvitation] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! + actorLocation: ActorLocation """ - Identifies the total count of unique users in the connection. + The username of the user who initiated the action """ - totalUniqueUserCount: Int! -} + actorLogin: String -""" -An invitation to be a member in an enterprise organization. -""" -type EnterprisePendingMemberInvitationEdge { """ - A cursor for use in pagination. + The HTTP path for the actor. """ - cursor: String! + actorResourcePath: URI """ - Whether the invitation has a license for the enterprise. + The HTTP URL for the actor. """ - isUnlicensed: Boolean! @deprecated(reason: "All pending members consume a license Removal on 2020-07-01 UTC.") + actorUrl: URI """ - The item at the end of the edge. + The time the action was initiated """ - node: OrganizationInvitation -} + createdAt: PreciseDateTime! -""" -A subset of repository information queryable from an enterprise. -""" -type EnterpriseRepositoryInfo implements Node { + """ + The email address of the organization invitation. + """ + email: String id: ID! """ - Identifies if the repository is private or internal. + The corresponding operation type for the action """ - isPrivate: Boolean! + operationType: OperationType """ - The repository's name. + The Organization associated with the Audit Entry. """ - name: String! + organization: Organization """ - The repository's name with owner. + The organization invitation. """ - nameWithOwner: String! -} + organizationInvitation: OrganizationInvitation -""" -The connection type for EnterpriseRepositoryInfo. -""" -type EnterpriseRepositoryInfoConnection { """ - A list of edges. + The name of the Organization. """ - edges: [EnterpriseRepositoryInfoEdge] + organizationName: String """ - A list of nodes. + The HTTP path for the organization """ - nodes: [EnterpriseRepositoryInfo] + organizationResourcePath: URI """ - Information to aid in pagination. + The HTTP URL for the organization """ - pageInfo: PageInfo! + organizationUrl: URI """ - Identifies the total count of items in the connection. + The user affected by the action """ - totalCount: Int! -} + user: User -""" -An edge in a connection. -""" -type EnterpriseRepositoryInfoEdge { """ - A cursor for use in pagination. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - cursor: String! + userLogin: String """ - The item at the end of the edge. + The HTTP path for the user. """ - node: EnterpriseRepositoryInfo + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -An Enterprise Server installation. +Audit log entry for a org.invite_to_business event. """ -type EnterpriseServerInstallation implements Node { +type OrgInviteToBusinessAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ - Identifies the date and time when the object was created. + The action name """ - createdAt: DateTime! + action: String! """ - The customer name to which the Enterprise Server installation belongs. + The user who initiated the action """ - customerName: String! + actor: AuditEntryActor """ - The host name of the Enterprise Server installation. + The IP address of the actor """ - hostName: String! - id: ID! + actorIp: String """ - Whether or not the installation is connected to an Enterprise Server installation via GitHub Connect. + A readable representation of the actor's location """ - isConnected: Boolean! + actorLocation: ActorLocation """ - Identifies the date and time when the object was last updated. + The username of the user who initiated the action """ - updatedAt: DateTime! + actorLogin: String """ - User accounts on this Enterprise Server installation. + The HTTP path for the actor. """ - userAccounts( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int + actorResourcePath: URI - """ - Ordering options for Enterprise Server user accounts returned from the connection. - """ - orderBy: EnterpriseServerUserAccountOrder = {field: LOGIN, direction: ASC} - ): EnterpriseServerUserAccountConnection! + """ + The HTTP URL for the actor. + """ + actorUrl: URI """ - User accounts uploads for the Enterprise Server installation. + The time the action was initiated """ - userAccountsUploads( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + createdAt: PreciseDateTime! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The slug of the enterprise. + """ + enterpriseSlug: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI + id: ID! - """ - Ordering options for Enterprise Server user accounts uploads returned from the connection. - """ - orderBy: EnterpriseServerUserAccountsUploadOrder = {field: CREATED_AT, direction: DESC} - ): EnterpriseServerUserAccountsUploadConnection! -} + """ + The corresponding operation type for the action + """ + operationType: OperationType -""" -The connection type for EnterpriseServerInstallation. -""" -type EnterpriseServerInstallationConnection { """ - A list of edges. + The Organization associated with the Audit Entry. """ - edges: [EnterpriseServerInstallationEdge] + organization: Organization """ - A list of nodes. + The name of the Organization. """ - nodes: [EnterpriseServerInstallation] + organizationName: String """ - Information to aid in pagination. + The HTTP path for the organization """ - pageInfo: PageInfo! + organizationResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the organization """ - totalCount: Int! -} + organizationUrl: URI -""" -An edge in a connection. -""" -type EnterpriseServerInstallationEdge { """ - A cursor for use in pagination. + The user affected by the action """ - cursor: String! + user: User """ - The item at the end of the edge. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - node: EnterpriseServerInstallation -} + userLogin: String -""" -Ordering options for Enterprise Server installation connections. -""" -input EnterpriseServerInstallationOrder { """ - The ordering direction. + The HTTP path for the user. """ - direction: OrderDirection! + userResourcePath: URI """ - The field to order Enterprise Server installations by. + The HTTP URL for the user. """ - field: EnterpriseServerInstallationOrderField! + userUrl: URI } """ -Properties by which Enterprise Server installation connections can be ordered. +Audit log entry for a org.oauth_app_access_approved event. """ -enum EnterpriseServerInstallationOrderField { +type OrgOauthAppAccessApprovedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - Order Enterprise Server installations by creation time + The action name """ - CREATED_AT + action: String! """ - Order Enterprise Server installations by customer name + The user who initiated the action """ - CUSTOMER_NAME + actor: AuditEntryActor """ - Order Enterprise Server installations by host name + The IP address of the actor """ - HOST_NAME -} + actorIp: String -""" -A user account on an Enterprise Server installation. -""" -type EnterpriseServerUserAccount implements Node { """ - Identifies the date and time when the object was created. + A readable representation of the actor's location """ - createdAt: DateTime! + actorLocation: ActorLocation """ - User emails belonging to this user account. + The username of the user who initiated the action """ - emails( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 Enterprise Server user account emails returned from the connection. - """ - orderBy: EnterpriseServerUserAccountEmailOrder = {field: EMAIL, direction: ASC} - ): EnterpriseServerUserAccountEmailConnection! + """ + The name of the OAuth application. + """ + oauthApplicationName: String """ - The Enterprise Server installation on which this user account exists. + The HTTP path for the OAuth application """ - enterpriseServerInstallation: EnterpriseServerInstallation! - id: ID! + oauthApplicationResourcePath: URI """ - Whether the user account is a site administrator on the Enterprise Server installation. + The HTTP URL for the OAuth application """ - isSiteAdmin: Boolean! + oauthApplicationUrl: URI """ - The login of the user account on the Enterprise Server installation. + The corresponding operation type for the action """ - login: String! + operationType: OperationType """ - The profile name of the user account on the Enterprise Server installation. + The Organization associated with the Audit Entry. """ - profileName: String + organization: Organization """ - The date and time when the user account was created on the Enterprise Server installation. + The name of the Organization. """ - remoteCreatedAt: DateTime! + organizationName: String """ - The ID of the user account on the Enterprise Server installation. + The HTTP path for the organization """ - remoteUserId: Int! + organizationResourcePath: URI """ - Identifies the date and time when the object was last updated. + The HTTP URL for the organization """ - updatedAt: DateTime! -} + organizationUrl: URI -""" -The connection type for EnterpriseServerUserAccount. -""" -type EnterpriseServerUserAccountConnection { """ - A list of edges. + The user affected by the action """ - edges: [EnterpriseServerUserAccountEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [EnterpriseServerUserAccount] + userLogin: String """ - Information to aid in pagination. + The HTTP path for the user. """ - pageInfo: PageInfo! + userResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the user. """ - totalCount: Int! + userUrl: URI } """ -An edge in a connection. +Audit log entry for a org.oauth_app_access_blocked event. """ -type EnterpriseServerUserAccountEdge { +type OrgOauthAppAccessBlockedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - A cursor for use in pagination. + The action name """ - cursor: String! + action: String! """ - The item at the end of the edge. + The user who initiated the action """ - node: EnterpriseServerUserAccount -} + actor: AuditEntryActor -""" -An email belonging to a user account on an Enterprise Server installation. -""" -type EnterpriseServerUserAccountEmail implements Node { """ - Identifies the date and time when the object was created. + The IP address of the actor """ - createdAt: DateTime! + actorIp: String """ - The email address. + A readable representation of the actor's location """ - email: String! - id: ID! + actorLocation: ActorLocation """ - Indicates whether this is the primary email of the associated user account. + The username of the user who initiated the action """ - isPrimary: Boolean! + actorLogin: String """ - Identifies the date and time when the object was last updated. + The HTTP path for the actor. """ - updatedAt: DateTime! + actorResourcePath: URI """ - The user account to which the email belongs. + The HTTP URL for the actor. """ - userAccount: EnterpriseServerUserAccount! -} + actorUrl: URI -""" -The connection type for EnterpriseServerUserAccountEmail. -""" -type EnterpriseServerUserAccountEmailConnection { """ - A list of edges. + The time the action was initiated """ - edges: [EnterpriseServerUserAccountEmailEdge] + createdAt: PreciseDateTime! + id: ID! """ - A list of nodes. + The name of the OAuth application. """ - nodes: [EnterpriseServerUserAccountEmail] + oauthApplicationName: String """ - Information to aid in pagination. + The HTTP path for the OAuth application """ - pageInfo: PageInfo! + oauthApplicationResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the OAuth application """ - totalCount: Int! -} + oauthApplicationUrl: URI -""" -An edge in a connection. -""" -type EnterpriseServerUserAccountEmailEdge { """ - A cursor for use in pagination. + The corresponding operation type for the action """ - cursor: String! + operationType: OperationType """ - The item at the end of the edge. + The Organization associated with the Audit Entry. """ - node: EnterpriseServerUserAccountEmail -} + organization: Organization -""" -Ordering options for Enterprise Server user account email connections. -""" -input EnterpriseServerUserAccountEmailOrder { """ - The ordering direction. + The name of the Organization. """ - direction: OrderDirection! + organizationName: String """ - The field to order emails by. + The HTTP path for the organization """ - field: EnterpriseServerUserAccountEmailOrderField! -} + organizationResourcePath: URI -""" -Properties by which Enterprise Server user account email connections can be ordered. -""" -enum EnterpriseServerUserAccountEmailOrderField { """ - Order emails by email + The HTTP URL for the organization """ - EMAIL -} + organizationUrl: URI -""" -Ordering options for Enterprise Server user account connections. -""" -input EnterpriseServerUserAccountOrder { """ - The ordering direction. + The user affected by the action """ - direction: OrderDirection! + user: User """ - The field to order user accounts by. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - field: EnterpriseServerUserAccountOrderField! -} + userLogin: String -""" -Properties by which Enterprise Server user account connections can be ordered. -""" -enum EnterpriseServerUserAccountOrderField { """ - Order user accounts by login + The HTTP path for the user. """ - LOGIN + userResourcePath: URI """ - Order user accounts by creation time on the Enterprise Server installation + The HTTP URL for the user. """ - REMOTE_CREATED_AT + userUrl: URI } """ -A user accounts upload from an Enterprise Server installation. +Audit log entry for a org.oauth_app_access_denied event. """ -type EnterpriseServerUserAccountsUpload implements Node { +type OrgOauthAppAccessDeniedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - Identifies the date and time when the object was created. + The action name """ - createdAt: DateTime! + action: String! """ - The enterprise to which this upload belongs. + The user who initiated the action """ - enterprise: Enterprise! + actor: AuditEntryActor """ - The Enterprise Server installation for which this upload was generated. + The IP address of the actor """ - enterpriseServerInstallation: EnterpriseServerInstallation! - id: ID! + actorIp: String """ - The name of the file uploaded. + A readable representation of the actor's location """ - name: String! + actorLocation: ActorLocation """ - The synchronization state of the upload + The username of the user who initiated the action """ - syncState: EnterpriseServerUserAccountsUploadSyncState! + actorLogin: String """ - Identifies the date and time when the object was last updated. + The HTTP path for the actor. """ - updatedAt: DateTime! -} + actorResourcePath: URI + + """ + The HTTP URL for the actor. + """ + actorUrl: URI + + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! -""" -The connection type for EnterpriseServerUserAccountsUpload. -""" -type EnterpriseServerUserAccountsUploadConnection { """ - A list of edges. + The name of the OAuth application. """ - edges: [EnterpriseServerUserAccountsUploadEdge] + oauthApplicationName: String """ - A list of nodes. + The HTTP path for the OAuth application """ - nodes: [EnterpriseServerUserAccountsUpload] + oauthApplicationResourcePath: URI """ - Information to aid in pagination. + The HTTP URL for the OAuth application """ - pageInfo: PageInfo! + oauthApplicationUrl: URI """ - Identifies the total count of items in the connection. + The corresponding operation type for the action """ - totalCount: Int! -} + operationType: OperationType -""" -An edge in a connection. -""" -type EnterpriseServerUserAccountsUploadEdge { """ - A cursor for use in pagination. + The Organization associated with the Audit Entry. """ - cursor: String! + organization: Organization """ - The item at the end of the edge. + The name of the Organization. """ - node: EnterpriseServerUserAccountsUpload -} + organizationName: String -""" -Ordering options for Enterprise Server user accounts upload connections. -""" -input EnterpriseServerUserAccountsUploadOrder { """ - The ordering direction. + The HTTP path for the organization """ - direction: OrderDirection! + organizationResourcePath: URI """ - The field to order user accounts uploads by. + The HTTP URL for the organization """ - field: EnterpriseServerUserAccountsUploadOrderField! -} + organizationUrl: URI -""" -Properties by which Enterprise Server user accounts upload connections can be ordered. -""" -enum EnterpriseServerUserAccountsUploadOrderField { """ - Order user accounts uploads by creation time + The user affected by the action """ - CREATED_AT -} + user: User -""" -Synchronization state of the Enterprise Server user accounts upload -""" -enum EnterpriseServerUserAccountsUploadSyncState { """ - The synchronization of the upload failed. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - FAILURE + userLogin: String """ - The synchronization of the upload is pending. + The HTTP path for the user. """ - PENDING + userResourcePath: URI """ - The synchronization of the upload succeeded. + The HTTP URL for the user. """ - SUCCESS + userUrl: URI } """ -An account for a user who is an admin of an enterprise or a member of an enterprise through one or more organizations. +Audit log entry for a org.oauth_app_access_requested event. """ -type EnterpriseUserAccount implements Actor & Node { +type OrgOauthAppAccessRequestedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - A URL pointing to the enterprise user account's public avatar. + The action name """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + action: String! """ - Identifies the date and time when the object was created. + The user who initiated the action """ - createdAt: DateTime! + actor: AuditEntryActor """ - The enterprise in which this user account exists. + The IP address of the actor """ - enterprise: Enterprise! - id: ID! + actorIp: String """ - An identifier for the enterprise user account, a login or email address + A readable representation of the actor's location """ - login: String! + actorLocation: ActorLocation """ - The name of the enterprise user account + The username of the user who initiated the action """ - name: String + actorLogin: String """ - A list of enterprise organizations this user is a member of. + The HTTP path for the actor. """ - organizations( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for organizations returned from the connection. - """ - orderBy: OrganizationOrder = {field: LOGIN, direction: ASC} - - """ - The search string to look for. - """ - query: String - - """ - The role of the user in the enterprise organization. - """ - role: EnterpriseUserAccountMembershipRole - ): EnterpriseOrganizationMembershipConnection! + actorResourcePath: URI """ - The HTTP path for this user. + The HTTP URL for the actor. """ - resourcePath: URI! + actorUrl: URI """ - Identifies the date and time when the object was last updated. + The time the action was initiated """ - updatedAt: DateTime! + createdAt: PreciseDateTime! + id: ID! """ - The HTTP URL for this user. + The name of the OAuth application. """ - url: URI! + oauthApplicationName: String """ - The user within the enterprise. + The HTTP path for the OAuth application """ - user: User -} + oauthApplicationResourcePath: URI -""" -The connection type for EnterpriseUserAccount. -""" -type EnterpriseUserAccountConnection { """ - A list of edges. + The HTTP URL for the OAuth application """ - edges: [EnterpriseUserAccountEdge] + oauthApplicationUrl: URI """ - A list of nodes. + The corresponding operation type for the action """ - nodes: [EnterpriseUserAccount] + operationType: OperationType """ - Information to aid in pagination. + The Organization associated with the Audit Entry. """ - pageInfo: PageInfo! + organization: Organization """ - Identifies the total count of items in the connection. + The name of the Organization. """ - totalCount: Int! -} + organizationName: String -""" -An edge in a connection. -""" -type EnterpriseUserAccountEdge { """ - A cursor for use in pagination. + The HTTP path for the organization """ - cursor: String! + organizationResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the organization """ - node: EnterpriseUserAccount -} + organizationUrl: URI -""" -The possible roles for enterprise membership. -""" -enum EnterpriseUserAccountMembershipRole { """ - The user is a member of the enterprise membership. + The user affected by the action """ - MEMBER + user: User """ - The user is an owner of the enterprise membership. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - OWNER -} + userLogin: String -""" -The possible GitHub Enterprise deployments where this user can exist. -""" -enum EnterpriseUserDeployment { """ - The user is part of a GitHub Enterprise Cloud deployment. + The HTTP path for the user. """ - CLOUD + userResourcePath: URI """ - The user is part of a GitHub Enterprise Server deployment. + The HTTP URL for the user. """ - SERVER + userUrl: URI } """ -An external identity provisioned by SAML SSO or SCIM. +Audit log entry for a org.oauth_app_access_unblocked event. """ -type ExternalIdentity implements Node { +type OrgOauthAppAccessUnblockedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - The GUID for this identity - """ - guid: String! - id: ID! - - """ - Organization invitation for this SCIM-provisioned external identity - """ - organizationInvitation: OrganizationInvitation - - """ - SAML Identity attributes + The action name """ - samlIdentity: ExternalIdentitySamlAttributes + action: String! """ - SCIM Identity attributes + The user who initiated the action """ - scimIdentity: ExternalIdentityScimAttributes + actor: AuditEntryActor """ - User linked to this external identity. Will be NULL if this identity has not been claimed by an organization member. + The IP address of the actor """ - user: User -} + actorIp: String -""" -The connection type for ExternalIdentity. -""" -type ExternalIdentityConnection { """ - A list of edges. + A readable representation of the actor's location """ - edges: [ExternalIdentityEdge] + actorLocation: ActorLocation """ - A list of nodes. + The username of the user who initiated the action """ - nodes: [ExternalIdentity] + actorLogin: String """ - Information to aid in pagination. + The HTTP path for the actor. """ - pageInfo: PageInfo! + actorResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the actor. """ - totalCount: Int! -} + actorUrl: URI -""" -An edge in a connection. -""" -type ExternalIdentityEdge { """ - A cursor for use in pagination. + The time the action was initiated """ - cursor: String! + createdAt: PreciseDateTime! + id: ID! """ - The item at the end of the edge. + The name of the OAuth application. """ - node: ExternalIdentity -} + oauthApplicationName: String -""" -SAML attributes for the External Identity -""" -type ExternalIdentitySamlAttributes { """ - The emails associated with the SAML identity + The HTTP path for the OAuth application """ - emails: [UserEmailMetadata!] + oauthApplicationResourcePath: URI """ - Family name of the SAML identity + The HTTP URL for the OAuth application """ - familyName: String + oauthApplicationUrl: URI """ - Given name of the SAML identity + The corresponding operation type for the action """ - givenName: String + operationType: OperationType """ - The groups linked to this identity in IDP + The Organization associated with the Audit Entry. """ - groups: [String!] + organization: Organization """ - The NameID of the SAML identity + The name of the Organization. """ - nameId: String + organizationName: String """ - The userName of the SAML identity + The HTTP path for the organization """ - username: String -} + organizationResourcePath: URI -""" -SCIM attributes for the External Identity -""" -type ExternalIdentityScimAttributes { """ - The emails associated with the SCIM identity + The HTTP URL for the organization """ - emails: [UserEmailMetadata!] + organizationUrl: URI """ - Family name of the SCIM identity + The user affected by the action """ - familyName: String + user: User """ - Given name of the SCIM identity + For actions involving two users, the actor is the initiator and the user is the affected user. """ - givenName: String + userLogin: String """ - The groups linked to this identity in IDP + The HTTP path for the user. """ - groups: [String!] + userResourcePath: URI """ - The userName of the SCIM identity + The HTTP URL for the user. """ - username: String + userUrl: URI } """ -The possible viewed states of a file . +Audit log entry for a org.remove_billing_manager event. """ -enum FileViewedState { +type OrgRemoveBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The file has new changes since last viewed. + The action name """ - DISMISSED + action: String! """ - The file has not been marked as viewed. + The user who initiated the action """ - UNVIEWED + actor: AuditEntryActor """ - The file has been marked as viewed. + The IP address of the actor """ - VIEWED -} + actorIp: String -""" -Autogenerated input type of FollowUser -""" -input FollowUserInput { """ - A unique identifier for the client performing the mutation. + A readable representation of the actor's location """ - clientMutationId: String + actorLocation: ActorLocation """ - ID of the user to follow. + The username of the user who initiated the action """ - userId: ID! @possibleTypes(concreteTypes: ["User"]) -} + actorLogin: String -""" -Autogenerated return type of FollowUser -""" -type FollowUserPayload { """ - A unique identifier for the client performing the mutation. + The HTTP path for the actor. """ - clientMutationId: String + actorResourcePath: URI """ - The user that was followed. + The HTTP URL for the actor. """ - user: User -} + actorUrl: URI -""" -The connection type for User. -""" -type FollowerConnection { """ - A list of edges. + The time the action was initiated """ - edges: [UserEdge] + createdAt: PreciseDateTime! + id: ID! """ - A list of nodes. + The corresponding operation type for the action """ - nodes: [User] + operationType: OperationType """ - Information to aid in pagination. + The Organization associated with the Audit Entry. """ - pageInfo: PageInfo! + organization: Organization """ - Identifies the total count of items in the connection. + The name of the Organization. """ - totalCount: Int! -} + organizationName: String -""" -The connection type for User. -""" -type FollowingConnection { """ - A list of edges. + The HTTP path for the organization """ - edges: [UserEdge] + organizationResourcePath: URI """ - A list of nodes. + The HTTP URL for the organization """ - nodes: [User] + organizationUrl: URI """ - Information to aid in pagination. + The reason for the billing manager being removed. """ - pageInfo: PageInfo! + reason: OrgRemoveBillingManagerAuditEntryReason """ - Identifies the total count of items in the connection. + The user affected by the action """ - totalCount: Int! -} + user: User -""" -A funding platform link for a repository. -""" -type FundingLink { """ - The funding platform this link is for. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - platform: FundingPlatform! + userLogin: String """ - The configured URL for this funding link. + The HTTP path for the user. """ - url: URI! + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -The possible funding platforms for repository funding links. +The reason a billing manager was removed from an Organization. """ -enum FundingPlatform { +enum OrgRemoveBillingManagerAuditEntryReason { """ - Community Bridge funding platform. + SAML external identity missing """ - COMMUNITY_BRIDGE + SAML_EXTERNAL_IDENTITY_MISSING """ - Custom funding platform. + SAML SSO enforcement requires an external identity """ - CUSTOM + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY """ - GitHub funding platform. + The organization required 2FA of its billing managers and this user did not have 2FA enabled. """ - GITHUB + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE +} +""" +Audit log entry for a org.remove_member event. +""" +type OrgRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - IssueHunt funding platform. + The action name """ - ISSUEHUNT + action: String! """ - Ko-fi funding platform. + The user who initiated the action """ - KO_FI + actor: AuditEntryActor """ - Liberapay funding platform. + The IP address of the actor """ - LIBERAPAY + actorIp: String """ - Open Collective funding platform. + A readable representation of the actor's location """ - OPEN_COLLECTIVE + actorLocation: ActorLocation """ - Otechie funding platform. + The username of the user who initiated the action """ - OTECHIE + actorLogin: String """ - Patreon funding platform. + The HTTP path for the actor. """ - PATREON + actorResourcePath: URI """ - Tidelift funding platform. + The HTTP URL for the actor. """ - TIDELIFT -} + actorUrl: URI -""" -A generic hovercard context with a message and icon -""" -type GenericHovercardContext implements HovercardContext { """ - A string describing this context + The time the action was initiated """ - message: String! + createdAt: PreciseDateTime! + id: ID! """ - An octicon to accompany this context + The types of membership the member has with the organization. """ - octicon: String! -} + membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] -""" -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! + The corresponding operation type for the action + """ + operationType: OperationType """ - Identifies the date and time when the object was created. + The Organization associated with the Audit Entry. """ - createdAt: DateTime! + organization: Organization """ - The gist description. + The name of the Organization. """ - description: String + organizationName: String """ - The files in this gist. + The HTTP path for the organization """ - files( - """ - The maximum number of files to return. - """ - limit: Int = 10 - - """ - The oid of the files to return - """ - oid: GitObjectID - ): [GistFile] + organizationResourcePath: URI """ - A list of forks associated with the gist + The HTTP URL for the organization """ - 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! + organizationUrl: URI """ - Identifies if the gist is a fork. + The reason for the member being removed. """ - isFork: Boolean! + reason: OrgRemoveMemberAuditEntryReason """ - Whether the gist is public or not. + The user affected by the action """ - isPublic: Boolean! + user: User """ - The gist name. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - name: String! + userLogin: String """ - The gist owner. + The HTTP path for the user. """ - owner: RepositoryOwner + userResourcePath: URI """ - Identifies when the gist was last pushed to. + The HTTP URL for the user. """ - pushedAt: DateTime + userUrl: URI +} +""" +The type of membership a user has with an Organization. +""" +enum OrgRemoveMemberAuditEntryMembershipType { """ - The HTML path to this resource. + 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. """ - resourcePath: URI! + ADMIN """ - Returns a count of how many stargazers there are on this object + A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. """ - stargazerCount: Int! + BILLING_MANAGER """ - A list of users who have starred this starrable. + A direct member is a user that is a member of the Organization. """ - 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! + DIRECT_MEMBER """ - Identifies the date and time when the object was last updated. + 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. """ - updatedAt: DateTime! + OUTSIDE_COLLABORATOR """ - The HTTP URL for this Gist. + A suspended member. """ - url: URI! + SUSPENDED """ - Returns a boolean indicating whether the viewing user has starred this starrable. + 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. """ - viewerHasStarred: Boolean! + UNAFFILIATED } """ -Represents a comment on an Gist. +The reason a member was removed from an Organization. """ -type GistComment implements Comment & Deletable & Minimizable & Node & Updatable & UpdatableComment { +enum OrgRemoveMemberAuditEntryReason { """ - The actor who authored the comment. + SAML external identity missing """ - author: Actor + SAML_EXTERNAL_IDENTITY_MISSING """ - Author's association with the gist. + SAML SSO enforcement requires an external identity """ - authorAssociation: CommentAuthorAssociation! + SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY """ - Identifies the comment body. + User was removed from organization during account recovery """ - body: String! + TWO_FACTOR_ACCOUNT_RECOVERY """ - The body rendered to HTML. + The organization required 2FA of its billing managers and this user did not have 2FA enabled. """ - bodyHTML: HTML! + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE """ - The body rendered to text. + User account has been deleted """ - bodyText: String! + USER_ACCOUNT_DELETED +} +""" +Audit log entry for a org.remove_outside_collaborator event. +""" +type OrgRemoveOutsideCollaboratorAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - Identifies the date and time when the object was created. + The action name """ - createdAt: DateTime! + action: String! """ - Check if this comment was created via an email reply. + The user who initiated the action """ - createdViaEmail: Boolean! + actor: AuditEntryActor """ - Identifies the primary key from the database. + The IP address of the actor """ - databaseId: Int + actorIp: String """ - The actor who edited the comment. + A readable representation of the actor's location """ - editor: Actor + actorLocation: ActorLocation """ - The associated gist. + The username of the user who initiated the action """ - gist: Gist! - id: ID! + actorLogin: String """ - Check if this comment was edited and includes an edit with the creation data + The HTTP path for the actor. """ - includesCreatedEdit: Boolean! + actorResourcePath: URI """ - Returns whether or not a comment has been minimized. + The HTTP URL for the actor. """ - isMinimized: Boolean! + actorUrl: URI """ - The moment the editor made the last edit + The time the action was initiated """ - lastEditedAt: DateTime + createdAt: PreciseDateTime! + id: ID! """ - Returns why the comment was minimized. + The types of membership the outside collaborator has with the organization. """ - minimizedReason: String + membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] """ - Identifies when the comment was published at. + The corresponding operation type for the action """ - publishedAt: DateTime + operationType: OperationType """ - Identifies the date and time when the object was last updated. + The Organization associated with the Audit Entry. """ - updatedAt: DateTime! + organization: Organization """ - A list of edits to this content. + The name of the Organization. """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + 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 - ): UserContentEditConnection + """ + The HTTP URL for the organization + """ + organizationUrl: URI """ - Check if the current viewer can delete this object. + The reason for the outside collaborator being removed from the Organization. """ - viewerCanDelete: Boolean! + reason: OrgRemoveOutsideCollaboratorAuditEntryReason """ - Check if the current viewer can minimize this object. + The user affected by the action """ - viewerCanMinimize: Boolean! + user: User """ - Check if the current viewer can update this object. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanUpdate: Boolean! + userLogin: String """ - Reasons why the current viewer can not update this comment. + The HTTP path for the user. """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + userResourcePath: URI """ - Did the viewer author this comment. + The HTTP URL for the user. """ - viewerDidAuthor: Boolean! + userUrl: URI } """ -The connection type for GistComment. +The type of membership a user has with an Organization. """ -type GistCommentConnection { - """ - A list of edges. - """ - edges: [GistCommentEdge] - +enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType { """ - A list of nodes. + A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. """ - nodes: [GistComment] + BILLING_MANAGER """ - Information to aid in pagination. + 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. """ - pageInfo: PageInfo! + OUTSIDE_COLLABORATOR """ - Identifies the total count of items in the connection. + 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. """ - totalCount: Int! + UNAFFILIATED } """ -An edge in a connection. +The reason an outside collaborator was removed from an Organization. """ -type GistCommentEdge { +enum OrgRemoveOutsideCollaboratorAuditEntryReason { """ - A cursor for use in pagination. + SAML external identity missing """ - cursor: String! + SAML_EXTERNAL_IDENTITY_MISSING """ - The item at the end of the edge. + The organization required 2FA of its billing managers and this user did not have 2FA enabled. """ - node: GistComment + TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE } """ -The connection type for Gist. +Audit log entry for a org.restore_member event. """ -type GistConnection { +type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A list of edges. + The action name """ - edges: [GistEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [Gist] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! -} + actorLocation: ActorLocation -""" -An edge in a connection. -""" -type GistEdge { """ - A cursor for use in pagination. + The username of the user who initiated the action """ - cursor: String! + actorLogin: String """ - The item at the end of the edge. + The HTTP path for the actor. """ - node: Gist -} + actorResourcePath: URI -""" -A file in a gist. -""" -type GistFile { """ - The file name encoded to remove characters that are invalid in URL paths. + The HTTP URL for the actor. """ - encodedName: String + actorUrl: URI """ - The gist file encoding. + The time the action was initiated """ - encoding: String + createdAt: PreciseDateTime! + id: ID! """ - The file extension from the file name. + The corresponding operation type for the action """ - extension: String + operationType: OperationType """ - Indicates if this file is an image. + The Organization associated with the Audit Entry. """ - isImage: Boolean! + organization: Organization """ - Whether the file's contents were truncated. + The name of the Organization. """ - isTruncated: Boolean! + organizationName: String """ - The programming language this file is written in. + The HTTP path for the organization """ - language: Language + organizationResourcePath: URI """ - The gist file name. + The HTTP URL for the organization """ - name: String + organizationUrl: URI """ - The gist file size in bytes. + The number of custom email routings for the restored member. """ - size: Int + restoredCustomEmailRoutingsCount: Int """ - UTF8 text data or null if the file is binary + The number of issue assignments for the restored member. """ - text( - """ - Optionally truncate the returned file to this length. - """ - truncate: Int - ): String -} + restoredIssueAssignmentsCount: Int -""" -Ordering options for gist connections -""" -input GistOrder { """ - The ordering direction. + Restored organization membership objects. """ - direction: OrderDirection! + restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] """ - The field to order repositories by. + The number of restored memberships. """ - field: GistOrderField! -} + restoredMembershipsCount: Int -""" -Properties by which gist connections can be ordered. -""" -enum GistOrderField { """ - Order gists by creation time + The number of repositories of the restored member. """ - CREATED_AT + restoredRepositoriesCount: Int """ - Order gists by push time + The number of starred repositories for the restored member. """ - PUSHED_AT + restoredRepositoryStarsCount: Int """ - Order gists by update time + The number of watched repositories for the restored member. """ - UPDATED_AT -} + restoredRepositoryWatchesCount: Int -""" -The privacy of a Gist -""" -enum GistPrivacy { """ - Gists that are public and secret + The user affected by the action """ - ALL + user: User """ - Public + For actions involving two users, the actor is the initiator and the user is the affected user. """ - PUBLIC + userLogin: String """ - Secret + The HTTP path for the user. """ - SECRET + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -Represents an actor in a Git commit (ie. an author or committer). +Types of memberships that can be restored for an Organization member. """ -type GitActor { +union OrgRestoreMemberAuditEntryMembership = + OrgRestoreMemberMembershipOrganizationAuditEntryData + | OrgRestoreMemberMembershipRepositoryAuditEntryData + | OrgRestoreMemberMembershipTeamAuditEntryData + +""" +Metadata for an organization membership for org.restore_member actions +""" +type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData { """ - A URL pointing to the author's public avatar. + The Organization associated with the Audit Entry. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + organization: Organization """ - The timestamp of the Git action (authoring or committing). + The name of the Organization. """ - date: GitTimestamp + organizationName: String """ - The email in the Git commit. + The HTTP path for the organization """ - email: String + organizationResourcePath: URI """ - The name in the Git commit. + The HTTP URL for the organization """ - name: String + organizationUrl: URI +} +""" +Metadata for a repository membership for org.restore_member actions +""" +type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { """ - The GitHub user corresponding to the email field. Null if no such user exists. + The repository associated with the action """ - user: User + 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 connection type for GitActor. +Metadata for a team membership for org.restore_member actions """ -type GitActorConnection { +type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData { """ - A list of edges. + The team associated with the action """ - edges: [GitActorEdge] + team: Team """ - A list of nodes. + The name of the team """ - nodes: [GitActor] + teamName: String """ - Information to aid in pagination. + The HTTP path for this team """ - pageInfo: PageInfo! + teamResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for this team """ - totalCount: Int! + teamUrl: URI } """ -An edge in a connection. +Audit log entry for a org.unblock_user """ -type GitActorEdge { +type OrgUnblockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A cursor for use in pagination. + The action name """ - cursor: String! + action: String! """ - The item at the end of the edge. + The user who initiated the action + """ + actor: AuditEntryActor + + """ + The IP address of the actor """ - node: GitActor -} + actorIp: String -""" -Represents information about the GitHub instance. -""" -type GitHubMetadata { """ - Returns a String that's a SHA of `github-services` + A readable representation of the actor's location """ - gitHubServicesSha: GitObjectID! + actorLocation: ActorLocation """ - IP addresses that users connect to for git operations + The username of the user who initiated the action """ - gitIpAddresses: [String!] + actorLogin: String """ - IP addresses that service hooks are sent from + The HTTP path for the actor. """ - hookIpAddresses: [String!] + actorResourcePath: URI """ - IP addresses that the importer connects from + The HTTP URL for the actor. """ - importerIpAddresses: [String!] + actorUrl: URI """ - Whether or not users are verified + The user being unblocked by the organization. """ - isPasswordAuthenticationVerifiable: Boolean! + blockedUser: User """ - IP addresses for GitHub Pages' A records + The username of the blocked user. """ - pagesIpAddresses: [String!] -} + blockedUserName: String -""" -Represents a Git object. -""" -interface GitObject { """ - An abbreviated version of the Git object ID + The HTTP path for the blocked user. """ - abbreviatedOid: String! + blockedUserResourcePath: URI """ - The HTTP path for this Git object + The HTTP URL for the blocked user. """ - commitResourcePath: URI! + blockedUserUrl: URI """ - The HTTP URL for this Git object + The time the action was initiated """ - commitUrl: URI! + createdAt: PreciseDateTime! id: ID! """ - The Git object ID + The corresponding operation type for the action """ - oid: GitObjectID! + operationType: OperationType """ - The Repository the Git object belongs to + The Organization associated with the Audit Entry. """ - repository: Repository! -} - -""" -A Git object ID. -""" -scalar GitObjectID - -""" -A fully qualified reference name (e.g. `refs/heads/master`). -""" -scalar GitRefname @preview(toggledBy: "update-refs-preview") - -""" -Git SSH string -""" -scalar GitSSHRemote + organization: Organization -""" -Information about a signature (GPG or S/MIME) on a Commit or Tag. -""" -interface GitSignature { """ - Email used to sign this object. + The name of the Organization. """ - email: String! + organizationName: String """ - True if the signature is valid and verified by GitHub. + The HTTP path for the organization """ - isValid: Boolean! + organizationResourcePath: URI """ - Payload for GPG signing object. Raw ODB object without the signature header. + The HTTP URL for the organization """ - payload: String! + organizationUrl: URI """ - ASCII-armored signature header from object. + The user affected by the action """ - signature: String! + user: User """ - GitHub user corresponding to the email signing this commit. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - signer: User + userLogin: String """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + The HTTP path for the user. """ - state: GitSignatureState! + userResourcePath: URI """ - True if the signature was made with GitHub's signing key. + The HTTP URL for the user. """ - wasSignedByGitHub: Boolean! + userUrl: URI } """ -The state of a Git signature. +Audit log entry for a org.update_default_repository_permission """ -enum GitSignatureState { +type OrgUpdateDefaultRepositoryPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The signing certificate or its chain could not be verified + The action name """ - BAD_CERT + action: String! """ - Invalid email used for signing + The user who initiated the action """ - BAD_EMAIL + actor: AuditEntryActor """ - Signing key expired + The IP address of the actor """ - EXPIRED_KEY + actorIp: String """ - Internal error - the GPG verification service misbehaved + A readable representation of the actor's location """ - GPGVERIFY_ERROR + actorLocation: ActorLocation """ - Internal error - the GPG verification service is unavailable at the moment + The username of the user who initiated the action """ - GPGVERIFY_UNAVAILABLE + actorLogin: String """ - Invalid signature + The HTTP path for the actor. """ - INVALID + actorResourcePath: URI """ - Malformed signature + The HTTP URL for the actor. """ - MALFORMED_SIG + actorUrl: URI """ - The usage flags for the key that signed this don't allow signing + The time the action was initiated """ - NOT_SIGNING_KEY + createdAt: PreciseDateTime! + id: ID! """ - Email used for signing not known to GitHub + The corresponding operation type for the action """ - NO_USER + operationType: OperationType """ - Valid signature, though certificate revocation check failed + The Organization associated with the Audit Entry. """ - OCSP_ERROR + organization: Organization """ - Valid signature, pending certificate revocation checking + The name of the Organization. """ - OCSP_PENDING + organizationName: String """ - One or more certificates in chain has been revoked + The HTTP path for the organization """ - OCSP_REVOKED + organizationResourcePath: URI """ - Key used for signing not known to GitHub + The HTTP URL for the organization """ - UNKNOWN_KEY + organizationUrl: URI """ - Unknown signature type + The new base repository permission level for the organization. """ - UNKNOWN_SIG_TYPE + permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission """ - Unsigned + The former base repository permission level for the organization. """ - UNSIGNED + permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission """ - Email used for signing unverified on GitHub + The user affected by the action """ - UNVERIFIED_EMAIL + user: User """ - Valid signature and verified by GitHub + For actions involving two users, the actor is the initiator and the user is the affected user. """ - VALID -} + userLogin: String -""" -An ISO-8601 encoded date string. Unlike the DateTime type, GitTimestamp is not converted in UTC. -""" -scalar GitTimestamp + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} """ -Represents a GPG signature on a Commit or Tag. +The default permission a repository can have in an Organization. """ -type GpgSignature implements GitSignature { +enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { """ - Email used to sign this object. + Can read, clone, push, and add collaborators to repositories. """ - email: String! + ADMIN """ - True if the signature is valid and verified by GitHub. + No default permission value. """ - isValid: Boolean! + NONE """ - Hex-encoded ID of the key that signed this object. + Can read and clone repositories. """ - keyId: String + READ """ - Payload for GPG signing object. Raw ODB object without the signature header. + Can read, clone and push to repositories. """ - payload: String! + WRITE +} +""" +Audit log entry for a org.update_member event. +""" +type OrgUpdateMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - ASCII-armored signature header from object. + The action name """ - signature: String! + action: String! """ - GitHub user corresponding to the email signing this commit. + The user who initiated the action """ - signer: User + actor: AuditEntryActor """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + The IP address of the actor """ - state: GitSignatureState! + actorIp: String """ - True if the signature was made with GitHub's signing key. + A readable representation of the actor's location """ - wasSignedByGitHub: Boolean! -} - -""" -A string containing HTML code. -""" -scalar HTML + actorLocation: ActorLocation -""" -Represents a 'head_ref_deleted' event on a given pull request. -""" -type HeadRefDeletedEvent implements Node { """ - Identifies the actor who performed the event. + The username of the user who initiated the action """ - actor: Actor + actorLogin: String """ - Identifies the date and time when the object was created. + The HTTP path for the actor. """ - createdAt: DateTime! + actorResourcePath: URI """ - Identifies the Ref associated with the `head_ref_deleted` event. + The HTTP URL for the actor. """ - headRef: Ref + actorUrl: URI """ - Identifies the name of the Ref associated with the `head_ref_deleted` event. + The time the action was initiated """ - headRefName: String! + createdAt: PreciseDateTime! id: ID! """ - PullRequest referenced by event. + The corresponding operation type for the action """ - pullRequest: PullRequest! -} + operationType: OperationType -""" -Represents a 'head_ref_force_pushed' event on a given pull request. -""" -type HeadRefForcePushedEvent implements Node { """ - Identifies the actor who performed the event. + The Organization associated with the Audit Entry. """ - actor: Actor + organization: Organization """ - Identifies the after commit SHA for the 'head_ref_force_pushed' event. + The name of the Organization. """ - afterCommit: Commit + organizationName: String """ - Identifies the before commit SHA for the 'head_ref_force_pushed' event. + The HTTP path for the organization """ - beforeCommit: Commit + organizationResourcePath: URI """ - Identifies the date and time when the object was created. + The HTTP URL for the organization """ - createdAt: DateTime! - id: ID! + organizationUrl: URI """ - PullRequest referenced by event. + The new member permission level for the organization. """ - pullRequest: PullRequest! + permission: OrgUpdateMemberAuditEntryPermission """ - Identifies the fully qualified ref name for the 'head_ref_force_pushed' event. + The former member permission level for the organization. """ - ref: Ref -} + permissionWas: OrgUpdateMemberAuditEntryPermission -""" -Represents a 'head_ref_restored' event on a given pull request. -""" -type HeadRefRestoredEvent implements Node { """ - Identifies the actor who performed the event. + The user affected by the action """ - actor: Actor + user: User """ - Identifies the date and time when the object was created. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - createdAt: DateTime! - id: ID! + userLogin: String """ - PullRequest referenced by event. + The HTTP path for the user. """ - pullRequest: PullRequest! -} + userResourcePath: URI -""" -Detail needed to display a hovercard for a user -""" -type Hovercard { """ - Each of the contexts for this hovercard + The HTTP URL for the user. """ - contexts: [HovercardContext!]! + userUrl: URI } """ -An individual line of a hovercard +The permissions available to members on an Organization. """ -interface HovercardContext { +enum OrgUpdateMemberAuditEntryPermission { """ - A string describing this context + Can read, clone, push, and add collaborators to repositories. """ - message: String! + ADMIN """ - An octicon to accompany this context + Can read and clone repositories. """ - octicon: String! + READ } """ -The possible states in which authentication can be configured with an identity provider. +Audit log entry for a org.update_member_repository_creation_permission event. """ -enum IdentityProviderConfigurationState { +type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - Authentication with an identity provider is configured but not enforced. + The action name """ - CONFIGURED + action: String! """ - Authentication with an identity provider is configured and enforced. + The user who initiated the action """ - ENFORCED + actor: AuditEntryActor """ - Authentication with an identity provider is not configured. + The IP address of the actor """ - UNCONFIGURED -} + actorIp: String -""" -Autogenerated input type of ImportProject -""" -input ImportProjectInput { """ - The description of Project. + A readable representation of the actor's location """ - body: String + actorLocation: ActorLocation """ - A unique identifier for the client performing the mutation. + The username of the user who initiated the action """ - clientMutationId: String + actorLogin: String """ - A list of columns containing issues and pull requests. + The HTTP path for the actor. """ - columnImports: [ProjectColumnImport!]! + actorResourcePath: URI """ - The name of Project. + The HTTP URL for the actor. """ - name: String! + actorUrl: URI """ - The name of the Organization or User to create the Project under. + Can members create repositories in the organization. """ - ownerName: String! + canCreateRepositories: Boolean """ - Whether the Project is public or not. + The time the action was initiated """ - public: Boolean = false -} + createdAt: PreciseDateTime! + id: ID! -""" -Autogenerated return type of ImportProject -""" -type ImportProjectPayload { """ - A unique identifier for the client performing the mutation. + The corresponding operation type for the action """ - clientMutationId: String + operationType: OperationType """ - The new Project! + The Organization associated with the Audit Entry. """ - project: Project -} + organization: Organization -""" -Autogenerated input type of InviteEnterpriseAdmin -""" -input InviteEnterpriseAdminInput { """ - A unique identifier for the client performing the mutation. + The name of the Organization. """ - clientMutationId: String + organizationName: String """ - The email of the person to invite as an administrator. + The HTTP path for the organization """ - email: String + organizationResourcePath: URI """ - The ID of the enterprise to which you want to invite an administrator. + The HTTP URL for the organization """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + organizationUrl: URI """ - The login of a user to invite as an administrator. + The user affected by the action """ - invitee: String + user: User """ - The role of the administrator. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - role: EnterpriseAdministratorRole -} + userLogin: String -""" -Autogenerated return type of InviteEnterpriseAdmin -""" -type InviteEnterpriseAdminPayload { """ - A unique identifier for the client performing the mutation. + The HTTP path for the user. """ - clientMutationId: String + userResourcePath: URI """ - The created enterprise administrator invitation. + The HTTP URL for the user. """ - invitation: EnterpriseAdministratorInvitation + userUrl: URI + + """ + The permission for visibility level of repositories for this organization. + """ + visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility } """ -The possible values for the IP allow list enabled setting. +The permissions available for repository creation on an Organization. """ -enum IpAllowListEnabledSettingValue { +enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { """ - The setting is disabled for the owner. + All organization members are restricted from creating any repositories. """ - DISABLED + ALL """ - The setting is enabled for the owner. + All organization members are restricted from creating internal repositories. """ - ENABLED -} + INTERNAL -""" -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. + All organization members are allowed to create any repositories. """ - allowListValue: String! + NONE """ - Identifies the date and time when the object was created. + All organization members are restricted from creating private repositories. """ - createdAt: DateTime! - id: ID! + PRIVATE """ - Whether the entry is currently active. + All organization members are restricted from creating private or internal repositories. """ - isActive: Boolean! + PRIVATE_INTERNAL """ - The name of the IP allow list entry. + All organization members are restricted from creating public repositories. """ - name: String + PUBLIC """ - The owner of the IP allow list entry. + All organization members are restricted from creating public or internal repositories. """ - owner: IpAllowListOwner! + PUBLIC_INTERNAL """ - Identifies the date and time when the object was last updated. + All organization members are restricted from creating public or private repositories. """ - updatedAt: DateTime! + PUBLIC_PRIVATE } """ -The connection type for IpAllowListEntry. +Audit log entry for a org.update_member_repository_invitation_permission event. """ -type IpAllowListEntryConnection { +type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - A list of edges. + The action name """ - edges: [IpAllowListEntryEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [IpAllowListEntry] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! -} + actorLocation: ActorLocation + + """ + The username of the user who initiated the action + """ + actorLogin: String + + """ + The HTTP path for the actor. + """ + actorResourcePath: URI -""" -An edge in a connection. -""" -type IpAllowListEntryEdge { """ - A cursor for use in pagination. + The HTTP URL for the actor. """ - cursor: String! + actorUrl: URI """ - The item at the end of the edge. + Can outside collaborators be invited to repositories in the organization. """ - node: IpAllowListEntry -} + canInviteOutsideCollaboratorsToRepositories: Boolean -""" -Ordering options for IP allow list entry connections. -""" -input IpAllowListEntryOrder { """ - The ordering direction. + The time the action was initiated """ - direction: OrderDirection! + createdAt: PreciseDateTime! + id: ID! """ - The field to order IP allow list entries by. + The corresponding operation type for the action """ - field: IpAllowListEntryOrderField! -} + operationType: OperationType -""" -Properties by which IP allow list entry connections can be ordered. -""" -enum IpAllowListEntryOrderField { """ - Order IP allow list entries by the allow list value. + The Organization associated with the Audit Entry. """ - ALLOW_LIST_VALUE + organization: Organization """ - Order IP allow list entries by creation time. + The name of the Organization. """ - CREATED_AT -} - -""" -Types that can own an IP allow list. -""" -union IpAllowListOwner = Enterprise | Organization + organizationName: String -""" -An Issue is a place to discuss ideas, enhancements, tasks, and bugs for a project. -""" -type Issue implements Assignable & Closable & Comment & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { """ - Reason that the conversation was locked. + The HTTP path for the organization """ - activeLockReason: LockReason + organizationResourcePath: URI """ - A list of Users assigned to this object. + The HTTP URL for the organization """ - 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! + organizationUrl: URI """ - The actor who authored the comment. + The user affected by the action """ - author: Actor + user: User """ - Author's association with the subject of the comment. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - authorAssociation: CommentAuthorAssociation! + userLogin: String """ - Identifies the body of the issue. + The HTTP path for the user. """ - body: String! + userResourcePath: URI """ - The body rendered to HTML. + The HTTP URL for the user. """ - bodyHTML: HTML! + userUrl: URI +} +""" +An account on GitHub, with one or more owners, that has repositories, members and teams. +""" +type Organization implements Actor & AnnouncementBanner & MemberStatusable & Node & PackageOwner & ProfileOwner & ProjectOwner & ProjectV2Owner & ProjectV2Recent & RepositoryDiscussionAuthor & RepositoryDiscussionCommentAuthor & RepositoryOwner & Sponsorable & UniformResourceLocatable { """ - The http path for this issue body + The text of the announcement """ - bodyResourcePath: URI! + announcement: String """ - Identifies the body of the issue rendered to text. + The expiration date of the announcement, if any """ - bodyText: String! + announcementExpiresAt: DateTime """ - The http URL for this issue body + Whether the announcement can be dismissed by the user """ - bodyUrl: URI! + announcementUserDismissible: Boolean """ - `true` if the object is closed (definition of closed may depend on type) + Determine if this repository owner has any items that can be pinned to their profile. """ - closed: Boolean! + anyPinnableItems( + """ + Filter to only a particular kind of pinnable item. + """ + type: PinnableItemType + ): Boolean! """ - Identifies the date and time when the object was closed. + Identifies the date and time when the organization was archived. """ - closedAt: DateTime + archivedAt: DateTime """ - A list of comments associated with the Issue. + Audit log entries of the organization """ - comments( + auditLog( """ Returns the elements in the list that come after the specified cursor. """ @@ -12061,20 +27336,30 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Ordering options for issue comments returned from the connection. + Ordering options for the returned audit log entries. """ - orderBy: IssueCommentOrder - ): IssueCommentConnection! + orderBy: AuditLogOrder = {field: CREATED_AT, direction: DESC} + + """ + The query string to filter audit entries + """ + query: String + ): OrganizationAuditEntryConnection! """ - Identifies the date and time when the object was created. + A URL pointing to the organization's public avatar. """ - createdAt: DateTime! + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! """ - Check if this comment was created via an email reply. + Identifies the date and time when the object was created. """ - createdViaEmail: Boolean! + createdAt: DateTime! """ Identifies the primary key from the database. @@ -12082,40 +27367,19 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N databaseId: Int """ - The actor who edited the comment. - """ - editor: Actor - - """ - The hovercard information for this issue - """ - hovercard( - """ - Whether or not to include notification contexts - """ - includeNotificationContexts: Boolean = true - ): Hovercard! - id: ID! - - """ - Check if this comment was edited and includes an edit with the creation data - """ - includesCreatedEdit: Boolean! - - """ - Indicates whether or not this issue is currently pinned to the repository issues list + The organization's public profile description. """ - isPinned: Boolean + description: String """ - Is this issue read by the viewer + The organization's public profile description rendered to HTML. """ - isReadByViewer: Boolean + descriptionHTML: String """ - A list of labels associated with the object. + A list of domains owned by the organization. """ - labels( + domains( """ Returns the elements in the list that come after the specified cursor. """ @@ -12132,40 +27396,35 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N first: Int """ - Returns the last _n_ elements from the list. + Filter by if the domain is approved. """ - last: Int + isApproved: Boolean = null """ - Ordering options for labels returned from the connection. + Filter by if the domain is verified. """ - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - ): LabelConnection - - """ - The moment the editor made the last edit - """ - lastEditedAt: DateTime + isVerified: Boolean = null - """ - `true` if the object is locked - """ - locked: Boolean! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies the milestone associated with the issue. - """ - milestone: Milestone + """ + Ordering options for verifiable domains returned. + """ + orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} + ): VerifiableDomainConnection """ - Identifies the issue number. + The organization's public email. """ - number: Int! + email: String """ - A list of Users that are participating in the Issue conversation. + A list of owners of the organization's enterprise account. """ - participants( + enterpriseOwners( """ Returns the elements in the list that come after the specified cursor. """ @@ -12185,52 +27444,48 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N 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. + Ordering options for enterprise owners returned from the connection. """ - after: String + orderBy: OrgEnterpriseOwnerOrder = {field: LOGIN, direction: ASC} """ - A list of archived states to filter the cards by + The organization role to filter by. """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + organizationRole: RoleInOrganization """ - Returns the elements in the list that come before the specified cursor. + The search string to look for. """ - before: String + query: String + ): OrganizationEnterpriseOwnerConnection! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). + """ + estimatedNextSponsorsPayoutInCents: Int! - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectCardConnection! + """ + True if this user/organization has a GitHub Sponsors listing. + """ + hasSponsorsListing: Boolean! + id: ID! """ - Identifies when the comment was published at. + The interaction ability settings for this organization. """ - publishedAt: DateTime + interactionAbility: RepositoryInteractionAbility """ - A list of reactions grouped by content left on the subject. + The setting value for whether the organization has an IP allow list enabled. """ - reactionGroups: [ReactionGroup!] + ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! """ - A list of Reactions left on the Issue. + The IP addresses that are allowed to access resources owned by the organization. """ - reactions( + ipAllowListEntries( """ Returns the elements in the list that come after the specified cursor. """ @@ -12241,11 +27496,6 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N """ before: String - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - """ Returns the first _n_ elements from the list. """ @@ -12257,30 +27507,56 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Allows specifying the order in which reactions are returned. + Ordering options for IP allow list entries returned. """ - orderBy: ReactionOrder - ): ReactionConnection! + orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} + ): IpAllowListEntryConnection! """ - The repository associated with this node. + The setting value for whether the organization has IP allow list configuration for installed GitHub Apps enabled. """ - repository: Repository! + ipAllowListForInstalledAppsEnabledSetting: IpAllowListForInstalledAppsEnabledSettingValue! """ - The HTTP path for this issue + Whether the given account is sponsoring this user/organization. """ - resourcePath: URI! + isSponsoredBy( + """ + The target account's login. + """ + accountLogin: String! + ): Boolean! """ - Identifies the state of the issue. + True if the viewer is sponsored by this user/organization. """ - state: IssueState! + isSponsoringViewer: Boolean! """ - A list of events, comments, commits, etc. associated with the issue. + Whether the organization has verified its profile email and website. """ - timeline( + 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. """ @@ -12302,15 +27578,20 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N last: Int """ - Allows filtering timeline events by a `since` timestamp. + Filter mannequins by login. """ - since: DateTime - ): IssueTimelineConnection! @deprecated(reason: "`timeline` will be removed Use Issue.timelineItems instead. Removal on 2020-10-01 UTC.") + login: String + + """ + Ordering options for mannequins returned from the connection. + """ + orderBy: MannequinOrder = {field: CREATED_AT, direction: ASC} + ): MannequinConnection! """ - A list of events, comments, commits, etc. associated with the issue. + Get the status messages members of this entity have set that are either public or visible only to the organization. """ - timelineItems( + memberStatuses( """ Returns the elements in the list that come after the specified cursor. """ @@ -12326,46 +27607,26 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N """ first: Int - """ - Filter timeline items by type. - """ - itemTypes: [IssueTimelineItemsItemType!] - """ Returns the last _n_ elements from the list. """ last: Int """ - Filter timeline items by a `since` timestamp. - """ - since: DateTime - - """ - Skips the first _n_ elements in the list. + Ordering options for user statuses returned from the connection. """ - skip: Int - ): IssueTimelineItemsConnection! - - """ - Identifies the issue title. - """ - title: String! - - """ - Identifies the date and time when the object was last updated. - """ - updatedAt: DateTime! + orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} + ): UserStatusConnection! """ - The HTTP URL for this issue + Members can fork private repositories in this organization """ - url: URI! + membersCanForkPrivateRepositories: Boolean! """ - A list of edits to this content. + A list of users who are members of this organization. """ - userContentEdits( + membersWithRole( """ Returns the elements in the list that come after the specified cursor. """ @@ -12385,134 +27646,142 @@ type Issue implements Assignable & Closable & Comment & Labelable & Lockable & N Returns the last _n_ elements from the list. """ last: Int - ): UserContentEditConnection + ): OrganizationMemberConnection! """ - Can user react to this subject + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). """ - viewerCanReact: Boolean! + monthlyEstimatedSponsorsIncomeInCents: Int! """ - Check if the viewer is able to change their subscription status for the repository. + The organization's public profile name. """ - viewerCanSubscribe: Boolean! + name: String """ - Check if the current viewer can update this object. + The HTTP path creating a new team """ - viewerCanUpdate: Boolean! + newTeamResourcePath: URI! """ - Reasons why the current viewer can not update this comment. + The HTTP URL creating a new team """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + newTeamUrl: URI! """ - Did the viewer author this comment. + Indicates if email notification delivery for this organization is restricted to verified or approved domains. """ - viewerDidAuthor: Boolean! + notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + The billing email for the organization. """ - viewerSubscription: SubscriptionState -} + organizationBillingEmail: String -""" -Represents a comment on an Issue. -""" -type IssueComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The actor who authored the comment. + A list of packages under the owner. """ - author: Actor + packages( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Author's association with the subject of the comment. - """ - authorAssociation: CommentAuthorAssociation! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The body as Markdown. - """ - body: String! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The body rendered to HTML. - """ - bodyHTML: HTML! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The body rendered to text. - """ - bodyText: String! + """ + Find packages by their names. + """ + names: [String] - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} - """ - Check if this comment was created via an email reply. - """ - createdViaEmail: Boolean! + """ + Filter registry package by type. + """ + packageType: PackageType - """ - Identifies the primary key from the database. - """ - databaseId: Int + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! """ - The actor who edited the comment. + A list of users who have been invited to join this organization. """ - editor: Actor - id: ID! + pendingMembers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Check if this comment was edited and includes an edit with the creation data - """ - includesCreatedEdit: Boolean! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Returns whether or not a comment has been minimized. - """ - isMinimized: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Identifies the issue associated with the comment. - """ - issue: Issue! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The moment the editor made the last edit + A list of repositories and gists this profile owner can pin to their profile. """ - lastEditedAt: DateTime + pinnableItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Returns why the comment was minimized. - """ - minimizedReason: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Identifies when the comment was published at. - """ - publishedAt: DateTime + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Returns the pull request associated with the comment, if this comment was made on a - pull request. - """ - pullRequest: PullRequest + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - A list of reactions grouped by content left on the subject. - """ - reactionGroups: [ReactionGroup!] + """ + Filter the types of pinnable items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - A list of Reactions left on the Issue. + A list of repositories and gists this profile owner has pinned to their profile """ - reactions( + pinnedItems( """ Returns the elements in the list that come after the specified cursor. """ @@ -12521,12 +27790,7 @@ type IssueComment implements Comment & Deletable & Minimizable & Node & Reactabl """ Returns the elements in the list that come before the specified cursor. """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent + before: String """ Returns the first _n_ elements from the list. @@ -12539,35 +27803,40 @@ type IssueComment implements Comment & Deletable & Minimizable & Node & Reactabl last: Int """ - Allows specifying the order in which reactions are returned. + Filter the types of pinned items that are returned. """ - orderBy: ReactionOrder - ): ReactionConnection! - - """ - The repository associated with this node. - """ - repository: Repository! + types: [PinnableItemType!] + ): PinnableItemConnection! """ - The HTTP path for this issue comment + Returns how many more items this profile owner can pin to their profile. """ - resourcePath: URI! + pinnedItemsRemaining: Int! """ - Identifies the date and time when the object was last updated. + Find project by number. """ - updatedAt: DateTime! + project( + """ + The project number to find. + """ + number: Int! + ): Project """ - The HTTP URL for this issue comment + Find a project by number. """ - url: URI! + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - A list of edits to this content. + A list of projects under the owner. """ - userContentEdits( + projects( """ Returns the elements in the list that come after the specified cursor. """ @@ -12587,137 +27856,37 @@ type IssueComment implements Comment & Deletable & Minimizable & Node & Reactabl Returns the last _n_ elements from the list. """ last: Int - ): UserContentEditConnection - - """ - Check if the current viewer can delete this object. - """ - viewerCanDelete: Boolean! - - """ - Check if the current viewer can minimize this object. - """ - viewerCanMinimize: Boolean! - - """ - Can user react to this subject - """ - viewerCanReact: Boolean! - - """ - Check if the current viewer can update this object. - """ - viewerCanUpdate: Boolean! - - """ - Reasons why the current viewer can not update this comment. - """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! - - """ - Did the viewer author this comment. - """ - viewerDidAuthor: Boolean! -} - -""" -The connection type for IssueComment. -""" -type IssueCommentConnection { - """ - A list of edges. - """ - edges: [IssueCommentEdge] - - """ - A list of nodes. - """ - nodes: [IssueComment] - - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! - - """ - Identifies the total count of items in the connection. - """ - totalCount: Int! -} - -""" -An edge in a connection. -""" -type IssueCommentEdge { - """ - A cursor for use in pagination. - """ - cursor: String! - - """ - The item at the end of the edge. - """ - node: IssueComment -} - -""" -Ways in which lists of issue comments can be ordered upon return. -""" -input IssueCommentOrder { - """ - The direction in which to order issue comments by the specified field. - """ - direction: OrderDirection! - - """ - The field in which to order issue comments by. - """ - field: IssueCommentOrderField! -} -""" -Properties by which issue comment connections can be ordered. -""" -enum IssueCommentOrderField { - """ - Order issue comments by update time - """ - UPDATED_AT -} + """ + Ordering options for projects returned from the connection + """ + orderBy: ProjectOrder -""" -The connection type for Issue. -""" -type IssueConnection { - """ - A list of edges. - """ - edges: [IssueEdge] + """ + Query to search projects by, currently only searching by name. + """ + search: String - """ - A list of nodes. - """ - nodes: [Issue] + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - Information to aid in pagination. + The HTTP path listing organization's projects """ - pageInfo: PageInfo! + projectsResourcePath: URI! """ - Identifies the total count of items in the connection. + The HTTP URL listing organization's projects """ - totalCount: Int! -} + projectsUrl: URI! -""" -This aggregates issues opened by a user within one repository. -""" -type IssueContributionsByRepository { """ - The issue contributions. + A list of projects under the owner. """ - contributions( + projectsV2( """ Returns the elements in the list that come after the specified cursor. """ @@ -12739,481 +27908,502 @@ type IssueContributionsByRepository { last: Int """ - Ordering options for contributions returned from the connection. + How to order the returned projects. """ - orderBy: ContributionOrder = {direction: DESC} - ): CreatedIssueContributionConnection! - - """ - The repository in which the issues were opened. - """ - repository: Repository! -} + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} -""" -An edge in a connection. -""" -type IssueEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! """ - The item at the end of the edge. + Recent projects that this user has modified in the context of the owner. """ - node: Issue -} + recentProjects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -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 + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - List issues created by given name. - """ - createdBy: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - List issues where the list of label names exist on the issue. - """ - labels: [String!] + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2Connection! """ - List issues where the given name is mentioned in the issue. + A list of repositories that the user owns. """ - mentioned: String + repositories( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] - """ - 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 + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - List issues that have been updated at or after the given date. - """ - since: DateTime + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - List issues filtered by the list of states given. - """ - states: [IssueState!] + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - List issues subscribed to by viewer. - """ - viewerSubscribed: Boolean = false -} + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean -""" -Used for return value of Repository.issueOrPullRequest. -""" -union IssueOrPullRequest = Issue | PullRequest + """ + If non-null, filters repositories according to whether they are archived and not maintained + """ + isArchived: Boolean -""" -Ways in which lists of issues can be ordered upon return. -""" -input IssueOrder { - """ - The direction in which to order issues by the specified field. - """ - direction: OrderDirection! + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean - """ - The field in which to order issues by. - """ - field: IssueOrderField! -} + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean -""" -Properties by which issue connections can be ordered. -""" -enum IssueOrderField { - """ - Order issues by comment count - """ - COMMENTS + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Order issues by creation time - """ - CREATED_AT + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder - """ - Order issues by update time - """ - UPDATED_AT -} + """ + 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 possible states of an issue. -""" -enum IssueState { - """ - An issue that has been closed - """ - CLOSED + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - An issue that is still open + Find Repository. """ - OPEN -} + repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true -""" -A repository issue template. -""" -type IssueTemplate { - """ - The template purpose. - """ - about: String + """ + Name of Repository to find. + """ + name: String! + ): Repository """ - The suggested issue body. + Discussion comments this user has authored. """ - body: String + repositoryDiscussionComments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The template name. - """ - name: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The suggested issue title. - """ - title: String -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -The connection type for IssueTimelineItem. -""" -type IssueTimelineConnection { - """ - A list of edges. - """ - edges: [IssueTimelineItemEdge] + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - A list of nodes. - """ - nodes: [IssueTimelineItem] + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! + """ + Filter discussion comments to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionCommentConnection! """ - Identifies the total count of items in the connection. + Discussions this user has started. """ - 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 + repositoryDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -An edge in a connection. -""" -type IssueTimelineItemEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null - """ - The item at the end of the edge. - """ - node: IssueTimelineItem -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: 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 + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -The connection type for IssueTimelineItems. -""" -type IssueTimelineItemsConnection { - """ - A list of edges. - """ - edges: [IssueTimelineItemsEdge] + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Identifies the count of items after applying `before` and `after` filters. - """ - filteredCount: Int! + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} - """ - A list of nodes. - """ - nodes: [IssueTimelineItems] + """ + Filter discussions to only those in a specific repository. + """ + repositoryId: ID - """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. - """ - pageCount: Int! + """ + A list of states to filter the discussions by. + """ + states: [DiscussionState!] = [] + ): DiscussionConnection! """ - Information to aid in pagination. + A list of all repository migrations for this organization. """ - pageInfo: PageInfo! + repositoryMigrations( + """ + 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 - """ - Identifies the date and time when the timeline was last updated. - """ - updatedAt: DateTime! -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -An edge in a connection. -""" -type IssueTimelineItemsEdge { - """ - 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: IssueTimelineItems -} + """ + Ordering options for repository migrations returned. + """ + orderBy: RepositoryMigrationOrder = {field: CREATED_AT, direction: ASC} -""" -The possible item types found in a timeline. -""" -enum IssueTimelineItemsItemType { - """ - Represents a 'added_to_project' event on a given issue or pull request. - """ - ADDED_TO_PROJECT_EVENT + """ + Filter repository migrations by repository name. + """ + repositoryName: String - """ - Represents an 'assigned' event on any assignable object. - """ - ASSIGNED_EVENT + """ + Filter repository migrations by state. + """ + state: MigrationState + ): RepositoryMigrationConnection! """ - Represents a 'closed' event on any `Closable`. + When true the organization requires all members, billing managers, and outside + collaborators to enable two-factor authentication. """ - CLOSED_EVENT + requiresTwoFactorAuthentication: Boolean """ - Represents a 'comment_deleted' event on a given issue or pull request. + The HTTP path for this organization. """ - COMMENT_DELETED_EVENT + resourcePath: URI! """ - Represents a 'connected' event on a given issue or pull request. + Returns a single ruleset from the current organization by ID. """ - CONNECTED_EVENT + ruleset( + """ + The ID of the ruleset to be returned. + """ + databaseId: Int! + ): RepositoryRuleset """ - Represents a 'converted_note_to_issue' event on a given issue or pull request. + A list of rulesets for this organization. """ - CONVERTED_NOTE_TO_ISSUE_EVENT + rulesets( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Represents a mention made by one issue or pull request to another. - """ - CROSS_REFERENCED_EVENT + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Represents a 'demilestoned' event on a given issue or pull request. - """ - DEMILESTONED_EVENT + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Represents a 'disconnected' event on a given issue or pull request. - """ - DISCONNECTED_EVENT + """ + Return rulesets configured at higher levels that apply to this organization + """ + includeParents: Boolean = true - """ - Represents a comment on an Issue. - """ - ISSUE_COMMENT + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): RepositoryRulesetConnection """ - Represents a 'labeled' event on a given issue or pull request. + The Organization's SAML identity provider. Visible to (1) organization owners, + (2) organization owners' personal access tokens (classic) with read:org or + admin:org scope, (3) GitHub App with an installation token with read or write + access to members. """ - LABELED_EVENT + samlIdentityProvider: OrganizationIdentityProvider """ - Represents a 'locked' event on a given issue or pull request. + List of users and organizations this entity is sponsoring. """ - LOCKED_EVENT + sponsoring( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Represents a 'marked_as_duplicate' event on a given issue or pull request. - """ - MARKED_AS_DUPLICATE_EVENT + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Represents a 'mentioned' event on a given issue or pull request. - """ - MENTIONED_EVENT + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Represents a 'milestoned' event on a given issue or pull request. - """ - MILESTONED_EVENT + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Represents a 'moved_columns_in_project' event on a given issue or pull request. - """ - MOVED_COLUMNS_IN_PROJECT_EVENT + """ + Ordering options for the users and organizations returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + ): SponsorConnection! """ - Represents a 'pinned' event on a given issue or pull request. + List of sponsors for this user or organization. """ - PINNED_EVENT + sponsors( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Represents a 'referenced' event on a given `ReferencedSubject`. - """ - REFERENCED_EVENT + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Represents a 'removed_from_project' event on a given issue or pull request. - """ - REMOVED_FROM_PROJECT_EVENT + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Represents a 'renamed' event on a given issue or pull request - """ - RENAMED_TITLE_EVENT + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Represents a 'reopened' event on any `Closable`. - """ - REOPENED_EVENT + """ + Ordering options for sponsors returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} - """ - Represents a 'subscribed' event on a given `Subscribable`. - """ - SUBSCRIBED_EVENT + """ + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. + """ + tierId: ID + ): SponsorConnection! """ - Represents a 'transferred' event on a given issue or pull request. + Events involving this sponsorable, such as new sponsorships. """ - TRANSFERRED_EVENT + sponsorsActivities( + """ + Filter activities to only the specified actions. + """ + actions: [SponsorsActivityAction!] = [] - """ - Represents an 'unassigned' event on any assignable object. - """ - UNASSIGNED_EVENT + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Represents an 'unlabeled' event on a given issue or pull request. - """ - UNLABELED_EVENT + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Represents an 'unlocked' event on a given issue or pull request. - """ - UNLOCKED_EVENT + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Represents an 'unmarked_as_duplicate' event on a given issue or pull request. - """ - UNMARKED_AS_DUPLICATE_EVENT + """ + 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 - """ - Represents an 'unpinned' event on a given issue or pull request. - """ - UNPINNED_EVENT + """ + Whether or not to include private activities in the result set. Defaults to including public and private activities. + """ + includePrivate: Boolean = true - """ - Represents an 'unsubscribed' event on a given `Subscribable`. - """ - UNSUBSCRIBED_EVENT + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Represents a 'user_blocked' event on a given user. - """ - USER_BLOCKED_EVENT -} + """ + Ordering options for activity returned from the connection. + """ + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} -""" -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! + """ + 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 - """ - When this contribution was made. - """ - occurredAt: DateTime! + """ + Filter activities to those that occurred on or after this time. + """ + since: DateTime - """ - The HTTP path for this contribution. - """ - resourcePath: URI! + """ + Filter activities to those that occurred before this time. + """ + until: DateTime + ): SponsorsActivityConnection! """ - The HTTP URL for this contribution. + The GitHub Sponsors listing for this user or organization. """ - url: URI! + sponsorsListing: SponsorsListing """ - The user who made this contribution. + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. """ - user: User! -} + 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 -""" -A label for categorizing Issues or Milestones with a given Repository. -""" -type Label implements Node { """ - Identifies the label color. + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. """ - color: String! + sponsorshipForViewerAsSponsorable( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship """ - Identifies the date and time when the label was created. + List of sponsorship updates sent from this sponsorable to sponsors. """ - createdAt: DateTime + sponsorshipNewsletters( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A brief description of this label. - """ - description: String - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Indicates whether or not this is a default label. - """ - isDefault: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for sponsorship updates returned from the connection. + """ + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! """ - A list of issues associated with this label. + The sponsorships where this user or organization is the maintainer receiving the funds. """ - issues( + sponsorshipsAsMaintainer( + """ + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. + """ + activeOnly: Boolean = true + """ Returns the elements in the list that come after the specified cursor. """ @@ -13225,19 +28415,50 @@ type Label implements Node { before: String """ - Filtering options for issues returned from the connection. + Returns the first _n_ elements from the list. """ - filterBy: IssueFilters + first: Int """ - Returns the first _n_ elements from the list. + Whether or not to include private sponsorships in the result set """ - first: Int + includePrivate: Boolean = false """ - A list of label names to filter the pull requests by. + Returns the last _n_ elements from the list. """ - labels: [String!] + last: Int + + """ + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. + """ + orderBy: SponsorshipOrder + ): SponsorshipConnection! + + """ + The sponsorships where this user or organization is the funder. + """ + sponsorshipsAsSponsor( + """ + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. + """ + activeOnly: Boolean = true + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int """ Returns the last _n_ elements from the list. @@ -13245,35 +28466,38 @@ type Label implements Node { last: Int """ - Ordering options for issues returned from the connection. + Filter sponsorships returned to those for the specified maintainers. That + is, the recipient of the sponsorship is a user or organization with one of + the given logins. """ - orderBy: IssueOrder + maintainerLogins: [String!] """ - A list of states to filter the issues by. + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. """ - states: [IssueState!] - ): IssueConnection! + orderBy: SponsorshipOrder + ): SponsorshipConnection! """ - Identifies the label name. + Find an organization's team by its slug. """ - name: String! + team( + """ + The name or slug of the team to find. + """ + slug: String! + ): Team """ - A list of pull requests associated with this label. + A list of teams in this organization. """ - pullRequests( + teams( """ Returns the elements in the list that come after the specified cursor. """ after: String - """ - The base ref name to filter the pull requests by. - """ - baseRefName: String - """ Returns the elements in the list that come before the specified cursor. """ @@ -13285,212 +28509,232 @@ type Label implements Node { first: Int """ - The head ref name to filter the pull requests by. + Returns the last _n_ elements from the list. """ - headRefName: String + last: Int """ - A list of label names to filter the pull requests by. + If true, filters teams that are mapped to an LDAP Group (Enterprise only) """ - labels: [String!] + ldapMapped: Boolean """ - Returns the last _n_ elements from the list. + If non-null, filters teams according to notification setting """ - last: Int + notificationSetting: TeamNotificationSetting """ - Ordering options for pull requests returned from the connection. + Ordering options for teams returned from the connection """ - orderBy: IssueOrder + orderBy: TeamOrder """ - A list of states to filter the pull requests by. + If non-null, filters teams according to privacy """ - states: [PullRequestState!] - ): PullRequestConnection! + privacy: TeamPrivacy - """ - The repository associated with this label. - """ - repository: Repository! + """ + If non-null, filters teams with query on team name and team slug + """ + query: String - """ - The HTTP path for this label. - """ - resourcePath: URI! + """ + If non-null, filters teams according to whether the viewer is an admin or member on team + """ + role: TeamRole - """ - Identifies the date and time when the label was last updated. - """ - updatedAt: DateTime + """ + If true, restrict to only root teams + """ + rootTeamsOnly: Boolean = false - """ - The HTTP URL for this label. - """ - url: URI! -} + """ + User logins to filter by + """ + userLogins: [String!] + ): TeamConnection! -""" -The connection type for Label. -""" -type LabelConnection { """ - A list of edges. + The HTTP path listing organization's teams """ - edges: [LabelEdge] + teamsResourcePath: URI! """ - A list of nodes. + The HTTP URL listing organization's teams """ - nodes: [Label] + teamsUrl: URI! """ - Information to aid in pagination. + 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. """ - pageInfo: PageInfo! + totalSponsorshipAmountAsSponsorInCents( + """ + Filter payments to those that occurred on or after this time. + """ + since: DateTime + + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] + + """ + Filter payments to those that occurred before this time. + """ + until: DateTime + ): Int """ - Identifies the total count of items in the connection. + The organization's Twitter username. """ - totalCount: Int! -} + twitterUsername: String -""" -An edge in a connection. -""" -type LabelEdge { """ - A cursor for use in pagination. + Identifies the date and time when the object was last updated. """ - cursor: String! + updatedAt: DateTime! """ - The item at the end of the edge. + The HTTP URL for this organization. """ - node: Label -} + url: URI! -""" -Ways in which lists of labels can be ordered upon return. -""" -input LabelOrder { """ - The direction in which to order labels by the specified field. + Organization is adminable by the viewer. """ - direction: OrderDirection! + viewerCanAdminister: Boolean! """ - The field in which to order labels by. + Can the viewer pin repositories and gists to the profile? """ - field: LabelOrderField! -} + viewerCanChangePinnedItems: Boolean! -""" -Properties by which label connections can be ordered. -""" -enum LabelOrderField { """ - Order labels by creation time + Can the current viewer create new projects on this owner. """ - CREATED_AT + viewerCanCreateProjects: Boolean! """ - Order labels by name + Viewer can create repositories on this organization """ - NAME -} + viewerCanCreateRepositories: Boolean! -""" -An object that can have labels assigned to it. -""" -interface Labelable { """ - A list of labels associated with the object. + Viewer can create teams on this organization. """ - labels( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for labels returned from the connection. - """ - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - ): LabelConnection -} - -""" -Represents a 'labeled' event on a given issue or pull request. -""" -type LabeledEvent implements Node { + viewerCanCreateTeams: Boolean! + """ - Identifies the actor who performed the event. + Whether or not the viewer is able to sponsor this user/organization. """ - actor: Actor + viewerCanSponsor: Boolean! """ - Identifies the date and time when the object was created. + Viewer is an active member of this organization. """ - createdAt: DateTime! - id: ID! + viewerIsAMember: Boolean! """ - Identifies the label associated with the 'labeled' event. + Whether or not this Organization is followed by the viewer. """ - label: Label! + viewerIsFollowing: Boolean! """ - Identifies the `Labelable` associated with the event. + True if the viewer is sponsoring this user/organization. """ - labelable: Labelable! -} + viewerIsSponsoring: Boolean! -""" -Represents a given language found in repositories. -""" -type Language implements Node { """ - The color defined for the current language. + Whether contributors are required to sign off on web-based commits for repositories in this organization. """ - color: String - id: ID! + webCommitSignoffRequired: Boolean! """ - The name of the current language. + The organization's public profile URL. """ - name: String! + websiteUrl: URI } """ -A list of languages associated with the parent. +An audit entry in an organization audit log. """ -type LanguageConnection { +union OrganizationAuditEntry = + MembersCanDeleteReposClearAuditEntry + | MembersCanDeleteReposDisableAuditEntry + | MembersCanDeleteReposEnableAuditEntry + | OauthApplicationCreateAuditEntry + | OrgAddBillingManagerAuditEntry + | OrgAddMemberAuditEntry + | OrgBlockUserAuditEntry + | OrgConfigDisableCollaboratorsOnlyAuditEntry + | OrgConfigEnableCollaboratorsOnlyAuditEntry + | OrgCreateAuditEntry + | OrgDisableOauthAppRestrictionsAuditEntry + | OrgDisableSamlAuditEntry + | OrgDisableTwoFactorRequirementAuditEntry + | OrgEnableOauthAppRestrictionsAuditEntry + | OrgEnableSamlAuditEntry + | OrgEnableTwoFactorRequirementAuditEntry + | OrgInviteMemberAuditEntry + | OrgInviteToBusinessAuditEntry + | OrgOauthAppAccessApprovedAuditEntry + | OrgOauthAppAccessBlockedAuditEntry + | OrgOauthAppAccessDeniedAuditEntry + | OrgOauthAppAccessRequestedAuditEntry + | OrgOauthAppAccessUnblockedAuditEntry + | OrgRemoveBillingManagerAuditEntry + | OrgRemoveMemberAuditEntry + | OrgRemoveOutsideCollaboratorAuditEntry + | OrgRestoreMemberAuditEntry + | OrgUnblockUserAuditEntry + | OrgUpdateDefaultRepositoryPermissionAuditEntry + | OrgUpdateMemberAuditEntry + | OrgUpdateMemberRepositoryCreationPermissionAuditEntry + | OrgUpdateMemberRepositoryInvitationPermissionAuditEntry + | PrivateRepositoryForkingDisableAuditEntry + | PrivateRepositoryForkingEnableAuditEntry + | RepoAccessAuditEntry + | RepoAddMemberAuditEntry + | RepoAddTopicAuditEntry + | RepoArchivedAuditEntry + | RepoChangeMergeSettingAuditEntry + | RepoConfigDisableAnonymousGitAccessAuditEntry + | RepoConfigDisableCollaboratorsOnlyAuditEntry + | RepoConfigDisableContributorsOnlyAuditEntry + | RepoConfigDisableSockpuppetDisallowedAuditEntry + | RepoConfigEnableAnonymousGitAccessAuditEntry + | RepoConfigEnableCollaboratorsOnlyAuditEntry + | RepoConfigEnableContributorsOnlyAuditEntry + | RepoConfigEnableSockpuppetDisallowedAuditEntry + | RepoConfigLockAnonymousGitAccessAuditEntry + | RepoConfigUnlockAnonymousGitAccessAuditEntry + | RepoCreateAuditEntry + | RepoDestroyAuditEntry + | RepoRemoveMemberAuditEntry + | RepoRemoveTopicAuditEntry + | RepositoryVisibilityChangeDisableAuditEntry + | RepositoryVisibilityChangeEnableAuditEntry + | TeamAddMemberAuditEntry + | TeamAddRepositoryAuditEntry + | TeamChangeParentTeamAuditEntry + | TeamRemoveMemberAuditEntry + | TeamRemoveRepositoryAuditEntry + +""" +The connection type for OrganizationAuditEntry. +""" +type OrganizationAuditEntryConnection { """ A list of edges. """ - edges: [LanguageEdge] + edges: [OrganizationAuditEntryEdge] """ A list of nodes. """ - nodes: [Language] + nodes: [OrganizationAuditEntry] """ Information to aid in pagination. @@ -13501,792 +28745,866 @@ type LanguageConnection { Identifies the total count of items in the connection. """ totalCount: Int! - - """ - The total size in bytes of files written in that language. - """ - totalSize: Int! } """ -Represents the language of a repository. +Metadata for an audit entry with action org.* """ -type LanguageEdge { - cursor: String! - node: Language! - +interface OrganizationAuditEntryData { """ - The number of bytes of code written in the language. + The Organization associated with the Audit Entry. """ - size: Int! -} + organization: Organization -""" -Ordering options for language connections. -""" -input LanguageOrder { """ - The ordering direction. + The name of the Organization. """ - direction: OrderDirection! + organizationName: String """ - The field to order languages by. + The HTTP path for the organization """ - field: LanguageOrderField! -} + organizationResourcePath: URI -""" -Properties by which language connections can be ordered. -""" -enum LanguageOrderField { """ - Order languages by the size of all files containing the language + The HTTP URL for the organization """ - SIZE + organizationUrl: URI } """ -A repository's open source license +An edge in a connection. """ -type License implements Node { - """ - The full text of the license - """ - body: String! - - """ - The conditions set by the license - """ - conditions: [LicenseRule]! - +type OrganizationAuditEntryEdge { """ - A human-readable description of the license + A cursor for use in pagination. """ - description: String + cursor: String! """ - Whether the license should be featured + The item at the end of the edge. """ - featured: Boolean! + node: OrganizationAuditEntry +} +""" +A list of organizations managed by an enterprise. +""" +type OrganizationConnection { """ - Whether the license should be displayed in license pickers + A list of edges. """ - hidden: Boolean! - id: ID! + edges: [OrganizationEdge] """ - Instructions on how to implement the license + A list of nodes. """ - implementation: String + nodes: [Organization] """ - The lowercased SPDX ID of the license + Information to aid in pagination. """ - key: String! + pageInfo: PageInfo! """ - The limitations set by the license + Identifies the total count of items in the connection. """ - limitations: [LicenseRule]! + totalCount: Int! +} +""" +An edge in a connection. +""" +type OrganizationEdge { """ - The license full name specified by + A cursor for use in pagination. """ - name: String! + cursor: String! """ - Customary short name if applicable (e.g, GPLv3) + The item at the end of the edge. """ - nickname: String + node: Organization +} +""" +The connection type for User. +""" +type OrganizationEnterpriseOwnerConnection { """ - The permissions set by the license + A list of edges. """ - permissions: [LicenseRule]! + edges: [OrganizationEnterpriseOwnerEdge] """ - Whether the license is a pseudo-license placeholder (e.g., other, no-license) + A list of nodes. """ - pseudoLicense: Boolean! + nodes: [User] """ - Short identifier specified by + Information to aid in pagination. """ - spdxId: String + pageInfo: PageInfo! """ - URL to the license on + Identifies the total count of items in the connection. """ - url: URI + totalCount: Int! } """ -Describes a License's conditions, permissions, and limitations +An enterprise owner in the context of an organization that is part of the enterprise. """ -type LicenseRule { +type OrganizationEnterpriseOwnerEdge { """ - A description of the rule + A cursor for use in pagination. """ - description: String! + cursor: String! """ - The machine-readable rule key + The item at the end of the edge. """ - key: String! + node: User """ - The human-readable rule label + The role of the owner with respect to the organization. """ - label: String! + organizationRole: RoleInOrganization! } """ -Autogenerated input type of LinkRepositoryToProject +An Identity Provider configured to provision SAML and SCIM identities for +Organizations. Visible to (1) organization owners, (2) organization owners' +personal access tokens (classic) with read:org or admin:org scope, (3) GitHub +App with an installation token with read or write access to members. """ -input LinkRepositoryToProjectInput { +type OrganizationIdentityProvider implements Node { """ - A unique identifier for the client performing the mutation. + The digest algorithm used to sign SAML requests for the Identity Provider. """ - clientMutationId: String + digestMethod: URI """ - The ID of the Project to link to a Repository + External Identities provisioned by this Identity Provider """ - projectId: ID! @possibleTypes(concreteTypes: ["Project"]) + externalIdentities( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The ID of the Repository to link to a Project. - """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Autogenerated return type of LinkRepositoryToProject -""" -type LinkRepositoryToProjectPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter to external identities with the users login + """ + login: String + + """ + Filter to external identities with valid org membership only + """ + membersOnly: Boolean + + """ + Filter to external identities with the users userName/NameID attribute + """ + userName: String + ): ExternalIdentityConnection! + id: ID! """ - The linked Project. + The x509 certificate used by the Identity Provider to sign assertions and responses. """ - project: Project + idpCertificate: X509Certificate """ - The linked Repository. + The Issuer Entity ID for the SAML Identity Provider """ - repository: Repository -} + issuer: String -""" -Autogenerated input type of LockLockable -""" -input LockLockableInput { """ - A unique identifier for the client performing the mutation. + Organization this Identity Provider belongs to """ - clientMutationId: String + organization: Organization """ - A reason for why the item will be locked. + The signature algorithm used to sign SAML requests for the Identity Provider. """ - lockReason: LockReason + signatureMethod: URI """ - ID of the item to be locked. + The URL endpoint for the Identity Provider's SAML SSO. """ - lockableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Lockable") + ssoUrl: URI } """ -Autogenerated return type of LockLockable +An Invitation for a user to an organization. """ -type LockLockablePayload { - """ - Identifies the actor who performed the event. - """ - actor: Actor - +type OrganizationInvitation implements Node { """ - A unique identifier for the client performing the mutation. + Identifies the date and time when the object was created. """ - clientMutationId: String + createdAt: DateTime! """ - The item that was locked. + The email address of the user invited to the organization. """ - lockedRecord: Lockable -} + email: String + id: ID! -""" -The possible reasons that an issue or pull request was locked. -""" -enum LockReason { """ - The issue or pull request was locked because the conversation was off-topic. + The source of the invitation. """ - OFF_TOPIC + invitationSource: OrganizationInvitationSource! """ - The issue or pull request was locked because the conversation was resolved. + The type of invitation that was sent (e.g. email, user). """ - RESOLVED + invitationType: OrganizationInvitationType! """ - The issue or pull request was locked because the conversation was spam. + The user who was invited to the organization. """ - SPAM + invitee: User """ - The issue or pull request was locked because the conversation was too heated. + The user who created the invitation. """ - TOO_HEATED -} + inviter: User! -""" -An object that can be locked. -""" -interface Lockable { """ - Reason that the conversation was locked. + The organization the invite is for """ - activeLockReason: LockReason + organization: Organization! """ - `true` if the object is locked + The user's pending role in the organization (e.g. member, owner). """ - locked: Boolean! + role: OrganizationInvitationRole! } """ -Represents a 'locked' event on a given issue or pull request. +The connection type for OrganizationInvitation. """ -type LockedEvent implements Node { +type OrganizationInvitationConnection { """ - Identifies the actor who performed the event. + A list of edges. """ - actor: Actor + edges: [OrganizationInvitationEdge] """ - Identifies the date and time when the object was created. + A list of nodes. """ - createdAt: DateTime! - id: ID! + nodes: [OrganizationInvitation] """ - Reason that the conversation was locked (optional). + Information to aid in pagination. """ - lockReason: LockReason + pageInfo: PageInfo! """ - Object that was locked. + Identifies the total count of items in the connection. """ - lockable: Lockable! + totalCount: Int! } """ -A placeholder user for attribution of imported data on GitHub. +An edge in a connection. """ -type Mannequin implements Actor & Node & UniformResourceLocatable { - """ - A URL pointing to the GitHub App's public avatar. - """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! - - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - +type OrganizationInvitationEdge { """ - Identifies the primary key from the database. + A cursor for use in pagination. """ - databaseId: Int + cursor: String! """ - The mannequin's email on the source instance. + The item at the end of the edge. """ - email: String - id: ID! + node: OrganizationInvitation +} +""" +The possible organization invitation roles. +""" +enum OrganizationInvitationRole { """ - The username of the actor. + The user is invited to be an admin of the organization. """ - login: String! + ADMIN """ - The HTML path to this resource. + The user is invited to be a billing manager of the organization. """ - resourcePath: URI! + BILLING_MANAGER """ - Identifies the date and time when the object was last updated. + The user is invited to be a direct member of the organization. """ - updatedAt: DateTime! + DIRECT_MEMBER """ - The URL to this resource. + The user's previous role will be reinstated. """ - url: URI! + REINSTATE } """ -Autogenerated input type of MarkFileAsViewed +The possible organization invitation sources. """ -input MarkFileAsViewedInput { +enum OrganizationInvitationSource { """ - A unique identifier for the client performing the mutation. + The invitation was created from the web interface or from API """ - clientMutationId: String + MEMBER """ - The path of the file to mark as viewed + The invitation was created from SCIM """ - path: String! + SCIM """ - The Node ID of the pull request. + The invitation was sent before this feature was added """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + UNKNOWN } """ -Autogenerated return type of MarkFileAsViewed +The possible organization invitation types. """ -type MarkFileAsViewedPayload { +enum OrganizationInvitationType { """ - A unique identifier for the client performing the mutation. + The invitation was to an email address. """ - clientMutationId: String + EMAIL """ - The updated pull request. + The invitation was to an existing user. """ - pullRequest: PullRequest + USER } """ -Autogenerated input type of MarkPullRequestReadyForReview +The connection type for User. """ -input MarkPullRequestReadyForReviewInput { +type OrganizationMemberConnection { """ - A unique identifier for the client performing the mutation. + A list of edges. """ - clientMutationId: String + edges: [OrganizationMemberEdge] """ - ID of the pull request to be marked as ready for review. + A list of nodes. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) -} + nodes: [User] -""" -Autogenerated return type of MarkPullRequestReadyForReview -""" -type MarkPullRequestReadyForReviewPayload { """ - A unique identifier for the client performing the mutation. + Information to aid in pagination. """ - clientMutationId: String + pageInfo: PageInfo! """ - The pull request that is ready for review. + Identifies the total count of items in the connection. """ - pullRequest: PullRequest + totalCount: Int! } """ -Represents a 'marked_as_duplicate' event on a given issue or pull request. +Represents a user within an organization. """ -type MarkedAsDuplicateEvent implements Node { - """ - Identifies the actor who performed the event. - """ - actor: Actor - +type OrganizationMemberEdge { """ - The authoritative issue or pull request which has been duplicated by another. + A cursor for use in pagination. """ - canonical: IssueOrPullRequest + cursor: String! """ - Identifies the date and time when the object was created. + Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer. """ - createdAt: DateTime! + hasTwoFactorEnabled: Boolean """ - The issue or pull request which has been marked as a duplicate of another. + The item at the end of the edge. """ - duplicate: IssueOrPullRequest - id: ID! + node: User """ - Canonical and duplicate belong to different repositories. + The role this user has in the organization. """ - isCrossRepository: Boolean! + role: OrganizationMemberRole } """ -A public description of a Marketplace category. +The possible roles within an organization for its members. """ -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! - +enum OrganizationMemberRole { """ - The category's name. + The user is an administrator of the organization. """ - name: String! + ADMIN """ - How many Marketplace listings have this as their primary category. + The user is a member of the organization. """ - primaryListingCount: Int! + MEMBER +} +""" +The possible values for the members can create repositories setting on an organization. +""" +enum OrganizationMembersCanCreateRepositoriesSettingValue { """ - The HTTP path for this Marketplace category. + Members will be able to create public and private repositories. """ - resourcePath: URI! + ALL """ - How many Marketplace listings have this as their secondary category. + Members will not be able to create public or private repositories. """ - secondaryListingCount: Int! + DISABLED """ - The short name of the category used in its URL. + Members will be able to create only internal repositories. """ - slug: String! + INTERNAL """ - The HTTP URL for this Marketplace category. + Members will be able to create only private repositories. """ - url: URI! + PRIVATE } """ -A listing in the GitHub integration marketplace. +A GitHub Enterprise Importer (GEI) organization migration. """ -type MarketplaceListing implements Node { - """ - The GitHub App this listing represents. - """ - app: App - - """ - URL to the listing owner's company site. +type OrganizationMigration implements Node { """ - companyUrl: URI - - """ - The HTTP path for configuring access to the listing's integration or OAuth app + Identifies the date and time when the object was created. """ - configurationResourcePath: URI! + createdAt: DateTime! """ - The HTTP URL for configuring access to the listing's integration or OAuth app + Identifies the primary key from the database. """ - configurationUrl: URI! + databaseId: String """ - URL to the listing's documentation. + The reason the organization migration failed. """ - documentationUrl: URI + failureReason: String + id: ID! """ - The listing's detailed description. + The remaining amount of repos to be migrated. """ - extendedDescription: String + remainingRepositoriesCount: Int """ - The listing's detailed description rendered to HTML. + The name of the source organization to be migrated. """ - extendedDescriptionHTML: HTML! + sourceOrgName: String! """ - The listing's introductory description. + The URL of the source organization to migrate. """ - fullDescription: String! + sourceOrgUrl: URI! """ - The listing's introductory description rendered to HTML. + The migration state. """ - fullDescriptionHTML: HTML! + state: OrganizationMigrationState! """ - Does this listing have any plans with a free trial? + The name of the target organization. """ - hasPublishedFreeTrialPlans: Boolean! + targetOrgName: String! """ - Does this listing have a terms of service link? + The total amount of repositories to be migrated. """ - hasTermsOfService: Boolean! + totalRepositoriesCount: Int +} +""" +The Octoshift Organization migration state. +""" +enum OrganizationMigrationState { """ - Whether the creator of the app is a verified org + The Octoshift migration has failed. """ - hasVerifiedOwner: Boolean! + FAILED """ - A technical description of how this app works with GitHub. + The Octoshift migration has invalid credentials. """ - howItWorks: String + FAILED_VALIDATION """ - The listing's technical description rendered to HTML. + The Octoshift migration is in progress. """ - howItWorksHTML: HTML! - id: ID! + IN_PROGRESS """ - URL to install the product to the viewer's account or organization. + The Octoshift migration has not started. """ - installationUrl: URI + NOT_STARTED """ - Whether this listing's app has been installed for the current viewer + The Octoshift migration needs to have its credentials validated. """ - installedForViewer: Boolean! + PENDING_VALIDATION """ - Whether this listing has been removed from the Marketplace. + The Octoshift migration is performing post repository migrations. """ - isArchived: Boolean! + POST_REPO_MIGRATION """ - Whether this listing is still an editable draft that has not been submitted - for review and is not publicly visible in the Marketplace. + The Octoshift migration is performing pre repository migrations. """ - isDraft: Boolean! + PRE_REPO_MIGRATION """ - Whether the product this listing represents is available as part of a paid plan. + The Octoshift migration has been queued. """ - isPaid: Boolean! + QUEUED """ - Whether this listing has been approved for display in the Marketplace. + The Octoshift org migration is performing repository migrations. """ - isPublic: Boolean! + REPO_MIGRATION """ - Whether this listing has been rejected by GitHub for display in the Marketplace. + The Octoshift migration has succeeded. """ - isRejected: Boolean! + SUCCEEDED +} + +""" +Used for argument of CreateProjectV2 mutation. +""" +union OrganizationOrUser = Organization | User +""" +Ordering options for organization connections. +""" +input OrganizationOrder { """ - Whether this listing has been approved for unverified display in the Marketplace. + The ordering direction. """ - isUnverified: Boolean! + direction: OrderDirection! """ - Whether this draft listing has been submitted for review for approval to be unverified in the Marketplace. + The field to order organizations by. """ - isUnverifiedPending: Boolean! + field: OrganizationOrderField! +} +""" +Properties by which organization connections can be ordered. +""" +enum OrganizationOrderField { """ - Whether this draft listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + Order organizations by creation time """ - isVerificationPendingFromDraft: Boolean! + CREATED_AT """ - Whether this unverified listing has been submitted for review from GitHub for approval to be verified in the Marketplace. + Order organizations by login """ - isVerificationPendingFromUnverified: Boolean! + LOGIN +} +""" +An organization teams hovercard context +""" +type OrganizationTeamsHovercardContext implements HovercardContext { """ - Whether this listing has been approved for verified display in the Marketplace. + A string describing this context """ - isVerified: Boolean! + message: String! """ - The hex color code, without the leading '#', for the logo background. + An octicon to accompany this context """ - logoBackgroundColor: String! + octicon: String! """ - URL for the listing's logo image. + Teams in this organization the user is a member of that are relevant """ - logoUrl( + relevantTeams( """ - The size in pixels of the resulting square image. + Returns the elements in the list that come after the specified cursor. """ - size: Int = 400 - ): URI + after: String + + """ + Returns the elements in the list that come before the 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 listing's full name. + The path for the full team list for this user """ - name: String! + teamsResourcePath: URI! """ - The listing's very short description without a trailing period or ampersands. + The URL for the full team list for this user """ - normalizedShortDescription: String! + teamsUrl: URI! """ - URL to the listing's detailed pricing. + The total number of teams the user is on in the organization """ - pricingUrl: URI + totalTeamCount: Int! +} +""" +An organization list hovercard context +""" +type OrganizationsHovercardContext implements HovercardContext { """ - The category that best describes the listing. + A string describing this context """ - primaryCategory: MarketplaceCategory! + message: String! """ - URL to the listing's privacy policy, may return an empty string for listings that do not require a privacy policy URL. + An octicon to accompany this context """ - privacyPolicyUrl: URI! + octicon: String! """ - The HTTP path for the Marketplace listing. + Organizations this user is a member of that are relevant """ - resourcePath: URI! + relevantOrganizations( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the User's organizations. + """ + orderBy: OrganizationOrder = null + ): OrganizationConnection! """ - The URLs for the listing's screenshots. + The total number of organizations this user is in """ - screenshotUrls: [String]! + totalOrganizationCount: Int! +} + +""" +Information for an uploaded package. +""" +type Package implements Node { + id: ID! """ - An alternate category that describes the listing. + Find the latest version for the package. """ - secondaryCategory: MarketplaceCategory + latestVersion: PackageVersion """ - The listing's very short description. + Identifies the name of the package. """ - shortDescription: String! + name: String! """ - The short name of the listing used in its URL. + Identifies the type of the package. """ - slug: String! + packageType: PackageType! """ - URL to the listing's status page. + The repository this package belongs to. """ - statusUrl: URI + repository: Repository """ - An email address for support for this listing's app. + Statistics about package activity. """ - supportEmail: String + statistics: PackageStatistics """ - 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. + Find package version by version string. """ - supportUrl: URI! + version( + """ + The package version. + """ + version: String! + ): PackageVersion """ - URL to the listing's terms of service. + list of versions for this package """ - termsOfServiceUrl: URI + versions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering of the returned packages. + """ + orderBy: PackageVersionOrder = {field: CREATED_AT, direction: DESC} + ): PackageVersionConnection! +} +""" +The connection type for Package. +""" +type PackageConnection { """ - The HTTP URL for the Marketplace listing. + A list of edges. """ - url: URI! + edges: [PackageEdge] """ - Can the current viewer add plans for this Marketplace listing. + A list of nodes. """ - viewerCanAddPlans: Boolean! + nodes: [Package] """ - Can the current viewer approve this Marketplace listing. + Information to aid in pagination. """ - viewerCanApprove: Boolean! + pageInfo: PageInfo! """ - Can the current viewer delist this Marketplace listing. + Identifies the total count of items in the connection. """ - viewerCanDelist: Boolean! + totalCount: Int! +} +""" +An edge in a connection. +""" +type PackageEdge { """ - Can the current viewer edit this Marketplace listing. + A cursor for use in pagination. """ - viewerCanEdit: Boolean! + cursor: String! """ - Can the current viewer edit the primary and secondary category of this - Marketplace listing. + The item at the end of the edge. """ - viewerCanEditCategories: Boolean! + node: Package +} + +""" +A file in a package version. +""" +type PackageFile implements Node { + id: ID! """ - Can the current viewer edit the plans for this Marketplace listing. + MD5 hash of the file. """ - viewerCanEditPlans: Boolean! + md5: String """ - Can the current viewer return this Marketplace listing to draft state - so it becomes editable again. + Name of the file. """ - viewerCanRedraft: Boolean! + name: String! """ - Can the current viewer reject this Marketplace listing by returning it to - an editable draft state or rejecting it entirely. + The package version this file belongs to. """ - viewerCanReject: Boolean! + packageVersion: PackageVersion """ - Can the current viewer request this listing be reviewed for display in - the Marketplace as verified. + SHA1 hash of the file. """ - viewerCanRequestApproval: Boolean! + sha1: String """ - Indicates whether the current user has an active subscription to this Marketplace listing. + SHA256 hash of the file. """ - viewerHasPurchased: Boolean! + sha256: String """ - Indicates if the current user has purchased a subscription to this Marketplace listing - for all of the organizations the user owns. + Size of the file in bytes. """ - viewerHasPurchasedForAllOrganizations: Boolean! + size: Int """ - Does the current viewer role allow them to administer this Marketplace listing. + Identifies the date and time when the object was last updated. """ - viewerIsListingAdmin: Boolean! + updatedAt: DateTime! + + """ + URL to download the asset. + """ + url: URI } """ -Look up Marketplace Listings +The connection type for PackageFile. """ -type MarketplaceListingConnection { +type PackageFileConnection { """ A list of edges. """ - edges: [MarketplaceListingEdge] + edges: [PackageFileEdge] """ A list of nodes. """ - nodes: [MarketplaceListing] + nodes: [PackageFile] """ Information to aid in pagination. @@ -14302,7 +29620,7 @@ type MarketplaceListingConnection { """ An edge in a connection. """ -type MarketplaceListingEdge { +type PackageFileEdge { """ A cursor for use in pagination. """ @@ -14311,17 +29629,69 @@ type MarketplaceListingEdge { """ The item at the end of the edge. """ - node: MarketplaceListing + node: PackageFile } """ -Entities that have members who can set status messages. +Ways in which lists of package files can be ordered upon return. """ -interface MemberStatusable { +input PackageFileOrder { """ - Get the status messages members of this entity have set that are either public or visible only to the organization. + The direction in which to order package files by the specified field. """ - memberStatuses( + direction: OrderDirection + + """ + The field in which to order package files by. + """ + field: PackageFileOrderField +} + +""" +Properties by which package file connections can be ordered. +""" +enum PackageFileOrderField { + """ + Order package files by creation time + """ + CREATED_AT +} + +""" +Ways in which lists of packages can be ordered upon return. +""" +input PackageOrder { + """ + The direction in which to order packages by the specified field. + """ + direction: OrderDirection + + """ + The field in which to order packages by. + """ + field: PackageOrderField +} + +""" +Properties by which package connections can be ordered. +""" +enum PackageOrderField { + """ + Order packages by creation time + """ + CREATED_AT +} + +""" +Represents an owner of a package. +""" +interface PackageOwner { + id: ID! + + """ + A list of packages under the owner. + """ + packages( """ Returns the elements in the list that come after the specified cursor. """ @@ -14343,5736 +29713,6435 @@ interface MemberStatusable { last: Int """ - Ordering options for user statuses returned from the connection. + Find packages by their names. """ - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! + names: [String] + + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter registry package by type. + """ + packageType: PackageType + + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! } """ -Audit log entry for a members_can_delete_repos.clear event. +Represents a object that contains package activity statistics such as downloads. """ -type MembersCanDeleteReposClearAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +type PackageStatistics { """ - The action name + Number of times the package was downloaded since it was created. """ - action: String! + downloadsTotalCount: Int! +} + +""" +A version tag contains the mapping between a tag name and a version. +""" +type PackageTag implements Node { + id: ID! """ - The user who initiated the action + Identifies the tag name of the version. """ - actor: AuditEntryActor + name: String! """ - The IP address of the actor + Version that the tag is associated with. """ - actorIp: String + version: PackageVersion +} +""" +The possible types of a package. +""" +enum PackageType { """ - A readable representation of the actor's location + A debian package. """ - actorLocation: ActorLocation + DEBIAN """ - The username of the user who initiated the action + A docker image. """ - actorLogin: String + DOCKER + @deprecated( + reason: "DOCKER will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2021-06-21 UTC." + ) """ - The HTTP path for the actor. + A maven package. """ - actorResourcePath: URI + MAVEN + @deprecated( + reason: "MAVEN will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2023-02-10 UTC." + ) """ - The HTTP URL for the actor. + An npm package. """ - actorUrl: URI + NPM + @deprecated( + reason: "NPM will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2022-11-21 UTC." + ) """ - The time the action was initiated + A nuget package. """ - createdAt: PreciseDateTime! + NUGET + @deprecated( + reason: "NUGET will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2022-11-21 UTC." + ) """ - The HTTP path for this enterprise. + A python package. """ - enterpriseResourcePath: URI + PYPI """ - The slug of the enterprise. + A rubygems package. """ - enterpriseSlug: String + RUBYGEMS + @deprecated( + reason: "RUBYGEMS will be removed from this enum as this type will be migrated to only be used by the Packages REST API. Removal on 2022-12-28 UTC." + ) +} +""" +Information about a specific package version. +""" +type PackageVersion implements Node { """ - The HTTP URL for this enterprise. + List of files associated with this package version """ - enterpriseUrl: URI + files( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering of the returned package files. + """ + orderBy: PackageFileOrder = {field: CREATED_AT, direction: ASC} + ): PackageFileConnection! id: ID! """ - The corresponding operation type for the action + The package associated with this version. """ - operationType: OperationType + package: Package """ - The Organization associated with the Audit Entry. + The platform this version was built for. """ - organization: Organization + platform: String + + """ + Whether or not this version is a pre-release. + """ + preRelease: Boolean! + + """ + 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 name of the Organization. + The version string. """ - organizationName: String + version: String! +} +""" +The connection type for PackageVersion. +""" +type PackageVersionConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [PackageVersionEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [PackageVersion] """ - The user affected by the action + Information to aid in pagination. """ - user: User + pageInfo: PageInfo! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the total count of items in the connection. """ - userLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type PackageVersionEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: PackageVersion } """ -Audit log entry for a members_can_delete_repos.disable event. +Ways in which lists of package versions can be ordered upon return. """ -type MembersCanDeleteReposDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +input PackageVersionOrder { """ - The action name + The direction in which to order package versions by the specified field. """ - action: String! + direction: OrderDirection """ - The user who initiated the action + The field in which to order package versions by. """ - actor: AuditEntryActor + field: PackageVersionOrderField +} +""" +Properties by which package version connections can be ordered. +""" +enum PackageVersionOrderField { """ - The IP address of the actor + Order package versions by creation time """ - actorIp: String + CREATED_AT +} +""" +Represents a object that contains package version activity statistics such as downloads. +""" +type PackageVersionStatistics { """ - A readable representation of the actor's location + Number of times the package was downloaded since it was created. """ - actorLocation: ActorLocation + downloadsTotalCount: Int! +} +""" +Information about pagination in a connection. +""" +type PageInfo { """ - The username of the user who initiated the action + When paginating forwards, the cursor to continue. """ - actorLogin: String + endCursor: String """ - The HTTP path for the actor. + When paginating forwards, are there more items? """ - actorResourcePath: URI + hasNextPage: Boolean! """ - The HTTP URL for the actor. + When paginating backwards, are there more items? """ - actorUrl: URI + hasPreviousPage: Boolean! """ - The time the action was initiated + When paginating backwards, the cursor to continue. """ - createdAt: PreciseDateTime! + startCursor: String +} +""" +The possible types of patch statuses. +""" +enum PatchStatus { """ - The HTTP path for this enterprise. + The file was added. Git status 'A'. """ - enterpriseResourcePath: URI + ADDED """ - The slug of the enterprise. + The file's type was changed. Git status 'T'. """ - enterpriseSlug: String + CHANGED """ - The HTTP URL for this enterprise. + The file was copied. Git status 'C'. """ - enterpriseUrl: URI - id: ID! + COPIED """ - The corresponding operation type for the action + The file was deleted. Git status 'D'. """ - operationType: OperationType + DELETED """ - The Organization associated with the Audit Entry. + The file's contents were changed. Git status 'M'. """ - organization: Organization + MODIFIED """ - The name of the Organization. + The file was renamed. Git status 'R'. """ - organizationName: String + RENAMED +} + +""" +Types that can grant permissions on a repository to a user +""" +union PermissionGranter = Organization | Repository | Team +""" +A level of permission and source for a user's access to a repository. +""" +type PermissionSource { """ - The HTTP path for the organization + The organization the repository belongs to. """ - organizationResourcePath: URI + organization: Organization! """ - The HTTP URL for the organization + The level of access this source has granted to the user. """ - organizationUrl: URI + permission: DefaultRepositoryPermissionField! """ - The user affected by the action + The name of the role this source has granted to the user. """ - user: User + roleName: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The source of this permission. """ - userLogin: String + source: PermissionGranter! +} +""" +Autogenerated input type of PinIssue +""" +input PinIssueInput { """ - The HTTP path for the user. + A unique identifier for the client performing the mutation. """ - userResourcePath: URI + clientMutationId: String """ - The HTTP URL for the user. + The ID of the issue to be pinned """ - userUrl: URI + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) } """ -Audit log entry for a members_can_delete_repos.enable event. +Autogenerated return type of PinIssue """ -type MembersCanDeleteReposEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +type PinIssuePayload { """ - The action name + A unique identifier for the client performing the mutation. """ - action: String! + clientMutationId: String """ - The user who initiated the action + The issue that was pinned """ - actor: AuditEntryActor + issue: Issue +} + +""" +Types that can be pinned to a profile page. +""" +union PinnableItem = Gist | Repository +""" +The connection type for PinnableItem. +""" +type PinnableItemConnection { """ - The IP address of the actor + A list of edges. """ - actorIp: String + edges: [PinnableItemEdge] """ - A readable representation of the actor's location + A list of nodes. """ - actorLocation: ActorLocation + nodes: [PinnableItem] """ - The username of the user who initiated the action + Information to aid in pagination. """ - actorLogin: String + pageInfo: PageInfo! """ - The HTTP path for the actor. + Identifies the total count of items in the connection. """ - actorResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type PinnableItemEdge { """ - The HTTP URL for the actor. + A cursor for use in pagination. """ - actorUrl: URI + cursor: String! """ - The time the action was initiated + The item at the end of the edge. """ - createdAt: PreciseDateTime! + node: PinnableItem +} +""" +Represents items that can be pinned to a profile page or dashboard. +""" +enum PinnableItemType { """ - The HTTP path for this enterprise. + A gist. """ - enterpriseResourcePath: URI + GIST """ - The slug of the enterprise. + An issue. """ - enterpriseSlug: String + ISSUE """ - The HTTP URL for this enterprise. + An organization. """ - enterpriseUrl: URI - id: ID! + ORGANIZATION """ - The corresponding operation type for the action + A project. """ - operationType: OperationType + PROJECT """ - The Organization associated with the Audit Entry. + A pull request. """ - organization: Organization + PULL_REQUEST """ - The name of the Organization. + A repository. """ - organizationName: String + REPOSITORY """ - The HTTP path for the organization + A team. """ - organizationResourcePath: URI + TEAM """ - The HTTP URL for the organization + A user. """ - organizationUrl: URI + USER +} +""" +A Pinned Discussion is a discussion pinned to a repository's index page. +""" +type PinnedDiscussion implements Node & RepositoryNode { """ - The user affected by the action + Identifies the date and time when the object was created. """ - user: User + createdAt: DateTime! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the primary key from the database. """ - userLogin: String + databaseId: Int """ - The HTTP path for the user. + The discussion that was pinned. """ - userResourcePath: URI + discussion: Discussion! """ - The HTTP URL for the user. + Color stops of the chosen gradient """ - userUrl: URI -} + gradientStopColors: [String!]! + id: ID! -""" -Represents a 'mentioned' event on a given issue or pull request. -""" -type MentionedEvent implements Node { """ - Identifies the actor who performed the event. + Background texture pattern """ - actor: Actor + pattern: PinnedDiscussionPattern! """ - Identifies the date and time when the object was created. + The actor that pinned this discussion. """ - createdAt: DateTime! + pinnedBy: Actor! """ - Identifies the primary key from the database. + Preconfigured background gradient option """ - databaseId: Int - id: ID! -} + preconfiguredGradient: PinnedDiscussionGradient -""" -Autogenerated input type of MergeBranch -""" -input MergeBranchInput { """ - The email address to associate with this commit. + The repository associated with this node. """ - authorEmail: String + repository: Repository! """ - The name of the base branch that the provided head will be merged into. + Identifies the date and time when the object was last updated. """ - base: String! + updatedAt: DateTime! +} +""" +The connection type for PinnedDiscussion. +""" +type PinnedDiscussionConnection { """ - A unique identifier for the client performing the mutation. + A list of edges. """ - clientMutationId: String + edges: [PinnedDiscussionEdge] """ - Message to use for the merge commit. If omitted, a default will be used. + A list of nodes. """ - commitMessage: String + nodes: [PinnedDiscussion] """ - The head to merge into the base branch. This can be a branch name or a commit GitObjectID. + Information to aid in pagination. """ - head: String! + pageInfo: PageInfo! """ - The Node ID of the Repository containing the base branch that will be modified. + Identifies the total count of items in the connection. """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + totalCount: Int! } """ -Autogenerated return type of MergeBranch +An edge in a connection. """ -type MergeBranchPayload { +type PinnedDiscussionEdge { """ - A unique identifier for the client performing the mutation. + A cursor for use in pagination. """ - clientMutationId: String + cursor: String! """ - The resulting merge Commit. + The item at the end of the edge. """ - mergeCommit: Commit + node: PinnedDiscussion } """ -Autogenerated input type of MergePullRequest +Preconfigured gradients that may be used to style discussions pinned within a repository. """ -input MergePullRequestInput { +enum PinnedDiscussionGradient { """ - The email address to associate with this merge. + A gradient of blue to mint """ - authorEmail: String + BLUE_MINT """ - A unique identifier for the client performing the mutation. + A gradient of blue to purple """ - clientMutationId: String + BLUE_PURPLE """ - Commit body to use for the merge commit; if omitted, a default message will be used + A gradient of pink to blue """ - commitBody: String + PINK_BLUE """ - Commit headline to use for the merge commit; if omitted, a default message will be used. + A gradient of purple to coral """ - commitHeadline: String + PURPLE_CORAL """ - OID that the pull request head ref must match to allow merge; if omitted, no check is performed. + A gradient of red to orange """ - expectedHeadOid: GitObjectID + RED_ORANGE +} +""" +Preconfigured background patterns that may be used to style discussions pinned within a repository. +""" +enum PinnedDiscussionPattern { """ - The merge method to use. If omitted, defaults to 'MERGE' + An upward-facing chevron pattern """ - mergeMethod: PullRequestMergeMethod = MERGE + CHEVRON_UP """ - ID of the pull request to be merged. + A hollow dot pattern """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) -} + DOT -""" -Autogenerated return type of MergePullRequest -""" -type MergePullRequestPayload { """ - Identifies the actor who performed the event. + A solid dot pattern """ - actor: Actor + DOT_FILL """ - A unique identifier for the client performing the mutation. + A heart pattern """ - clientMutationId: String + HEART_FILL """ - The pull request that was merged. + A plus sign pattern """ - pullRequest: PullRequest + PLUS + + """ + A lightning bolt pattern + """ + ZAP } """ -Detailed status information about a pull request merge. +Represents a 'pinned' event on a given issue or pull request. """ -enum MergeStateStatus { +type PinnedEvent implements Node { """ - The head ref is out of date. + Identifies the actor who performed the event. """ - BEHIND + actor: Actor """ - The merge is blocked. + Identifies the date and time when the object was created. """ - BLOCKED + createdAt: DateTime! + id: ID! """ - Mergeable and passing commit status. + Identifies the issue associated with the event. """ - CLEAN + issue: Issue! +} +""" +A Pinned Issue is a issue pinned to a repository's index page. +""" +type PinnedIssue implements Node { """ - The merge commit cannot be cleanly created. + Identifies the primary key from the database. """ - DIRTY + databaseId: Int """ - The merge is blocked due to the pull request being a draft. + Identifies the primary key from the database as a BigInt. """ - DRAFT @deprecated(reason: "DRAFT state will be removed from this enum and `isDraft` should be used instead Use PullRequest.isDraft instead. Removal on 2021-01-01 UTC.") + fullDatabaseId: BigInt + id: ID! """ - Mergeable with passing commit status and pre-receive hooks. + The issue that was pinned. """ - HAS_HOOKS + issue: Issue! """ - The state cannot currently be determined. + The actor that pinned this issue. """ - UNKNOWN + pinnedBy: Actor! """ - Mergeable with non-passing commit status. + The repository that this issue was pinned to. """ - UNSTABLE + repository: Repository! } """ -Whether or not a PullRequest can be merged. +The connection type for PinnedIssue. """ -enum MergeableState { +type PinnedIssueConnection { """ - The pull request cannot be merged due to merge conflicts. + A list of edges. """ - CONFLICTING + edges: [PinnedIssueEdge] """ - The pull request can be merged. + A list of nodes. """ - MERGEABLE + nodes: [PinnedIssue] """ - The mergeability of the pull request is still being calculated. + Information to aid in pagination. """ - UNKNOWN + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -Represents a 'merged' event on a given pull request. +An edge in a connection. """ -type MergedEvent implements Node & UniformResourceLocatable { +type PinnedIssueEdge { """ - Identifies the actor who performed the event. + A cursor for use in pagination. """ - actor: Actor + cursor: String! """ - Identifies the commit associated with the `merge` event. + The item at the end of the edge. """ - commit: Commit + node: PinnedIssue +} - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - id: ID! +""" +An ISO-8601 encoded UTC date string with millisecond precision. +""" +scalar PreciseDateTime +""" +Audit log entry for a private_repository_forking.disable event. +""" +type PrivateRepositoryForkingDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Identifies the Ref associated with the `merge` event. + The action name """ - mergeRef: Ref + action: String! """ - Identifies the name of the Ref associated with the `merge` event. + The user who initiated the action """ - mergeRefName: String! + actor: AuditEntryActor """ - PullRequest referenced by event. + The IP address of the actor """ - pullRequest: PullRequest! + actorIp: String """ - The HTTP path for this merged event. + A readable representation of the actor's location """ - resourcePath: URI! + actorLocation: ActorLocation """ - The HTTP URL for this merged event. + The username of the user who initiated the action """ - url: URI! -} + actorLogin: String -""" -Represents a Milestone object on a given repository. -""" -type Milestone implements Closable & Node & UniformResourceLocatable { """ - `true` if the object is closed (definition of closed may depend on type) + The HTTP path for the actor. """ - closed: Boolean! + actorResourcePath: URI """ - Identifies the date and time when the object was closed. + The HTTP URL for the actor. """ - closedAt: DateTime + actorUrl: URI """ - Identifies the date and time when the object was created. + The time the action was initiated """ - createdAt: DateTime! + createdAt: PreciseDateTime! """ - Identifies the actor who created the milestone. + The HTTP path for this enterprise. """ - creator: Actor + enterpriseResourcePath: URI """ - Identifies the description of the milestone. + The slug of the enterprise. """ - description: String + enterpriseSlug: String """ - Identifies the due date of the milestone. + The HTTP URL for this enterprise. """ - dueOn: DateTime + enterpriseUrl: URI id: ID! """ - A list of issues associated with the milestone. - """ - issues( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Filtering options for issues returned from the connection. - """ - filterBy: IssueFilters - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for issues returned from the connection. - """ - orderBy: IssueOrder - - """ - A list of states to filter the issues by. - """ - states: [IssueState!] - ): IssueConnection! + The corresponding operation type for the action + """ + operationType: OperationType """ - Identifies the number of the milestone. + The Organization associated with the Audit Entry. """ - number: Int! + organization: Organization """ - Identifies the percentage complete for the milestone + The name of the Organization. """ - progressPercentage: Float! + organizationName: String """ - A list of pull requests associated with the milestone. + The HTTP path for the organization """ - pullRequests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - The base ref name to filter the pull requests by. - """ - baseRefName: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - The head ref name to filter the pull requests by. - """ - headRefName: String - - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] + organizationResourcePath: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for the organization + """ + organizationUrl: URI - """ - Ordering options for pull requests returned from the connection. - """ - orderBy: IssueOrder + """ + The repository associated with the action + """ + repository: Repository - """ - A list of states to filter the pull requests by. - """ - states: [PullRequestState!] - ): PullRequestConnection! + """ + The name of the repository + """ + repositoryName: String """ - The repository associated with this milestone. + The HTTP path for the repository """ - repository: Repository! + repositoryResourcePath: URI """ - The HTTP path for this milestone + The HTTP URL for the repository """ - resourcePath: URI! + repositoryUrl: URI """ - Identifies the state of the milestone. + The user affected by the action """ - state: MilestoneState! + user: User """ - Identifies the title of the milestone. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - title: String! + userLogin: String """ - Identifies the date and time when the object was last updated. + The HTTP path for the user. """ - updatedAt: DateTime! + userResourcePath: URI """ - The HTTP URL for this milestone + The HTTP URL for the user. """ - url: URI! + userUrl: URI } """ -The connection type for Milestone. +Audit log entry for a private_repository_forking.enable event. """ -type MilestoneConnection { +type PrivateRepositoryForkingEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [MilestoneEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [Milestone] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! -} + actorLocation: ActorLocation -""" -An edge in a connection. -""" -type MilestoneEdge { """ - A cursor for use in pagination. + The username of the user who initiated the action """ - cursor: String! + actorLogin: String """ - The item at the end of the edge. + The HTTP path for the actor. """ - node: Milestone -} - -""" -Types that can be inside a Milestone. -""" -union MilestoneItem = Issue | PullRequest + actorResourcePath: URI -""" -Ordering options for milestone connections. -""" -input MilestoneOrder { """ - The ordering direction. + The HTTP URL for the actor. """ - direction: OrderDirection! + actorUrl: URI """ - The field to order milestones by. + The time the action was initiated """ - field: MilestoneOrderField! -} + createdAt: PreciseDateTime! -""" -Properties by which milestone connections can be ordered. -""" -enum MilestoneOrderField { """ - Order milestones by when they were created. + The HTTP path for this enterprise. """ - CREATED_AT + enterpriseResourcePath: URI """ - Order milestones by when they are due. + The slug of the enterprise. """ - DUE_DATE + enterpriseSlug: String """ - Order milestones by their number. + The HTTP URL for this enterprise. """ - NUMBER + enterpriseUrl: URI + id: ID! """ - Order milestones by when they were last updated. + The corresponding operation type for the action """ - UPDATED_AT -} + operationType: OperationType -""" -The possible states of a milestone. -""" -enum MilestoneState { """ - A milestone that has been closed. + The Organization associated with the Audit Entry. """ - CLOSED + organization: Organization """ - A milestone that is still open. + The name of the Organization. """ - OPEN -} + organizationName: String -""" -Represents a 'milestoned' event on a given issue or pull request. -""" -type MilestonedEvent implements Node { """ - Identifies the actor who performed the event. + The HTTP path for the organization """ - actor: Actor + organizationResourcePath: URI """ - Identifies the date and time when the object was created. + The HTTP URL for the organization """ - createdAt: DateTime! - id: ID! + organizationUrl: URI """ - Identifies the milestone title associated with the 'milestoned' event. + The repository associated with the action """ - milestoneTitle: String! + repository: Repository """ - Object referenced by event. + The name of the repository """ - subject: MilestoneItem! -} + repositoryName: String -""" -Entities that can be minimized. -""" -interface Minimizable { """ - Returns whether or not a comment has been minimized. + The HTTP path for the repository """ - isMinimized: Boolean! + repositoryResourcePath: URI """ - Returns why the comment was minimized. + The HTTP URL for the repository """ - minimizedReason: String + repositoryUrl: URI """ - Check if the current viewer can minimize this object. + The user affected by the action """ - viewerCanMinimize: Boolean! -} + user: User -""" -Autogenerated input type of MinimizeComment -""" -input MinimizeCommentInput { """ - The classification of comment + For actions involving two users, the actor is the initiator and the user is the affected user. """ - classifier: ReportedContentClassifiers! + userLogin: String """ - A unique identifier for the client performing the mutation. + The HTTP path for the user. """ - clientMutationId: String + userResourcePath: URI """ - The Node ID of the subject to modify. + The HTTP URL for the user. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "GistComment", "IssueComment", "PullRequestReviewComment"], abstractType: "Minimizable") + userUrl: URI } """ -Autogenerated return type of MinimizeComment +A curatable list of repositories relating to a repository owner, which defaults +to showing the most popular repositories they own. """ -type MinimizeCommentPayload { +type ProfileItemShowcase { """ - A unique identifier for the client performing the mutation. + Whether or not the owner has pinned any repositories or gists. """ - clientMutationId: String + hasPinnedItems: Boolean! """ - The comment that was minimized. + 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. """ - minimizedComment: Minimizable + items( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PinnableItemConnection! } """ -Autogenerated input type of MoveProjectCard +Represents any entity on GitHub that has a profile page. """ -input MoveProjectCardInput { +interface ProfileOwner { """ - Place the new card after the card with this id. Pass null to place it at the top. + Determine if this repository owner has any items that can be pinned to their profile. """ - afterCardId: ID @possibleTypes(concreteTypes: ["ProjectCard"]) + anyPinnableItems( + """ + Filter to only a particular kind of pinnable item. + """ + type: PinnableItemType + ): Boolean! """ - The id of the card to move. + The public profile email. """ - cardId: ID! @possibleTypes(concreteTypes: ["ProjectCard"]) + email: String + id: ID! """ - A unique identifier for the client performing the mutation. + Showcases a selection of repositories and gists that the profile owner has + either curated or that have been selected automatically based on popularity. """ - clientMutationId: String + itemShowcase: ProfileItemShowcase! """ - The id of the column to move it into. + The public profile location. """ - columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) -} + location: String -""" -Autogenerated return type of MoveProjectCard -""" -type MoveProjectCardPayload { """ - The new edge of the moved card. + The username used to login. """ - cardEdge: ProjectCardEdge + login: String! """ - A unique identifier for the client performing the mutation. + The public profile name. """ - clientMutationId: String -} + name: String -""" -Autogenerated input type of MoveProjectColumn -""" -input MoveProjectColumnInput { """ - Place the new column after the column with this id. Pass null to place it at the front. + A list of repositories and gists this profile owner can pin to their profile. """ - afterColumnId: ID @possibleTypes(concreteTypes: ["ProjectColumn"]) + pinnableItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter the types of pinnable items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - A unique identifier for the client performing the mutation. + A list of repositories and gists this profile owner has pinned to their profile """ - clientMutationId: String + pinnedItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter the types of pinned items that are returned. + """ + types: [PinnableItemType!] + ): PinnableItemConnection! """ - The id of the column to move. + Returns how many more items this profile owner can pin to their profile. """ - columnId: ID! @possibleTypes(concreteTypes: ["ProjectColumn"]) -} + pinnedItemsRemaining: Int! -""" -Autogenerated return type of MoveProjectColumn -""" -type MoveProjectColumnPayload { """ - A unique identifier for the client performing the mutation. + Can the viewer pin repositories and gists to the profile? """ - clientMutationId: String + viewerCanChangePinnedItems: Boolean! """ - The new edge of the moved column. + The public profile website URL. """ - columnEdge: ProjectColumnEdge + websiteUrl: URI } """ -Represents a 'moved_columns_in_project' event on a given issue or pull request. +Projects manage issues, pull requests and notes within a project owner. """ -type MovedColumnsInProjectEvent implements Node { +type Project implements Closable & Node & Updatable { """ - Identifies the actor who performed the event. + The project's description body. """ - actor: Actor + body: String """ - Identifies the date and time when the object was created. + The projects description body rendered to HTML. """ - createdAt: DateTime! + bodyHTML: HTML! """ - Identifies the primary key from the database. + Indicates if the object is closed (definition of closed may depend on type) """ - databaseId: Int - id: ID! + closed: Boolean! """ - Column name the issue or pull request was moved from. + Identifies the date and time when the object was closed. """ - previousProjectColumnName: String! @preview(toggledBy: "starfox-preview") + closedAt: DateTime """ - Project referenced by event. + List of columns in the project """ - project: Project @preview(toggledBy: "starfox-preview") + columns( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectColumnConnection! """ - Project card referenced by this project event. + Identifies the date and time when the object was created. """ - projectCard: ProjectCard @preview(toggledBy: "starfox-preview") + createdAt: DateTime! """ - Column name the issue or pull request was moved to. + The actor who originally created the project. """ - projectColumnName: String! @preview(toggledBy: "starfox-preview") -} + creator: Actor -""" -The root query for implementing GraphQL mutations. -""" -type Mutation { """ - Accepts a pending invitation for a user to become an administrator of an enterprise. + Identifies the primary key from the database. """ - acceptEnterpriseAdministratorInvitation( - """ - Parameters for AcceptEnterpriseAdministratorInvitation - """ - input: AcceptEnterpriseAdministratorInvitationInput! - ): AcceptEnterpriseAdministratorInvitationPayload + databaseId: Int + id: ID! """ - Applies a suggested topic to the repository. + The project's name. """ - acceptTopicSuggestion( - """ - Parameters for AcceptTopicSuggestion - """ - input: AcceptTopicSuggestionInput! - ): AcceptTopicSuggestionPayload + name: String! """ - Adds assignees to an assignable object. + The project's number. """ - addAssigneesToAssignable( - """ - Parameters for AddAssigneesToAssignable - """ - input: AddAssigneesToAssignableInput! - ): AddAssigneesToAssignablePayload + number: Int! """ - Adds a comment to an Issue or Pull Request. + The project's owner. Currently limited to repositories, organizations, and users. """ - addComment( - """ - Parameters for AddComment - """ - input: AddCommentInput! - ): AddCommentPayload + owner: ProjectOwner! """ - Adds a support entitlement to an enterprise member. + List of pending cards in this project """ - addEnterpriseSupportEntitlement( + pendingCards( """ - Parameters for AddEnterpriseSupportEntitlement + Returns the elements in the list that come after the specified cursor. """ - input: AddEnterpriseSupportEntitlementInput! - ): AddEnterpriseSupportEntitlementPayload + after: String - """ - Adds labels to a labelable object. - """ - addLabelsToLabelable( """ - Parameters for AddLabelsToLabelable + A list of archived states to filter the cards by """ - input: AddLabelsToLabelableInput! - ): AddLabelsToLabelablePayload + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectCardConnection! """ - Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both. + Project progress details. """ - addProjectCard( - """ - Parameters for AddProjectCard - """ - input: AddProjectCardInput! - ): AddProjectCardPayload + progress: ProjectProgress! """ - Adds a column to a Project. + The HTTP path for this project """ - addProjectColumn( - """ - Parameters for AddProjectColumn - """ - input: AddProjectColumnInput! - ): AddProjectColumnPayload + resourcePath: URI! """ - Adds a review to a Pull Request. + Whether the project is open or closed. """ - addPullRequestReview( - """ - Parameters for AddPullRequestReview - """ - input: AddPullRequestReviewInput! - ): AddPullRequestReviewPayload + state: ProjectState! """ - Adds a comment to a review. + Identifies the date and time when the object was last updated. """ - addPullRequestReviewComment( - """ - Parameters for AddPullRequestReviewComment - """ - input: AddPullRequestReviewCommentInput! - ): AddPullRequestReviewCommentPayload + updatedAt: DateTime! """ - Adds a new thread to a pending Pull Request Review. + The HTTP URL for this project """ - addPullRequestReviewThread( - """ - Parameters for AddPullRequestReviewThread - """ - input: AddPullRequestReviewThreadInput! - ): AddPullRequestReviewThreadPayload + url: URI! """ - Adds a reaction to a subject. + Indicates if the object can be closed by the viewer. """ - addReaction( - """ - Parameters for AddReaction - """ - input: AddReactionInput! - ): AddReactionPayload + viewerCanClose: Boolean! """ - Adds a star to a Starrable. + Indicates if the object can be reopened by the viewer. """ - addStar( - """ - Parameters for AddStar - """ - input: AddStarInput! - ): AddStarPayload + viewerCanReopen: Boolean! """ - Adds a verifiable domain to an owning account. + Check if the current viewer can update this object. """ - addVerifiableDomain( - """ - Parameters for AddVerifiableDomain - """ - input: AddVerifiableDomainInput! - ): AddVerifiableDomainPayload + viewerCanUpdate: Boolean! +} +""" +A card in a project. +""" +type ProjectCard implements Node { """ - Approve a verifiable domain for notification delivery. + 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. """ - approveVerifiableDomain( - """ - Parameters for ApproveVerifiableDomain - """ - input: ApproveVerifiableDomainInput! - ): ApproveVerifiableDomainPayload + column: ProjectColumn """ - Marks a repository as archived. + The card content item """ - archiveRepository( - """ - Parameters for ArchiveRepository - """ - input: ArchiveRepositoryInput! - ): ArchiveRepositoryPayload + content: ProjectCardItem """ - Cancels a pending invitation for an administrator to join an enterprise. + Identifies the date and time when the object was created. """ - cancelEnterpriseAdminInvitation( - """ - Parameters for CancelEnterpriseAdminInvitation - """ - input: CancelEnterpriseAdminInvitationInput! - ): CancelEnterpriseAdminInvitationPayload + createdAt: DateTime! """ - Update your status on GitHub. + The actor who created this card """ - changeUserStatus( - """ - Parameters for ChangeUserStatus - """ - input: ChangeUserStatusInput! - ): ChangeUserStatusPayload + creator: Actor """ - Clears all labels from a labelable object. + Identifies the primary key from the database. """ - clearLabelsFromLabelable( - """ - Parameters for ClearLabelsFromLabelable - """ - input: ClearLabelsFromLabelableInput! - ): ClearLabelsFromLabelablePayload + databaseId: Int + id: ID! """ - Creates a new project by cloning configuration from an existing project. + Whether the card is archived """ - cloneProject( - """ - Parameters for CloneProject - """ - input: CloneProjectInput! - ): CloneProjectPayload + isArchived: Boolean! """ - Create a new repository with the same files and directory structure as a template repository. + The card note """ - cloneTemplateRepository( - """ - Parameters for CloneTemplateRepository - """ - input: CloneTemplateRepositoryInput! - ): CloneTemplateRepositoryPayload + note: String """ - Close an issue. + The project that contains this card. """ - closeIssue( - """ - Parameters for CloseIssue - """ - input: CloseIssueInput! - ): CloseIssuePayload + project: Project! """ - Close a pull request. + The HTTP path for this card """ - closePullRequest( - """ - Parameters for ClosePullRequest - """ - input: ClosePullRequestInput! - ): ClosePullRequestPayload + resourcePath: URI! """ - Convert a project note card to one associated with a newly created issue. + The state of ProjectCard """ - convertProjectCardNoteToIssue( - """ - Parameters for ConvertProjectCardNoteToIssue - """ - input: ConvertProjectCardNoteToIssueInput! - ): ConvertProjectCardNoteToIssuePayload + state: ProjectCardState """ - Converts a pull request to draft + Identifies the date and time when the object was last updated. """ - convertPullRequestToDraft( - """ - Parameters for ConvertPullRequestToDraft - """ - input: ConvertPullRequestToDraftInput! - ): ConvertPullRequestToDraftPayload + updatedAt: DateTime! """ - Create a new branch protection rule + The HTTP URL for this card """ - createBranchProtectionRule( - """ - Parameters for CreateBranchProtectionRule - """ - input: CreateBranchProtectionRuleInput! - ): CreateBranchProtectionRulePayload + url: URI! +} +""" +The possible archived states of a project card. +""" +enum ProjectCardArchivedState { """ - Create a check run. + A project card that is archived """ - createCheckRun( - """ - Parameters for CreateCheckRun - """ - input: CreateCheckRunInput! - ): CreateCheckRunPayload + ARCHIVED """ - Create a check suite + A project card that is not archived """ - createCheckSuite( - """ - Parameters for CreateCheckSuite - """ - input: CreateCheckSuiteInput! - ): CreateCheckSuitePayload + NOT_ARCHIVED +} +""" +The connection type for ProjectCard. +""" +type ProjectCardConnection { """ - Create a content attachment. + A list of edges. """ - createContentAttachment( - """ - Parameters for CreateContentAttachment - """ - input: CreateContentAttachmentInput! - ): CreateContentAttachmentPayload @preview(toggledBy: "corsair-preview") + edges: [ProjectCardEdge] """ - Creates a new deployment event. + A list of nodes. """ - createDeployment( - """ - Parameters for CreateDeployment - """ - input: CreateDeploymentInput! - ): CreateDeploymentPayload @preview(toggledBy: "flash-preview") + nodes: [ProjectCard] """ - Create a deployment status. + Information to aid in pagination. """ - createDeploymentStatus( - """ - Parameters for CreateDeploymentStatus - """ - input: CreateDeploymentStatusInput! - ): CreateDeploymentStatusPayload @preview(toggledBy: "flash-preview") + pageInfo: PageInfo! """ - Creates an organization as part of an enterprise account. + Identifies the total count of items in the connection. """ - createEnterpriseOrganization( - """ - Parameters for CreateEnterpriseOrganization - """ - input: CreateEnterpriseOrganizationInput! - ): CreateEnterpriseOrganizationPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectCardEdge { """ - Creates a new IP allow list entry. + A cursor for use in pagination. """ - createIpAllowListEntry( - """ - Parameters for CreateIpAllowListEntry - """ - input: CreateIpAllowListEntryInput! - ): CreateIpAllowListEntryPayload + cursor: String! """ - Creates a new issue. + The item at the end of the edge. """ - createIssue( - """ - Parameters for CreateIssue - """ - input: CreateIssueInput! - ): CreateIssuePayload + node: ProjectCard +} +""" +An issue or PR and its owning repository to be used in a project card. +""" +input ProjectCardImport { """ - Creates a new label. + The issue or pull request number. """ - createLabel( - """ - Parameters for CreateLabel - """ - input: CreateLabelInput! - ): CreateLabelPayload @preview(toggledBy: "bane-preview") + number: Int! """ - Creates a new project. + Repository name with owner (owner/repository). """ - createProject( - """ - Parameters for CreateProject - """ - input: CreateProjectInput! - ): CreateProjectPayload + repository: String! +} + +""" +Types that can be inside Project Cards. +""" +union ProjectCardItem = Issue | PullRequest +""" +Various content states of a ProjectCard +""" +enum ProjectCardState { """ - Create a new pull request + The card has content only. """ - createPullRequest( - """ - Parameters for CreatePullRequest - """ - input: CreatePullRequestInput! - ): CreatePullRequestPayload + CONTENT_ONLY """ - Create a new Git Ref. + The card has a note only. """ - createRef( - """ - Parameters for CreateRef - """ - input: CreateRefInput! - ): CreateRefPayload + NOTE_ONLY """ - Create a new repository. + The card is redacted. """ - createRepository( - """ - Parameters for CreateRepository - """ - input: CreateRepositoryInput! - ): CreateRepositoryPayload + REDACTED +} +""" +A column inside a project. +""" +type ProjectColumn implements Node { """ - Creates a new team discussion. + List of cards in the column """ - createTeamDiscussion( + cards( """ - Parameters for CreateTeamDiscussion + Returns the elements in the list that come after the specified cursor. """ - input: CreateTeamDiscussionInput! - ): CreateTeamDiscussionPayload + after: String - """ - Creates a new team discussion comment. - """ - createTeamDiscussionComment( """ - Parameters for CreateTeamDiscussionComment + A list of archived states to filter the cards by """ - input: CreateTeamDiscussionCommentInput! - ): CreateTeamDiscussionCommentPayload + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - """ - Rejects a suggested topic for the repository. - """ - declineTopicSuggestion( """ - Parameters for DeclineTopicSuggestion + Returns the elements in the list that come before the specified cursor. """ - input: DeclineTopicSuggestionInput! - ): DeclineTopicSuggestionPayload + before: String - """ - Delete a branch protection rule - """ - deleteBranchProtectionRule( """ - Parameters for DeleteBranchProtectionRule + Returns the first _n_ elements from the list. """ - input: DeleteBranchProtectionRuleInput! - ): DeleteBranchProtectionRulePayload + first: Int - """ - Deletes a deployment. - """ - deleteDeployment( """ - Parameters for DeleteDeployment + Returns the last _n_ elements from the list. """ - input: DeleteDeploymentInput! - ): DeleteDeploymentPayload + last: Int + ): ProjectCardConnection! """ - Deletes an IP allow list entry. + Identifies the date and time when the object was created. """ - deleteIpAllowListEntry( - """ - Parameters for DeleteIpAllowListEntry - """ - input: DeleteIpAllowListEntryInput! - ): DeleteIpAllowListEntryPayload + createdAt: DateTime! """ - Deletes an Issue object. + Identifies the primary key from the database. """ - deleteIssue( - """ - Parameters for DeleteIssue - """ - input: DeleteIssueInput! - ): DeleteIssuePayload + databaseId: Int + id: ID! """ - Deletes an IssueComment object. + The project column's name. """ - deleteIssueComment( - """ - Parameters for DeleteIssueComment - """ - input: DeleteIssueCommentInput! - ): DeleteIssueCommentPayload + name: String! """ - Deletes a label. + The project that contains this column. """ - deleteLabel( - """ - Parameters for DeleteLabel - """ - input: DeleteLabelInput! - ): DeleteLabelPayload @preview(toggledBy: "bane-preview") + project: Project! """ - Delete a package version. + The semantic purpose of the column """ - deletePackageVersion( - """ - Parameters for DeletePackageVersion - """ - input: DeletePackageVersionInput! - ): DeletePackageVersionPayload @preview(toggledBy: "package-deletes-preview") + purpose: ProjectColumnPurpose """ - Deletes a project. + The HTTP path for this project column """ - deleteProject( - """ - Parameters for DeleteProject - """ - input: DeleteProjectInput! - ): DeleteProjectPayload + resourcePath: URI! """ - Deletes a project card. + Identifies the date and time when the object was last updated. """ - deleteProjectCard( - """ - Parameters for DeleteProjectCard - """ - input: DeleteProjectCardInput! - ): DeleteProjectCardPayload + updatedAt: DateTime! """ - Deletes a project column. + The HTTP URL for this project column """ - deleteProjectColumn( - """ - Parameters for DeleteProjectColumn - """ - input: DeleteProjectColumnInput! - ): DeleteProjectColumnPayload + url: URI! +} +""" +The connection type for ProjectColumn. +""" +type ProjectColumnConnection { """ - Deletes a pull request review. + A list of edges. """ - deletePullRequestReview( - """ - Parameters for DeletePullRequestReview - """ - input: DeletePullRequestReviewInput! - ): DeletePullRequestReviewPayload + edges: [ProjectColumnEdge] """ - Deletes a pull request review comment. + A list of nodes. """ - deletePullRequestReviewComment( - """ - Parameters for DeletePullRequestReviewComment - """ - input: DeletePullRequestReviewCommentInput! - ): DeletePullRequestReviewCommentPayload + nodes: [ProjectColumn] """ - Delete a Git Ref. + Information to aid in pagination. """ - deleteRef( - """ - Parameters for DeleteRef - """ - input: DeleteRefInput! - ): DeleteRefPayload + pageInfo: PageInfo! """ - Deletes a team discussion. + Identifies the total count of items in the connection. """ - deleteTeamDiscussion( - """ - Parameters for DeleteTeamDiscussion - """ - input: DeleteTeamDiscussionInput! - ): DeleteTeamDiscussionPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectColumnEdge { """ - Deletes a team discussion comment. + A cursor for use in pagination. """ - deleteTeamDiscussionComment( - """ - Parameters for DeleteTeamDiscussionComment - """ - input: DeleteTeamDiscussionCommentInput! - ): DeleteTeamDiscussionCommentPayload + cursor: String! + + """ + The item at the end of the edge. + """ + node: ProjectColumn +} +""" +A project column and a list of its issues and PRs. +""" +input ProjectColumnImport { """ - Deletes a verifiable domain. + The name of the column. """ - deleteVerifiableDomain( - """ - Parameters for DeleteVerifiableDomain - """ - input: DeleteVerifiableDomainInput! - ): DeleteVerifiableDomainPayload + columnName: String! """ - Disable auto merge on the given pull request + A list of issues and pull requests in the column. """ - disablePullRequestAutoMerge( - """ - Parameters for DisablePullRequestAutoMerge - """ - input: DisablePullRequestAutoMergeInput! - ): DisablePullRequestAutoMergePayload + issues: [ProjectCardImport!] """ - Dismisses an approved or rejected pull request review. + The position of the column, starting from 0. """ - dismissPullRequestReview( - """ - Parameters for DismissPullRequestReview - """ - input: DismissPullRequestReviewInput! - ): DismissPullRequestReviewPayload + position: Int! +} +""" +The semantic purpose of the column - todo, in progress, or done. +""" +enum ProjectColumnPurpose { """ - Enable the default auto-merge on a pull request. + The column contains cards which are complete """ - enablePullRequestAutoMerge( - """ - Parameters for EnablePullRequestAutoMerge - """ - input: EnablePullRequestAutoMergeInput! - ): EnablePullRequestAutoMergePayload + DONE """ - Follow a user. + The column contains cards which are currently being worked on """ - followUser( - """ - Parameters for FollowUser - """ - input: FollowUserInput! - ): FollowUserPayload + IN_PROGRESS """ - Creates a new project by importing columns and a list of issues/PRs. + The column contains cards still to be worked on """ - importProject( - """ - Parameters for ImportProject - """ - input: ImportProjectInput! - ): ImportProjectPayload @preview(toggledBy: "slothette-preview") + TODO +} +""" +A list of projects associated with the owner. +""" +type ProjectConnection { """ - Invite someone to become an administrator of the enterprise. + A list of edges. """ - inviteEnterpriseAdmin( - """ - Parameters for InviteEnterpriseAdmin - """ - input: InviteEnterpriseAdminInput! - ): InviteEnterpriseAdminPayload + edges: [ProjectEdge] """ - Creates a repository link for a project. + A list of nodes. """ - linkRepositoryToProject( - """ - Parameters for LinkRepositoryToProject - """ - input: LinkRepositoryToProjectInput! - ): LinkRepositoryToProjectPayload + nodes: [Project] """ - Lock a lockable object + Information to aid in pagination. """ - lockLockable( - """ - Parameters for LockLockable - """ - input: LockLockableInput! - ): LockLockablePayload + pageInfo: PageInfo! """ - Mark a pull request file as viewed + Identifies the total count of items in the connection. """ - markFileAsViewed( - """ - Parameters for MarkFileAsViewed - """ - input: MarkFileAsViewedInput! - ): MarkFileAsViewedPayload + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectEdge { """ - Marks a pull request ready for review. + A cursor for use in pagination. """ - markPullRequestReadyForReview( - """ - Parameters for MarkPullRequestReadyForReview - """ - input: MarkPullRequestReadyForReviewInput! - ): MarkPullRequestReadyForReviewPayload + cursor: String! """ - Merge a head into a branch. + The item at the end of the edge. """ - mergeBranch( - """ - Parameters for MergeBranch - """ - input: MergeBranchInput! - ): MergeBranchPayload + node: Project +} +""" +Ways in which lists of projects can be ordered upon return. +""" +input ProjectOrder { """ - Merge a pull request. + The direction in which to order projects by the specified field. """ - mergePullRequest( - """ - Parameters for MergePullRequest - """ - input: MergePullRequestInput! - ): MergePullRequestPayload + direction: OrderDirection! """ - Minimizes a comment on an Issue, Commit, Pull Request, or Gist + The field in which to order projects by. """ - minimizeComment( - """ - Parameters for MinimizeComment - """ - input: MinimizeCommentInput! - ): MinimizeCommentPayload + field: ProjectOrderField! +} +""" +Properties by which project connections can be ordered. +""" +enum ProjectOrderField { """ - Moves a project card to another place. + Order projects by creation time """ - moveProjectCard( - """ - Parameters for MoveProjectCard - """ - input: MoveProjectCardInput! - ): MoveProjectCardPayload + CREATED_AT """ - Moves a project column to another place. + Order projects by name """ - moveProjectColumn( - """ - Parameters for MoveProjectColumn - """ - input: MoveProjectColumnInput! - ): MoveProjectColumnPayload + NAME """ - Pin an issue to a repository + Order projects by update time """ - pinIssue( - """ - Parameters for PinIssue - """ - input: PinIssueInput! - ): PinIssuePayload + UPDATED_AT +} + +""" +Represents an owner of a Project. +""" +interface ProjectOwner { + id: ID! """ - Regenerates the identity provider recovery codes for an enterprise + Find project by number. """ - regenerateEnterpriseIdentityProviderRecoveryCodes( + project( """ - Parameters for RegenerateEnterpriseIdentityProviderRecoveryCodes + The project number to find. """ - input: RegenerateEnterpriseIdentityProviderRecoveryCodesInput! - ): RegenerateEnterpriseIdentityProviderRecoveryCodesPayload + number: Int! + ): Project """ - Regenerates a verifiable domain's verification token. + A list of projects under the owner. """ - regenerateVerifiableDomainToken( + projects( """ - Parameters for RegenerateVerifiableDomainToken + Returns the elements in the list that come after the specified cursor. """ - input: RegenerateVerifiableDomainTokenInput! - ): RegenerateVerifiableDomainTokenPayload + after: String - """ - Removes assignees from an assignable object. - """ - removeAssigneesFromAssignable( """ - Parameters for RemoveAssigneesFromAssignable + Returns the elements in the list that come before the specified cursor. """ - input: RemoveAssigneesFromAssignableInput! - ): RemoveAssigneesFromAssignablePayload + before: String - """ - Removes an administrator from the enterprise. - """ - removeEnterpriseAdmin( """ - Parameters for RemoveEnterpriseAdmin + Returns the first _n_ elements from the list. """ - input: RemoveEnterpriseAdminInput! - ): RemoveEnterpriseAdminPayload + first: Int - """ - Removes the identity provider from an enterprise - """ - removeEnterpriseIdentityProvider( """ - Parameters for RemoveEnterpriseIdentityProvider + Returns the last _n_ elements from the list. """ - input: RemoveEnterpriseIdentityProviderInput! - ): RemoveEnterpriseIdentityProviderPayload + last: Int - """ - Removes an organization from the enterprise - """ - removeEnterpriseOrganization( """ - Parameters for RemoveEnterpriseOrganization + Ordering options for projects returned from the connection """ - input: RemoveEnterpriseOrganizationInput! - ): RemoveEnterpriseOrganizationPayload + orderBy: ProjectOrder - """ - Removes a support entitlement from an enterprise member. - """ - removeEnterpriseSupportEntitlement( """ - Parameters for RemoveEnterpriseSupportEntitlement + Query to search projects by, currently only searching by name. """ - input: RemoveEnterpriseSupportEntitlementInput! - ): RemoveEnterpriseSupportEntitlementPayload + search: String - """ - Removes labels from a Labelable object. - """ - removeLabelsFromLabelable( """ - Parameters for RemoveLabelsFromLabelable + A list of states to filter the projects by. """ - input: RemoveLabelsFromLabelableInput! - ): RemoveLabelsFromLabelablePayload + states: [ProjectState!] + ): ProjectConnection! """ - Removes outside collaborator from all repositories in an organization. + The HTTP path listing owners projects """ - removeOutsideCollaborator( - """ - Parameters for RemoveOutsideCollaborator - """ - input: RemoveOutsideCollaboratorInput! - ): RemoveOutsideCollaboratorPayload + projectsResourcePath: URI! """ - Removes a reaction from a subject. + The HTTP URL listing owners projects """ - removeReaction( - """ - Parameters for RemoveReaction - """ - input: RemoveReactionInput! - ): RemoveReactionPayload + projectsUrl: URI! """ - Removes a star from a Starrable. + Can the current viewer create new projects on this owner. """ - removeStar( - """ - Parameters for RemoveStar - """ - input: RemoveStarInput! - ): RemoveStarPayload + viewerCanCreateProjects: Boolean! +} +""" +Project progress stats. +""" +type ProjectProgress { """ - Reopen a issue. + The number of done cards. """ - reopenIssue( - """ - Parameters for ReopenIssue - """ - input: ReopenIssueInput! - ): ReopenIssuePayload + doneCount: Int! """ - Reopen a pull request. + The percentage of done cards. """ - reopenPullRequest( - """ - Parameters for ReopenPullRequest - """ - input: ReopenPullRequestInput! - ): ReopenPullRequestPayload + donePercentage: Float! """ - Set review requests on a pull request. + Whether progress tracking is enabled and cards with purpose exist for this project """ - requestReviews( - """ - Parameters for RequestReviews - """ - input: RequestReviewsInput! - ): RequestReviewsPayload + enabled: Boolean! """ - Rerequests an existing check suite. + The number of in-progress cards. """ - rerequestCheckSuite( - """ - Parameters for RerequestCheckSuite - """ - input: RerequestCheckSuiteInput! - ): RerequestCheckSuitePayload + inProgressCount: Int! """ - Marks a review thread as resolved. + The percentage of in-progress cards. """ - resolveReviewThread( - """ - Parameters for ResolveReviewThread - """ - input: ResolveReviewThreadInput! - ): ResolveReviewThreadPayload + inProgressPercentage: Float! """ - Creates or updates the identity provider for an enterprise. + The number of to do cards. """ - setEnterpriseIdentityProvider( - """ - Parameters for SetEnterpriseIdentityProvider - """ - input: SetEnterpriseIdentityProviderInput! - ): SetEnterpriseIdentityProviderPayload + todoCount: Int! """ - Set an organization level interaction limit for an organization's public repositories. + The percentage of to do cards. """ - setOrganizationInteractionLimit( - """ - Parameters for SetOrganizationInteractionLimit - """ - input: SetOrganizationInteractionLimitInput! - ): SetOrganizationInteractionLimitPayload + todoPercentage: Float! +} +""" +State of the project; either 'open' or 'closed' +""" +enum ProjectState { """ - Sets an interaction limit setting for a repository. + The project is closed. """ - setRepositoryInteractionLimit( - """ - Parameters for SetRepositoryInteractionLimit - """ - input: SetRepositoryInteractionLimitInput! - ): SetRepositoryInteractionLimitPayload + CLOSED """ - Set a user level interaction limit for an user's public repositories. + The project is open. """ - setUserInteractionLimit( - """ - Parameters for SetUserInteractionLimit - """ - input: SetUserInteractionLimitInput! - ): SetUserInteractionLimitPayload + OPEN +} +""" +GitHub-provided templates for Projects +""" +enum ProjectTemplate { """ - Submits a pending pull request review. + Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns. """ - submitPullRequestReview( - """ - Parameters for SubmitPullRequestReview - """ - input: SubmitPullRequestReviewInput! - ): SubmitPullRequestReviewPayload + AUTOMATED_KANBAN_V2 """ - Transfer an issue to a different repository + Create a board with triggers to automatically move cards across columns with review automation. """ - transferIssue( - """ - Parameters for TransferIssue - """ - input: TransferIssueInput! - ): TransferIssuePayload + AUTOMATED_REVIEWS_KANBAN """ - Unarchives a repository. + Create a board with columns for To do, In progress and Done. """ - unarchiveRepository( - """ - Parameters for UnarchiveRepository - """ - input: UnarchiveRepositoryInput! - ): UnarchiveRepositoryPayload + BASIC_KANBAN """ - Unfollow a user. + Create a board to triage and prioritize bugs with To do, priority, and Done columns. """ - unfollowUser( - """ - Parameters for UnfollowUser - """ - input: UnfollowUserInput! - ): UnfollowUserPayload + BUG_TRIAGE +} +""" +New projects that manage issues, pull requests and drafts using tables and boards. +""" +type ProjectV2 implements Closable & Node & Updatable { """ - Deletes a repository link from a project. + Returns true if the project is closed. """ - unlinkRepositoryFromProject( - """ - Parameters for UnlinkRepositoryFromProject - """ - input: UnlinkRepositoryFromProjectInput! - ): UnlinkRepositoryFromProjectPayload + closed: Boolean! """ - Unlock a lockable object + Identifies the date and time when the object was closed. """ - unlockLockable( - """ - Parameters for UnlockLockable - """ - input: UnlockLockableInput! - ): UnlockLockablePayload + closedAt: DateTime """ - Unmark a pull request file as viewed + Identifies the date and time when the object was created. """ - unmarkFileAsViewed( - """ - Parameters for UnmarkFileAsViewed - """ - input: UnmarkFileAsViewedInput! - ): UnmarkFileAsViewedPayload + createdAt: DateTime! """ - Unmark an issue as a duplicate of another issue. + The actor who originally created the project. """ - unmarkIssueAsDuplicate( - """ - Parameters for UnmarkIssueAsDuplicate - """ - input: UnmarkIssueAsDuplicateInput! - ): UnmarkIssueAsDuplicatePayload + creator: Actor """ - Unminimizes a comment on an Issue, Commit, Pull Request, or Gist + Identifies the primary key from the database. """ - unminimizeComment( - """ - Parameters for UnminimizeComment - """ - input: UnminimizeCommentInput! - ): UnminimizeCommentPayload + databaseId: Int """ - Unpin a pinned issue from a repository + A field of the project """ - unpinIssue( + field( """ - Parameters for UnpinIssue + The name of the field """ - input: UnpinIssueInput! - ): UnpinIssuePayload + name: String! + ): ProjectV2FieldConfiguration """ - Marks a review thread as unresolved. + List of fields and their constraints in the project """ - unresolveReviewThread( + fields( """ - Parameters for UnresolveReviewThread + Returns the elements in the list that come after the specified cursor. """ - input: UnresolveReviewThreadInput! - ): UnresolveReviewThreadPayload + after: String - """ - Create a new branch protection rule - """ - updateBranchProtectionRule( """ - Parameters for UpdateBranchProtectionRule + Returns the elements in the list that come before the specified cursor. """ - input: UpdateBranchProtectionRuleInput! - ): UpdateBranchProtectionRulePayload + before: String - """ - Update a check run - """ - updateCheckRun( """ - Parameters for UpdateCheckRun + Returns the first _n_ elements from the list. """ - input: UpdateCheckRunInput! - ): UpdateCheckRunPayload + first: Int - """ - Modifies the settings of an existing check suite - """ - updateCheckSuitePreferences( """ - Parameters for UpdateCheckSuitePreferences + Returns the last _n_ elements from the list. """ - input: UpdateCheckSuitePreferencesInput! - ): UpdateCheckSuitePreferencesPayload + last: Int - """ - Updates the role of an enterprise administrator. - """ - updateEnterpriseAdministratorRole( """ - Parameters for UpdateEnterpriseAdministratorRole + Ordering options for project v2 fields returned from the connection """ - input: UpdateEnterpriseAdministratorRoleInput! - ): UpdateEnterpriseAdministratorRolePayload + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection! + id: ID! """ - Sets whether private repository forks are enabled for an enterprise. + List of items in the project """ - updateEnterpriseAllowPrivateRepositoryForkingSetting( + items( """ - Parameters for UpdateEnterpriseAllowPrivateRepositoryForkingSetting + Returns the elements in the list that come after the specified cursor. """ - input: UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput! - ): UpdateEnterpriseAllowPrivateRepositoryForkingSettingPayload + after: String - """ - Sets the default repository permission for organizations in an enterprise. - """ - updateEnterpriseDefaultRepositoryPermissionSetting( """ - Parameters for UpdateEnterpriseDefaultRepositoryPermissionSetting + Returns the elements in the list that come before the specified cursor. """ - input: UpdateEnterpriseDefaultRepositoryPermissionSettingInput! - ): UpdateEnterpriseDefaultRepositoryPermissionSettingPayload + before: String - """ - Sets whether organization members with admin permissions on a repository can change repository visibility. - """ - updateEnterpriseMembersCanChangeRepositoryVisibilitySetting( """ - Parameters for UpdateEnterpriseMembersCanChangeRepositoryVisibilitySetting + Returns the first _n_ elements from the list. """ - input: UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingInput! - ): UpdateEnterpriseMembersCanChangeRepositoryVisibilitySettingPayload + first: Int - """ - Sets the members can create repositories setting for an enterprise. - """ - updateEnterpriseMembersCanCreateRepositoriesSetting( """ - Parameters for UpdateEnterpriseMembersCanCreateRepositoriesSetting + Returns the last _n_ elements from the list. """ - input: UpdateEnterpriseMembersCanCreateRepositoriesSettingInput! - ): UpdateEnterpriseMembersCanCreateRepositoriesSettingPayload + last: Int - """ - Sets the members can delete issues setting for an enterprise. - """ - updateEnterpriseMembersCanDeleteIssuesSetting( """ - Parameters for UpdateEnterpriseMembersCanDeleteIssuesSetting + Ordering options for project v2 items returned from the connection """ - input: UpdateEnterpriseMembersCanDeleteIssuesSettingInput! - ): UpdateEnterpriseMembersCanDeleteIssuesSettingPayload + orderBy: ProjectV2ItemOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemConnection! """ - Sets the members can delete repositories setting for an enterprise. + The project's number. """ - updateEnterpriseMembersCanDeleteRepositoriesSetting( - """ - Parameters for UpdateEnterpriseMembersCanDeleteRepositoriesSetting - """ - input: UpdateEnterpriseMembersCanDeleteRepositoriesSettingInput! - ): UpdateEnterpriseMembersCanDeleteRepositoriesSettingPayload + number: Int! """ - Sets whether members can invite collaborators are enabled for an enterprise. + The project's owner. Currently limited to organizations and users. """ - updateEnterpriseMembersCanInviteCollaboratorsSetting( - """ - Parameters for UpdateEnterpriseMembersCanInviteCollaboratorsSetting - """ - input: UpdateEnterpriseMembersCanInviteCollaboratorsSettingInput! - ): UpdateEnterpriseMembersCanInviteCollaboratorsSettingPayload + owner: ProjectV2Owner! """ - Sets whether or not an organization admin can make purchases. + Returns true if the project is public. """ - updateEnterpriseMembersCanMakePurchasesSetting( - """ - Parameters for UpdateEnterpriseMembersCanMakePurchasesSetting - """ - input: UpdateEnterpriseMembersCanMakePurchasesSettingInput! - ): UpdateEnterpriseMembersCanMakePurchasesSettingPayload + public: Boolean! """ - Sets the members can update protected branches setting for an enterprise. + The project's readme. """ - updateEnterpriseMembersCanUpdateProtectedBranchesSetting( - """ - Parameters for UpdateEnterpriseMembersCanUpdateProtectedBranchesSetting - """ - input: UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingInput! - ): UpdateEnterpriseMembersCanUpdateProtectedBranchesSettingPayload + readme: String """ - Sets the members can view dependency insights for an enterprise. + The repositories the project is linked to. """ - updateEnterpriseMembersCanViewDependencyInsightsSetting( + repositories( """ - Parameters for UpdateEnterpriseMembersCanViewDependencyInsightsSetting + Returns the elements in the list that come after the specified cursor. """ - input: UpdateEnterpriseMembersCanViewDependencyInsightsSettingInput! - ): UpdateEnterpriseMembersCanViewDependencyInsightsSettingPayload + after: String - """ - Sets whether organization projects are enabled for an enterprise. - """ - updateEnterpriseOrganizationProjectsSetting( """ - Parameters for UpdateEnterpriseOrganizationProjectsSetting + Returns the elements in the list that come before the specified cursor. """ - input: UpdateEnterpriseOrganizationProjectsSettingInput! - ): UpdateEnterpriseOrganizationProjectsSettingPayload + before: String - """ - Updates an enterprise's profile. - """ - updateEnterpriseProfile( """ - Parameters for UpdateEnterpriseProfile + Returns the first _n_ elements from the list. """ - input: UpdateEnterpriseProfileInput! - ): UpdateEnterpriseProfilePayload + first: Int - """ - Sets whether repository projects are enabled for a enterprise. - """ - updateEnterpriseRepositoryProjectsSetting( """ - Parameters for UpdateEnterpriseRepositoryProjectsSetting + Returns the last _n_ elements from the list. """ - input: UpdateEnterpriseRepositoryProjectsSettingInput! - ): UpdateEnterpriseRepositoryProjectsSettingPayload + last: Int - """ - Sets whether team discussions are enabled for an enterprise. - """ - updateEnterpriseTeamDiscussionsSetting( """ - Parameters for UpdateEnterpriseTeamDiscussionsSetting + Ordering options for repositories returned from the connection """ - input: UpdateEnterpriseTeamDiscussionsSettingInput! - ): UpdateEnterpriseTeamDiscussionsSettingPayload + orderBy: RepositoryOrder = {field: CREATED_AT, direction: DESC} + ): RepositoryConnection! """ - Sets whether two factor authentication is required for all users in an enterprise. + The HTTP path for this project """ - updateEnterpriseTwoFactorAuthenticationRequiredSetting( - """ - Parameters for UpdateEnterpriseTwoFactorAuthenticationRequiredSetting - """ - input: UpdateEnterpriseTwoFactorAuthenticationRequiredSettingInput! - ): UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload + resourcePath: URI! """ - Sets whether an IP allow list is enabled on an owner. + The project's short description. """ - updateIpAllowListEnabledSetting( - """ - Parameters for UpdateIpAllowListEnabledSetting - """ - input: UpdateIpAllowListEnabledSettingInput! - ): UpdateIpAllowListEnabledSettingPayload + shortDescription: String """ - Updates an IP allow list entry. + The teams the project is linked to. """ - updateIpAllowListEntry( + teams( """ - Parameters for UpdateIpAllowListEntry + Returns the elements in the list that come after the specified cursor. """ - input: UpdateIpAllowListEntryInput! - ): UpdateIpAllowListEntryPayload + after: String - """ - Updates an Issue. - """ - updateIssue( """ - Parameters for UpdateIssue + Returns the elements in the list that come before the specified cursor. """ - input: UpdateIssueInput! - ): UpdateIssuePayload + before: String - """ - Updates an IssueComment object. - """ - updateIssueComment( """ - Parameters for UpdateIssueComment + Returns the first _n_ elements from the list. """ - input: UpdateIssueCommentInput! - ): UpdateIssueCommentPayload + first: Int - """ - Updates an existing label. - """ - updateLabel( """ - Parameters for UpdateLabel + Returns the last _n_ elements from the list. """ - input: UpdateLabelInput! - ): UpdateLabelPayload @preview(toggledBy: "bane-preview") + last: Int - """ - Update the setting to restrict notifications to only verified domains available to an owner. - """ - updateNotificationRestrictionSetting( """ - Parameters for UpdateNotificationRestrictionSetting + Ordering options for teams returned from this connection. """ - input: UpdateNotificationRestrictionSettingInput! - ): UpdateNotificationRestrictionSettingPayload + orderBy: TeamOrder = {field: NAME, direction: ASC} + ): TeamConnection! """ - Updates an existing project. + Returns true if this project is a template. """ - updateProject( - """ - Parameters for UpdateProject - """ - input: UpdateProjectInput! - ): UpdateProjectPayload + template: Boolean! """ - Updates an existing project card. + The project's name. """ - updateProjectCard( - """ - Parameters for UpdateProjectCard - """ - input: UpdateProjectCardInput! - ): UpdateProjectCardPayload + title: String! """ - Updates an existing project column. + Identifies the date and time when the object was last updated. """ - updateProjectColumn( - """ - Parameters for UpdateProjectColumn - """ - input: UpdateProjectColumnInput! - ): UpdateProjectColumnPayload + updatedAt: DateTime! """ - Update a pull request + The HTTP URL for this project """ - updatePullRequest( - """ - Parameters for UpdatePullRequest - """ - input: UpdatePullRequestInput! - ): UpdatePullRequestPayload + url: URI! """ - Updates the body of a pull request review. + A view of the project """ - updatePullRequestReview( + view( """ - Parameters for UpdatePullRequestReview + The number of a view belonging to the project """ - input: UpdatePullRequestReviewInput! - ): UpdatePullRequestReviewPayload + number: Int! + ): ProjectV2View """ - Updates a pull request review comment. + Indicates if the object can be closed by the viewer. """ - updatePullRequestReviewComment( - """ - Parameters for UpdatePullRequestReviewComment - """ - input: UpdatePullRequestReviewCommentInput! - ): UpdatePullRequestReviewCommentPayload + viewerCanClose: Boolean! """ - Update a Git Ref. + Indicates if the object can be reopened by the viewer. """ - updateRef( - """ - Parameters for UpdateRef - """ - input: UpdateRefInput! - ): UpdateRefPayload + viewerCanReopen: Boolean! """ - Creates, updates and/or deletes multiple refs in a repository. + Check if the current viewer can update this object. + """ + viewerCanUpdate: Boolean! - This mutation takes a list of `RefUpdate`s and performs these updates - on the repository. All updates are performed atomically, meaning that - if one of them is rejected, no other ref will be modified. + """ + List of views in the project + """ + views( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - `RefUpdate.beforeOid` specifies that the given reference needs to point - to the given value before performing any updates. A value of - `0000000000000000000000000000000000000000` can be used to verify that - the references should not exist. + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - `RefUpdate.afterOid` specifies the value that the given reference - will point to after performing all updates. A value of - `0000000000000000000000000000000000000000` can be used to delete a - reference. + """ + Returns the first _n_ elements from the list. + """ + first: Int - If `RefUpdate.force` is set to `true`, a non-fast-forward updates - for the given reference will be allowed. - """ - updateRefs( """ - Parameters for UpdateRefs + Returns the last _n_ elements from the list. """ - input: UpdateRefsInput! - ): UpdateRefsPayload @preview(toggledBy: "update-refs-preview") + last: Int - """ - Update information about a repository. - """ - updateRepository( """ - Parameters for UpdateRepository + Ordering options for project v2 views returned from the connection """ - input: UpdateRepositoryInput! - ): UpdateRepositoryPayload + orderBy: ProjectV2ViewOrder = {field: POSITION, direction: ASC} + ): ProjectV2ViewConnection! """ - Updates the state for subscribable subjects. + A workflow of the project """ - updateSubscription( + workflow( """ - Parameters for UpdateSubscription + The number of a workflow belonging to the project """ - input: UpdateSubscriptionInput! - ): UpdateSubscriptionPayload + number: Int! + ): ProjectV2Workflow """ - Updates a team discussion. + List of the workflows in the project """ - updateTeamDiscussion( + workflows( """ - Parameters for UpdateTeamDiscussion + Returns the elements in the list that come after the specified cursor. """ - input: UpdateTeamDiscussionInput! - ): UpdateTeamDiscussionPayload + after: String - """ - Updates a discussion comment. - """ - updateTeamDiscussionComment( """ - Parameters for UpdateTeamDiscussionComment + Returns the elements in the list that come before the specified cursor. """ - input: UpdateTeamDiscussionCommentInput! - ): UpdateTeamDiscussionCommentPayload + before: String - """ - Updates team review assignment. - """ - updateTeamReviewAssignment( """ - Parameters for UpdateTeamReviewAssignment + Returns the first _n_ elements from the list. """ - input: UpdateTeamReviewAssignmentInput! - ): UpdateTeamReviewAssignmentPayload @preview(toggledBy: "stone-crop-preview") + first: Int - """ - Replaces the repository's topics with the given topics. - """ - updateTopics( """ - Parameters for UpdateTopics + Returns the last _n_ elements from the list. """ - input: UpdateTopicsInput! - ): UpdateTopicsPayload + last: Int - """ - Verify that a verifiable domain has the expected DNS record. - """ - verifyVerifiableDomain( """ - Parameters for VerifyVerifiableDomain + Ordering options for project v2 workflows returned from the connection """ - input: VerifyVerifiableDomainInput! - ): VerifyVerifiableDomainPayload + orderBy: ProjectV2WorkflowOrder = {field: NAME, direction: ASC} + ): ProjectV2WorkflowConnection! } """ -An object with an ID. +Possible collaborators for a project. """ -interface Node { +union ProjectV2Actor = Team | User + +""" +The connection type for ProjectV2Actor. +""" +type ProjectV2ActorConnection { """ - ID of the object. + A list of edges. """ - id: ID! + edges: [ProjectV2ActorEdge] + + """ + A list of nodes. + """ + nodes: [ProjectV2Actor] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -The possible values for the notification restriction setting. +An edge in a connection. """ -enum NotificationRestrictionSettingValue { +type ProjectV2ActorEdge { """ - The setting is disabled for the owner. + A cursor for use in pagination. """ - DISABLED + cursor: String! """ - The setting is enabled for the owner. + The item at the end of the edge. """ - ENABLED + node: ProjectV2Actor } """ -Metadata for an audit entry with action oauth_application.* +A collaborator to update on a project. Only one of the userId or teamId should be provided. """ -interface OauthApplicationAuditEntryData { +input ProjectV2Collaborator { """ - The name of the OAuth Application. + The role to grant the collaborator """ - oauthApplicationName: String + role: ProjectV2Roles! """ - The HTTP path for the OAuth Application + The ID of the team as a collaborator. """ - oauthApplicationResourcePath: URI + teamId: ID @possibleTypes(concreteTypes: ["Team"]) """ - The HTTP URL for the OAuth Application + The ID of the user as a collaborator. """ - oauthApplicationUrl: URI + userId: ID @possibleTypes(concreteTypes: ["User"]) } """ -Audit log entry for a oauth_application.create event. +The connection type for ProjectV2. """ -type OauthApplicationCreateAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { +type ProjectV2Connection { """ - The action name + A list of edges. """ - action: String! + edges: [ProjectV2Edge] """ - The user who initiated the action + A list of nodes. """ - actor: AuditEntryActor + nodes: [ProjectV2] """ - The IP address of the actor + Information to aid in pagination. """ - actorIp: String + pageInfo: PageInfo! """ - A readable representation of the actor's location + Identifies the total count of items in the connection. """ - actorLocation: ActorLocation + totalCount: Int! +} +""" +The type of a project field. +""" +enum ProjectV2CustomFieldType { """ - The username of the user who initiated the action + Date """ - actorLogin: String + DATE """ - The HTTP path for the actor. + Number """ - actorResourcePath: URI + NUMBER """ - The HTTP URL for the actor. + Single Select """ - actorUrl: URI + SINGLE_SELECT """ - The application URL of the OAuth Application. + Text """ - applicationUrl: URI + TEXT +} +""" +An edge in a connection. +""" +type ProjectV2Edge { """ - The callback URL of the OAuth Application. + A cursor for use in pagination. """ - callbackUrl: URI + cursor: String! """ - The time the action was initiated + The item at the end of the edge. """ - createdAt: PreciseDateTime! - id: ID! + node: ProjectV2 +} +""" +A field inside a project. +""" +type ProjectV2Field implements Node & ProjectV2FieldCommon { """ - The name of the OAuth Application. + Identifies the date and time when the object was created. """ - oauthApplicationName: String + createdAt: DateTime! """ - The HTTP path for the OAuth Application + The field's type. """ - oauthApplicationResourcePath: URI + dataType: ProjectV2FieldType! """ - The HTTP URL for the OAuth Application + Identifies the primary key from the database. """ - oauthApplicationUrl: URI + databaseId: Int + id: ID! """ - The corresponding operation type for the action + The project field's name. """ - operationType: OperationType + name: String! """ - The Organization associated with the Audit Entry. + The project that contains this field. """ - organization: Organization + project: ProjectV2! """ - The name of the Organization. + Identifies the date and time when the object was last updated. """ - organizationName: String + updatedAt: DateTime! +} +""" +Common fields across different project field types +""" +interface ProjectV2FieldCommon { """ - The HTTP path for the organization + Identifies the date and time when the object was created. """ - organizationResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the organization + The field's type. """ - organizationUrl: URI + dataType: ProjectV2FieldType! """ - The rate limit of the OAuth Application. + Identifies the primary key from the database. """ - rateLimit: Int + databaseId: Int + id: ID! """ - The state of the OAuth Application. + The project field's name. """ - state: OauthApplicationCreateAuditEntryState + name: String! """ - The user affected by the action + The project that contains this field. """ - user: User + project: ProjectV2! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the date and time when the object was last updated. """ - userLogin: String + updatedAt: DateTime! +} - """ - The HTTP path for the user. - """ - userResourcePath: URI +""" +Configurations for project fields. +""" +union ProjectV2FieldConfiguration = ProjectV2Field | ProjectV2IterationField | ProjectV2SingleSelectField +""" +The connection type for ProjectV2FieldConfiguration. +""" +type ProjectV2FieldConfigurationConnection { """ - The HTTP URL for the user. + A list of edges. """ - userUrl: URI -} + edges: [ProjectV2FieldConfigurationEdge] -""" -The state of an OAuth Application when it was created. -""" -enum OauthApplicationCreateAuditEntryState { """ - The OAuth Application was active and allowed to have OAuth Accesses. + A list of nodes. """ - ACTIVE + nodes: [ProjectV2FieldConfiguration] """ - The OAuth Application was in the process of being deleted. + Information to aid in pagination. """ - PENDING_DELETION + pageInfo: PageInfo! """ - The OAuth Application was suspended from generating OAuth Accesses due to abuse or security concerns. + Identifies the total count of items in the connection. """ - SUSPENDED + totalCount: Int! } """ -The corresponding operation type for the action +An edge in a connection. """ -enum OperationType { +type ProjectV2FieldConfigurationEdge { """ - An existing resource was accessed + A cursor for use in pagination. """ - ACCESS + cursor: String! """ - A resource performed an authentication event + The item at the end of the edge. """ - AUTHENTICATION + node: ProjectV2FieldConfiguration +} +""" +The connection type for ProjectV2Field. +""" +type ProjectV2FieldConnection { """ - A new resource was created + A list of edges. """ - CREATE + edges: [ProjectV2FieldEdge] """ - An existing resource was modified + A list of nodes. """ - MODIFY + nodes: [ProjectV2Field] """ - An existing resource was removed + Information to aid in pagination. """ - REMOVE + pageInfo: PageInfo! """ - An existing resource was restored + Identifies the total count of items in the connection. """ - RESTORE + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2FieldEdge { """ - An existing resource was transferred between multiple resources + A cursor for use in pagination. """ - TRANSFER + cursor: String! + + """ + The item at the end of the edge. + """ + node: ProjectV2Field } """ -Possible directions in which to order a list of items when provided an `orderBy` argument. +Ordering options for project v2 field connections """ -enum OrderDirection { +input ProjectV2FieldOrder { """ - Specifies an ascending order for a given `orderBy` argument. + The ordering direction. """ - ASC + direction: OrderDirection! """ - Specifies a descending order for a given `orderBy` argument. + The field to order the project v2 fields by. """ - DESC + field: ProjectV2FieldOrderField! } """ -Audit log entry for a org.add_billing_manager +Properties by which project v2 field connections can be ordered. """ -type OrgAddBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name +enum ProjectV2FieldOrderField { """ - action: String! - - """ - The user who initiated the action + Order project v2 fields by creation time """ - actor: AuditEntryActor + CREATED_AT """ - The IP address of the actor + Order project v2 fields by name """ - actorIp: String + NAME """ - A readable representation of the actor's location + Order project v2 fields by position """ - actorLocation: ActorLocation + POSITION +} +""" +The type of a project field. +""" +enum ProjectV2FieldType { """ - The username of the user who initiated the action + Assignees """ - actorLogin: String + ASSIGNEES """ - The HTTP path for the actor. + Date """ - actorResourcePath: URI + DATE """ - The HTTP URL for the actor. + Iteration """ - actorUrl: URI + ITERATION """ - The time the action was initiated + Labels """ - createdAt: PreciseDateTime! - id: ID! + LABELS """ - The email address used to invite a billing manager for the organization. + Linked Pull Requests """ - invitationEmail: String + LINKED_PULL_REQUESTS """ - The corresponding operation type for the action + Milestone """ - operationType: OperationType + MILESTONE """ - The Organization associated with the Audit Entry. + Number """ - organization: Organization + NUMBER """ - The name of the Organization. + Repository """ - organizationName: String + REPOSITORY """ - The HTTP path for the organization + Reviewers """ - organizationResourcePath: URI + REVIEWERS """ - The HTTP URL for the organization + Single Select """ - organizationUrl: URI + SINGLE_SELECT """ - The user affected by the action + Text """ - user: User + TEXT """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Title """ - userLogin: String + TITLE """ - The HTTP path for the user. + Tracked by """ - userResourcePath: URI + TRACKED_BY """ - The HTTP URL for the user. + Tracks """ - userUrl: URI + TRACKS } """ -Audit log entry for a org.add_member +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. """ -type OrgAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +input ProjectV2FieldValue { """ - The action name + The ISO 8601 date to set on the field. """ - action: String! + date: Date """ - The user who initiated the action + The id of the iteration to set on the field. """ - actor: AuditEntryActor + iterationId: String """ - The IP address of the actor + The number to set on the field. """ - actorIp: String + number: Float """ - A readable representation of the actor's location + The id of the single select option to set on the field. """ - actorLocation: ActorLocation + singleSelectOptionId: String """ - The username of the user who initiated the action + The text to set on the field. """ - actorLogin: String + text: String +} +""" +Ways in which to filter lists of projects. +""" +input ProjectV2Filters { """ - The HTTP path for the actor. + List project v2 filtered by the state given. """ - actorResourcePath: URI + state: ProjectV2State +} +""" +An item within a Project. +""" +type ProjectV2Item implements Node { """ - The HTTP URL for the actor. + The content of the referenced draft issue, issue, or pull request """ - actorUrl: URI + content: ProjectV2ItemContent """ - The time the action was initiated + Identifies the date and time when the object was created. """ - createdAt: PreciseDateTime! - id: ID! + createdAt: DateTime! """ - The corresponding operation type for the action + The actor who created the item. """ - operationType: OperationType + creator: Actor """ - The Organization associated with the Audit Entry. + Identifies the primary key from the database. """ - organization: Organization + databaseId: Int """ - The name of the Organization. + The field value of the first project field which matches the 'name' argument that is set on the item. """ - organizationName: String + fieldValueByName( + """ + The name of the field to return the field value of + """ + name: String! + ): ProjectV2ItemFieldValue """ - The HTTP path for the organization + The field values that are set on the item. """ - organizationResourcePath: URI + fieldValues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for project v2 item field values returned from the connection + """ + orderBy: ProjectV2ItemFieldValueOrder = {field: POSITION, direction: ASC} + ): ProjectV2ItemFieldValueConnection! + id: ID! """ - The HTTP URL for the organization + Whether the item is archived. """ - organizationUrl: URI + isArchived: Boolean! """ - The permission level of the member added to the organization. + The project that contains this item. """ - permission: OrgAddMemberAuditEntryPermission + project: ProjectV2! """ - The user affected by the action + The type of the item. """ - user: User + type: ProjectV2ItemType! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the date and time when the object was last updated. """ - userLogin: String + updatedAt: DateTime! +} +""" +The connection type for ProjectV2Item. +""" +type ProjectV2ItemConnection { """ - The HTTP path for the user. + A list of edges. """ - userResourcePath: URI + edges: [ProjectV2ItemEdge] """ - The HTTP URL for the user. + A list of nodes. """ - userUrl: URI -} + nodes: [ProjectV2Item] -""" -The permissions available to members on an Organization. -""" -enum OrgAddMemberAuditEntryPermission { """ - Can read, clone, push, and add collaborators to repositories. + Information to aid in pagination. """ - ADMIN + pageInfo: PageInfo! """ - Can read and clone repositories. + Identifies the total count of items in the connection. """ - READ + totalCount: Int! } """ -Audit log entry for a org.block_user +Types that can be inside Project Items. """ -type OrgBlockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! +union ProjectV2ItemContent = DraftIssue | Issue | PullRequest +""" +An edge in a connection. +""" +type ProjectV2ItemEdge { """ - The user who initiated the action + A cursor for use in pagination. """ - actor: AuditEntryActor + cursor: String! """ - The IP address of the actor + The item at the end of the edge. """ - actorIp: String + node: ProjectV2Item +} +""" +The value of a date field in a Project item. +""" +type ProjectV2ItemFieldDateValue implements Node & ProjectV2ItemFieldValueCommon { """ - A readable representation of the actor's location + Identifies the date and time when the object was created. """ - actorLocation: ActorLocation + createdAt: DateTime! """ - The username of the user who initiated the action + The actor who created the item. """ - actorLogin: String + creator: Actor """ - The HTTP path for the actor. + Identifies the primary key from the database. """ - actorResourcePath: URI + databaseId: Int """ - The HTTP URL for the actor. + Date value for the field """ - actorUrl: URI + date: Date """ - The blocked user. + The project field that contains this value. """ - blockedUser: User + field: ProjectV2FieldConfiguration! + id: ID! """ - The username of the blocked user. + The project item that contains this value. """ - blockedUserName: String + item: ProjectV2Item! """ - The HTTP path for the blocked user. + Identifies the date and time when the object was last updated. """ - blockedUserResourcePath: URI + updatedAt: DateTime! +} +""" +The value of an iteration field in a Project item. +""" +type ProjectV2ItemFieldIterationValue implements Node & ProjectV2ItemFieldValueCommon { """ - The HTTP URL for the blocked user. + Identifies the date and time when the object was created. """ - blockedUserUrl: URI + createdAt: DateTime! """ - The time the action was initiated + The actor who created the item. """ - createdAt: PreciseDateTime! - id: ID! + creator: Actor """ - The corresponding operation type for the action + Identifies the primary key from the database. """ - operationType: OperationType + databaseId: Int """ - The Organization associated with the Audit Entry. + The duration of the iteration in days. """ - organization: Organization + duration: Int! """ - The name of the Organization. + The project field that contains this value. """ - organizationName: String + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP path for the organization + The project item that contains this value. """ - organizationResourcePath: URI + item: ProjectV2Item! """ - The HTTP URL for the organization + The ID of the iteration. """ - organizationUrl: URI + iterationId: String! """ - The user affected by the action + The start date of the iteration. """ - user: User + startDate: Date! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The title of the iteration. """ - userLogin: String + title: String! """ - The HTTP path for the user. + The title of the iteration, with HTML. """ - userResourcePath: URI + titleHTML: String! """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -Audit log entry for a org.config.disable_collaborators_only event. +The value of the labels field in a Project item. """ -type OrgConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2ItemFieldLabelValue { """ - The action name + The field that contains this value. """ - action: String! + field: ProjectV2FieldConfiguration! """ - The user who initiated the action + Labels value of a field """ - actor: AuditEntryActor + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): LabelConnection +} + +""" +The value of a milestone field in a Project item. +""" +type ProjectV2ItemFieldMilestoneValue { """ - The IP address of the actor + The field that contains this value. """ - actorIp: String + field: ProjectV2FieldConfiguration! """ - A readable representation of the actor's location + Milestone value of a field """ - actorLocation: ActorLocation + milestone: Milestone +} +""" +The value of a number field in a Project item. +""" +type ProjectV2ItemFieldNumberValue implements Node & ProjectV2ItemFieldValueCommon { """ - The username of the user who initiated the action + Identifies the date and time when the object was created. """ - actorLogin: String + createdAt: DateTime! """ - The HTTP path for the actor. + The actor who created the item. """ - actorResourcePath: URI + creator: Actor """ - The HTTP URL for the actor. + Identifies the primary key from the database. """ - actorUrl: URI + databaseId: Int """ - The time the action was initiated + The project field that contains this value. """ - createdAt: PreciseDateTime! + field: ProjectV2FieldConfiguration! id: ID! """ - The corresponding operation type for the action + The project item that contains this value. """ - operationType: OperationType + item: ProjectV2Item! """ - The Organization associated with the Audit Entry. + Number as a float(8) """ - organization: Organization + number: Float """ - The name of the Organization. + Identifies the date and time when the object was last updated. """ - organizationName: String + updatedAt: DateTime! +} +""" +The value of a pull request field in a Project item. +""" +type ProjectV2ItemFieldPullRequestValue { """ - The HTTP path for the organization + The field that contains this value. """ - organizationResourcePath: URI + field: ProjectV2FieldConfiguration! """ - The HTTP URL for the organization + The pull requests for this field """ - organizationUrl: URI + pullRequests( + """ + 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 pull requests. + """ + orderBy: PullRequestOrder = {field: CREATED_AT, direction: ASC} + ): PullRequestConnection } """ -Audit log entry for a org.config.enable_collaborators_only event. +The value of a repository field in a Project item. """ -type OrgConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2ItemFieldRepositoryValue { """ - The action name + The field that contains this value. """ - action: String! + field: ProjectV2FieldConfiguration! """ - The user who initiated the action + The repository for this field. """ - actor: AuditEntryActor + repository: Repository +} +""" +The value of a reviewers field in a Project item. +""" +type ProjectV2ItemFieldReviewerValue { """ - The IP address of the actor + The field that contains this value. """ - actorIp: String + field: ProjectV2FieldConfiguration! """ - A readable representation of the actor's location + The reviewers for this field. """ - actorLocation: ActorLocation + reviewers( + """ + 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 + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): RequestedReviewerConnection +} +""" +The value of a single select field in a Project item. +""" +type ProjectV2ItemFieldSingleSelectValue implements Node & ProjectV2ItemFieldValueCommon { """ - The HTTP path for the actor. + The color applied to the selected single-select option. """ - actorResourcePath: URI + color: ProjectV2SingleSelectFieldOptionColor! """ - The HTTP URL for the actor. + Identifies the date and time when the object was created. """ - actorUrl: URI + createdAt: DateTime! """ - The time the action was initiated + The actor who created the item. """ - createdAt: PreciseDateTime! - id: ID! + creator: Actor """ - The corresponding operation type for the action + Identifies the primary key from the database. """ - operationType: OperationType + databaseId: Int """ - The Organization associated with the Audit Entry. + A plain-text description of the selected single-select option, such as what the option means. """ - organization: Organization + description: String """ - The name of the Organization. + The description of the selected single-select option, including HTML tags. """ - organizationName: String + descriptionHTML: String """ - The HTTP path for the organization + The project field that contains this value. """ - organizationResourcePath: URI + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP URL for the organization + The project item that contains this value. """ - organizationUrl: URI + item: ProjectV2Item! """ - The user affected by the action + The name of the selected single select option. """ - user: User + name: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The html name of the selected single select option. """ - userLogin: String + nameHTML: String """ - The HTTP path for the user. + The id of the selected single select option. """ - userResourcePath: URI + optionId: String """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -Audit log entry for a org.create event. +The value of a text field in a Project item. """ -type OrgCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2ItemFieldTextValue implements Node & ProjectV2ItemFieldValueCommon { """ - The action name + Identifies the date and time when the object was created. """ - action: String! + createdAt: DateTime! """ - The user who initiated the action + The actor who created the item. """ - actor: AuditEntryActor + creator: Actor """ - The IP address of the actor + Identifies the primary key from the database. """ - actorIp: String + databaseId: Int """ - A readable representation of the actor's location + The project field that contains this value. """ - actorLocation: ActorLocation + field: ProjectV2FieldConfiguration! + id: ID! """ - The username of the user who initiated the action + The project item that contains this value. """ - actorLogin: String + item: ProjectV2Item! """ - The HTTP path for the actor. + Text value of a field """ - actorResourcePath: URI + text: String """ - The HTTP URL for the actor. + Identifies the date and time when the object was last updated. """ - actorUrl: URI + updatedAt: DateTime! +} +""" +The value of a user field in a Project item. +""" +type ProjectV2ItemFieldUserValue { """ - The billing plan for the Organization. + The field that contains this value. """ - billingPlan: OrgCreateAuditEntryBillingPlan + field: ProjectV2FieldConfiguration! """ - The time the action was initiated + The users for this field """ - createdAt: PreciseDateTime! - id: ID! + users( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The name of the Organization. - """ - organizationName: String + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection +} + +""" +Project field values +""" +union ProjectV2ItemFieldValue = + ProjectV2ItemFieldDateValue + | ProjectV2ItemFieldIterationValue + | ProjectV2ItemFieldLabelValue + | ProjectV2ItemFieldMilestoneValue + | ProjectV2ItemFieldNumberValue + | ProjectV2ItemFieldPullRequestValue + | ProjectV2ItemFieldRepositoryValue + | ProjectV2ItemFieldReviewerValue + | ProjectV2ItemFieldSingleSelectValue + | ProjectV2ItemFieldTextValue + | ProjectV2ItemFieldUserValue +""" +Common fields across different project field value types +""" +interface ProjectV2ItemFieldValueCommon { """ - The HTTP path for the organization + Identifies the date and time when the object was created. """ - organizationResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the organization + The actor who created the item. """ - organizationUrl: URI + creator: Actor """ - The user affected by the action + Identifies the primary key from the database. """ - user: User + databaseId: Int """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The project field that contains this value. """ - userLogin: String + field: ProjectV2FieldConfiguration! + id: ID! """ - The HTTP path for the user. + The project item that contains this value. """ - userResourcePath: URI + item: ProjectV2Item! """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -The billing plans available for organizations. +The connection type for ProjectV2ItemFieldValue. """ -enum OrgCreateAuditEntryBillingPlan { +type ProjectV2ItemFieldValueConnection { """ - Team Plan + A list of edges. """ - BUSINESS + edges: [ProjectV2ItemFieldValueEdge] """ - Enterprise Cloud Plan + A list of nodes. """ - BUSINESS_PLUS + nodes: [ProjectV2ItemFieldValue] """ - Free Plan + Information to aid in pagination. """ - FREE + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2ItemFieldValueEdge { """ - Tiered Per Seat Plan + A cursor for use in pagination. """ - TIERED_PER_SEAT + cursor: String! """ - Legacy Unlimited Plan + The item at the end of the edge. """ - UNLIMITED + node: ProjectV2ItemFieldValue } """ -Audit log entry for a org.disable_oauth_app_restrictions event. +Ordering options for project v2 item field value connections """ -type OrgDisableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +input ProjectV2ItemFieldValueOrder { """ - The action name + The ordering direction. """ - action: String! + direction: OrderDirection! """ - The user who initiated the action + The field to order the project v2 item field values by. """ - actor: AuditEntryActor + field: ProjectV2ItemFieldValueOrderField! +} +""" +Properties by which project v2 item field value connections can be ordered. +""" +enum ProjectV2ItemFieldValueOrderField { """ - The IP address of the actor + Order project v2 item field values by the their position in the project """ - actorIp: String + POSITION +} +""" +Ordering options for project v2 item connections +""" +input ProjectV2ItemOrder { """ - A readable representation of the actor's location + The ordering direction. """ - actorLocation: ActorLocation + direction: OrderDirection! """ - The username of the user who initiated the action + The field to order the project v2 items by. """ - actorLogin: String + field: ProjectV2ItemOrderField! +} +""" +Properties by which project v2 item connections can be ordered. +""" +enum ProjectV2ItemOrderField { """ - The HTTP path for the actor. + Order project v2 items by the their position in the project """ - actorResourcePath: URI + POSITION +} +""" +The type of a project item. +""" +enum ProjectV2ItemType { """ - The HTTP URL for the actor. + Draft Issue """ - actorUrl: URI + DRAFT_ISSUE """ - The time the action was initiated + Issue """ - createdAt: PreciseDateTime! - id: ID! + ISSUE """ - The corresponding operation type for the action + Pull Request """ - operationType: OperationType + PULL_REQUEST """ - The Organization associated with the Audit Entry. + Redacted Item """ - organization: Organization + REDACTED +} +""" +An iteration field inside a project. +""" +type ProjectV2IterationField implements Node & ProjectV2FieldCommon { """ - The name of the Organization. + Iteration configuration settings """ - organizationName: String + configuration: ProjectV2IterationFieldConfiguration! """ - The HTTP path for the organization + Identifies the date and time when the object was created. """ - organizationResourcePath: URI + createdAt: DateTime! """ - The HTTP URL for the organization + The field's type. """ - organizationUrl: URI + dataType: ProjectV2FieldType! """ - The user affected by the action + Identifies the primary key from the database. """ - user: User + databaseId: Int + id: ID! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The project field's name. """ - userLogin: String + name: String! """ - The HTTP path for the user. + The project that contains this field. """ - userResourcePath: URI + project: ProjectV2! """ - The HTTP URL for the user. + Identifies the date and time when the object was last updated. """ - userUrl: URI + updatedAt: DateTime! } """ -Audit log entry for a org.disable_saml event. +Iteration field configuration for a project. """ -type OrgDisableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2IterationFieldConfiguration { """ - The action name + The iteration's completed iterations """ - action: String! + completedIterations: [ProjectV2IterationFieldIteration!]! """ - The user who initiated the action + The iteration's duration in days """ - actor: AuditEntryActor + duration: Int! """ - The IP address of the actor + The iteration's iterations """ - actorIp: String + iterations: [ProjectV2IterationFieldIteration!]! """ - A readable representation of the actor's location + The iteration's start day of the week """ - actorLocation: ActorLocation + startDay: Int! +} +""" +Iteration field iteration settings for a project. +""" +type ProjectV2IterationFieldIteration { """ - The username of the user who initiated the action + The iteration's duration in days """ - actorLogin: String + duration: Int! """ - The HTTP path for the actor. + The iteration's ID. """ - actorResourcePath: URI + id: String! """ - The HTTP URL for the actor. + The iteration's start date """ - actorUrl: URI + startDate: Date! """ - The time the action was initiated + The iteration's title. """ - createdAt: PreciseDateTime! + title: String! """ - The SAML provider's digest algorithm URL. + The iteration's html title. """ - digestMethodUrl: URI - id: ID! + titleHTML: String! +} +""" +Ways in which lists of projects can be ordered upon return. +""" +input ProjectV2Order { """ - The SAML provider's issuer URL. + The direction in which to order projects by the specified field. """ - issuerUrl: URI + direction: OrderDirection! """ - The corresponding operation type for the action + The field in which to order projects by. """ - operationType: OperationType + field: ProjectV2OrderField! +} +""" +Properties by which projects can be ordered. +""" +enum ProjectV2OrderField { """ - The Organization associated with the Audit Entry. + The project's date and time of creation """ - organization: Organization + CREATED_AT """ - The name of the Organization. + The project's number """ - organizationName: String + NUMBER """ - The HTTP path for the organization + The project's title """ - organizationResourcePath: URI + TITLE """ - The HTTP URL for the organization + The project's date and time of update """ - organizationUrl: URI + UPDATED_AT +} - """ - The SAML provider's signature algorithm URL. - """ - signatureMethodUrl: URI +""" +Represents an owner of a project (beta). +""" +interface ProjectV2Owner { + id: ID! """ - The SAML provider's single sign-on URL. + Find a project by number. """ - singleSignOnUrl: URI + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - The user affected by the action + A list of projects under the owner. """ - user: User + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - For actions involving two users, the actor is the initiator and the user is the affected user. - """ - userLogin: String + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP path for the user. - """ - userResourcePath: URI + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! +} +""" +Recent projects for the owner. +""" +interface ProjectV2Recent { """ - The HTTP URL for the user. + Recent projects that this user has modified in the context of the owner. """ - userUrl: URI + recentProjects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2Connection! } """ -Audit log entry for a org.disable_two_factor_requirement event. +The possible roles of a collaborator on a project. """ -type OrgDisableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +enum ProjectV2Roles { """ - The action name + The collaborator can view, edit, and maange the settings of the project """ - action: String! + ADMIN """ - The user who initiated the action + The collaborator has no direct access to the project """ - actor: AuditEntryActor + NONE """ - The IP address of the actor + The collaborator can view the project """ - actorIp: String + READER """ - A readable representation of the actor's location + The collaborator can view and edit the project """ - actorLocation: ActorLocation + WRITER +} +""" +A single select field inside a project. +""" +type ProjectV2SingleSelectField implements Node & ProjectV2FieldCommon { """ - The username of the user who initiated the action + Identifies the date and time when the object was created. """ - actorLogin: String + createdAt: DateTime! """ - The HTTP path for the actor. + The field's type. """ - actorResourcePath: URI + dataType: ProjectV2FieldType! """ - The HTTP URL for the actor. + Identifies the primary key from the database. """ - actorUrl: URI + databaseId: Int + id: ID! """ - The time the action was initiated + The project field's name. """ - createdAt: PreciseDateTime! - id: ID! + name: String! """ - The corresponding operation type for the action + Options for the single select field """ - operationType: OperationType + options( + """ + Filter returned options to only those matching these names, case insensitive. + """ + names: [String!] + ): [ProjectV2SingleSelectFieldOption!]! """ - The Organization associated with the Audit Entry. + The project that contains this field. """ - organization: Organization + project: ProjectV2! """ - The name of the Organization. + Identifies the date and time when the object was last updated. """ - organizationName: String + updatedAt: DateTime! +} +""" +Single select field option for a configuration for a project. +""" +type ProjectV2SingleSelectFieldOption { """ - The HTTP path for the organization + The option's display color. """ - organizationResourcePath: URI + color: ProjectV2SingleSelectFieldOptionColor! """ - The HTTP URL for the organization + The option's plain-text description. """ - organizationUrl: URI + description: String! """ - The user affected by the action + The option's description, possibly containing HTML. """ - user: User + descriptionHTML: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The option's ID. """ - userLogin: String + id: String! """ - The HTTP path for the user. + The option's name. """ - userResourcePath: URI + name: String! """ - The HTTP URL for the user. + The option's html name. """ - userUrl: URI + nameHTML: String! } """ -Audit log entry for a org.enable_oauth_app_restrictions event. +The display color of a single-select field option. """ -type OrgEnableOauthAppRestrictionsAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +enum ProjectV2SingleSelectFieldOptionColor { """ - The action name + BLUE """ - action: String! + BLUE """ - The user who initiated the action + GRAY """ - actor: AuditEntryActor + GRAY """ - The IP address of the actor + GREEN """ - actorIp: String + GREEN """ - A readable representation of the actor's location + ORANGE """ - actorLocation: ActorLocation + ORANGE """ - The username of the user who initiated the action + PINK """ - actorLogin: String + PINK """ - The HTTP path for the actor. + PURPLE """ - actorResourcePath: URI + PURPLE """ - The HTTP URL for the actor. + RED """ - actorUrl: URI + RED """ - The time the action was initiated + YELLOW """ - createdAt: PreciseDateTime! - id: ID! + YELLOW +} +""" +Represents a single select field option +""" +input ProjectV2SingleSelectFieldOptionInput { """ - The corresponding operation type for the action + The display color of the option """ - operationType: OperationType + color: ProjectV2SingleSelectFieldOptionColor! """ - The Organization associated with the Audit Entry. + The description text of the option """ - organization: Organization + description: String! """ - The name of the Organization. + The name of the option """ - organizationName: String + name: String! +} +""" +Represents a sort by field and direction. +""" +type ProjectV2SortBy { """ - The HTTP path for the organization + The direction of the sorting. Possible values are ASC and DESC. """ - organizationResourcePath: URI + direction: OrderDirection! """ - The HTTP URL for the organization + The field by which items are sorted. """ - organizationUrl: URI + field: ProjectV2Field! +} +""" +The connection type for ProjectV2SortBy. +""" +type ProjectV2SortByConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [ProjectV2SortByEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [ProjectV2SortBy] """ - The HTTP path for the user. + Information to aid in pagination. """ - userResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the user. + Identifies the total count of items in the connection. """ - userUrl: URI + totalCount: Int! } """ -Audit log entry for a org.enable_saml event. +An edge in a connection. """ -type OrgEnableSamlAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +type ProjectV2SortByEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: ProjectV2SortBy +} +""" +Represents a sort by field and direction. +""" +type ProjectV2SortByField { """ - The IP address of the actor + The direction of the sorting. Possible values are ASC and DESC. """ - actorIp: String + direction: OrderDirection! """ - A readable representation of the actor's location + The field by which items are sorted. """ - actorLocation: ActorLocation + field: ProjectV2FieldConfiguration! +} +""" +The connection type for ProjectV2SortByField. +""" +type ProjectV2SortByFieldConnection { """ - The username of the user who initiated the action + A list of edges. """ - actorLogin: String + edges: [ProjectV2SortByFieldEdge] """ - The HTTP path for the actor. + A list of nodes. """ - actorResourcePath: URI + nodes: [ProjectV2SortByField] """ - The HTTP URL for the actor. + Information to aid in pagination. """ - actorUrl: URI + pageInfo: PageInfo! """ - The time the action was initiated + Identifies the total count of items in the connection. """ - createdAt: PreciseDateTime! + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2SortByFieldEdge { """ - The SAML provider's digest algorithm URL. + A cursor for use in pagination. """ - digestMethodUrl: URI - id: ID! + cursor: String! """ - The SAML provider's issuer URL. + The item at the end of the edge. """ - issuerUrl: URI + node: ProjectV2SortByField +} +""" +The possible states of a project v2. +""" +enum ProjectV2State { """ - The corresponding operation type for the action + A project v2 that has been closed """ - operationType: OperationType + CLOSED """ - The Organization associated with the Audit Entry. + A project v2 that is still open """ - organization: Organization + OPEN +} +""" +A view within a ProjectV2. +""" +type ProjectV2View implements Node { """ - The name of the Organization. + Identifies the date and time when the object was created. """ - organizationName: String + createdAt: DateTime! """ - The HTTP path for the organization + Identifies the primary key from the database. """ - organizationResourcePath: URI + databaseId: Int """ - The HTTP URL for the organization + The view's visible fields. """ - organizationUrl: URI + fields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection """ - The SAML provider's signature algorithm URL. + The project view's filter. """ - signatureMethodUrl: URI + filter: String """ - The SAML provider's single sign-on URL. + The view's group-by field. """ - singleSignOnUrl: URI + groupBy( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConnection + @deprecated( + reason: "The `ProjectV2View#order_by` API is deprecated in favour of the more capable `ProjectV2View#group_by_field` API. Check out the `ProjectV2View#group_by_fields` API as an example for the more capable alternative. Removal on 2023-04-01 UTC." + ) """ - The user affected by the action + The view's group-by field. """ - user: User + 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! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The project view's layout. """ - userLogin: String + layout: ProjectV2ViewLayout! """ - The HTTP path for the user. + The project view's name. """ - userResourcePath: URI + name: String! """ - The HTTP URL for the user. + The project view's number. """ - userUrl: URI -} + number: Int! -""" -Audit log entry for a org.enable_two_factor_requirement event. -""" -type OrgEnableTwoFactorRequirementAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The project that contains this view. """ - action: String! + project: ProjectV2! + + """ + The view's sort-by config. + """ + sortBy( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2SortByConnection + @deprecated( + reason: "The `ProjectV2View#sort_by` API is deprecated in favour of the more capable `ProjectV2View#sort_by_fields` API. Check out the `ProjectV2View#sort_by_fields` API as an example for the more capable alternative. Removal on 2023-04-01 UTC." + ) + + """ + The view's sort-by config. + """ + sortByFields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2SortByFieldConnection """ - The user who initiated the action + Identifies the date and time when the object was last updated. """ - actor: AuditEntryActor + updatedAt: DateTime! """ - The IP address of the actor + The view's vertical-group-by field. """ - actorIp: String + verticalGroupBy( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The username of the user who initiated the action - """ - actorLogin: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP path for the actor. - """ - actorResourcePath: URI + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The HTTP URL for the actor. - """ - actorUrl: URI + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConnection + @deprecated( + reason: "The `ProjectV2View#vertical_group_by` API is deprecated in favour of the more capable `ProjectV2View#vertical_group_by_fields` API. Check out the `ProjectV2View#vertical_group_by_fields` API as an example for the more capable alternative. Removal on 2023-04-01 UTC." + ) """ - The time the action was initiated + The view's vertical-group-by field. """ - createdAt: PreciseDateTime! - id: ID! + verticalGroupByFields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The corresponding operation type for the action - """ - operationType: OperationType + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The Organization associated with the Audit Entry. - """ - organization: Organization + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConfigurationConnection """ - The name of the Organization. + The view's visible fields. """ - organizationName: String + visibleFields( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for the project v2 fields returned from the connection. + """ + orderBy: ProjectV2FieldOrder = {field: POSITION, direction: ASC} + ): ProjectV2FieldConnection + @deprecated( + reason: "The `ProjectV2View#visibleFields` API is deprecated in favour of the more capable `ProjectV2View#fields` API. Check out the `ProjectV2View#fields` API as an example for the more capable alternative. Removal on 2023-01-01 UTC." + ) +} +""" +The connection type for ProjectV2View. +""" +type ProjectV2ViewConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [ProjectV2ViewEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [ProjectV2View] """ - The user affected by the action + Information to aid in pagination. """ - user: User + pageInfo: PageInfo! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the total count of items in the connection. """ - userLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type ProjectV2ViewEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: ProjectV2View } """ -Audit log entry for a org.invite_member event. +The layout of a project v2 view. """ -type OrgInviteMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +enum ProjectV2ViewLayout { """ - The action name + Board layout """ - action: String! + BOARD_LAYOUT """ - The user who initiated the action + Roadmap layout """ - actor: AuditEntryActor + ROADMAP_LAYOUT """ - The IP address of the actor + Table layout """ - actorIp: String + TABLE_LAYOUT +} +""" +Ordering options for project v2 view connections +""" +input ProjectV2ViewOrder { """ - A readable representation of the actor's location + The ordering direction. """ - actorLocation: ActorLocation + direction: OrderDirection! """ - The username of the user who initiated the action + The field to order the project v2 views by. """ - actorLogin: String + field: ProjectV2ViewOrderField! +} +""" +Properties by which project v2 view connections can be ordered. +""" +enum ProjectV2ViewOrderField { """ - The HTTP path for the actor. + Order project v2 views by creation time """ - actorResourcePath: URI + CREATED_AT """ - The HTTP URL for the actor. + Order project v2 views by name """ - actorUrl: URI + NAME """ - The time the action was initiated + Order project v2 views by position """ - createdAt: PreciseDateTime! + POSITION +} +""" +A workflow inside a project. +""" +type ProjectV2Workflow implements Node { """ - The email address of the organization invitation. + Identifies the date and time when the object was created. """ - email: String - id: ID! + createdAt: DateTime! """ - The corresponding operation type for the action + Identifies the primary key from the database. """ - operationType: OperationType + databaseId: Int """ - The Organization associated with the Audit Entry. + The workflows' enabled state. """ - organization: Organization + enabled: Boolean! + id: ID! """ - The organization invitation. + The workflows' name. """ - organizationInvitation: OrganizationInvitation + name: String! """ - The name of the Organization. + The workflows' number. """ - organizationName: String + number: Int! """ - The HTTP path for the organization + The project that contains this workflow. """ - organizationResourcePath: URI + project: ProjectV2! """ - The HTTP URL for the organization + Identifies the date and time when the object was last updated. """ - organizationUrl: URI + updatedAt: DateTime! +} +""" +The connection type for ProjectV2Workflow. +""" +type ProjectV2WorkflowConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [ProjectV2WorkflowEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [ProjectV2Workflow] """ - The HTTP path for the user. + Information to aid in pagination. """ - userResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the user. + Identifies the total count of items in the connection. """ - userUrl: URI + totalCount: Int! } """ -Audit log entry for a org.invite_to_business event. +An edge in a connection. """ -type OrgInviteToBusinessAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { +type ProjectV2WorkflowEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: ProjectV2Workflow +} +""" +Ordering options for project v2 workflows connections +""" +input ProjectV2WorkflowOrder { """ - The IP address of the actor + The ordering direction. """ - actorIp: String + direction: OrderDirection! """ - A readable representation of the actor's location + The field to order the project v2 workflows by. """ - actorLocation: ActorLocation + field: ProjectV2WorkflowsOrderField! +} +""" +Properties by which project workflows can be ordered. +""" +enum ProjectV2WorkflowsOrderField { """ - The username of the user who initiated the action + The workflows' date and time of creation """ - actorLogin: String + CREATED_AT """ - The HTTP path for the actor. + The workflows' name """ - actorResourcePath: URI + NAME """ - The HTTP URL for the actor. + The workflows' number """ - actorUrl: URI + NUMBER """ - The time the action was initiated + The workflows' date and time of update """ - createdAt: PreciseDateTime! + UPDATED_AT +} +""" +A user's public key. +""" +type PublicKey implements Node { """ - The HTTP path for this enterprise. + The last time this authorization was used to perform an action. Values will be null for keys not owned by the user. """ - enterpriseResourcePath: URI + accessedAt: DateTime """ - The slug of the enterprise. + 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. """ - enterpriseSlug: String + createdAt: DateTime """ - The HTTP URL for this enterprise. + The fingerprint for this PublicKey. """ - enterpriseUrl: URI + fingerprint: String! id: ID! """ - The corresponding operation type for the action + Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user. """ - operationType: OperationType + isReadOnly: Boolean """ - The Organization associated with the Audit Entry. + The public key string. """ - organization: Organization + key: String! """ - The name of the Organization. + Identifies the date and time when the key was updated. Keys created before + March 5th, 2014 may have inaccurate values. Values will be null for keys not + owned by the user. """ - organizationName: String + updatedAt: DateTime +} +""" +The connection type for PublicKey. +""" +type PublicKeyConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [PublicKeyEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [PublicKey] """ - The user affected by the action + Information to aid in pagination. """ - user: User + pageInfo: PageInfo! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the total count of items in the connection. """ - userLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type PublicKeyEdge { """ - The HTTP path for the user. + A cursor for use in pagination. """ - userResourcePath: URI + cursor: String! """ - The HTTP URL for the user. + The item at the end of the edge. """ - userUrl: URI + node: PublicKey } """ -Audit log entry for a org.oauth_app_access_approved event. +Autogenerated input type of PublishSponsorsTier """ -type OrgOauthAppAccessApprovedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { +input PublishSponsorsTierInput { """ - The action name + A unique identifier for the client performing the mutation. """ - action: String! + clientMutationId: String """ - The user who initiated the action + The ID of the draft tier to publish. """ - actor: AuditEntryActor + tierId: ID! @possibleTypes(concreteTypes: ["SponsorsTier"]) +} +""" +Autogenerated return type of PublishSponsorsTier +""" +type PublishSponsorsTierPayload { """ - The IP address of the actor + A unique identifier for the client performing the mutation. """ - actorIp: String + clientMutationId: String """ - A readable representation of the actor's location + The tier that was published. """ - actorLocation: ActorLocation + sponsorsTier: SponsorsTier +} +""" +A repository pull request. +""" +type PullRequest implements Assignable & Closable & Comment & Labelable & Lockable & Node & ProjectV2Owner & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { """ - The username of the user who initiated the action + Reason that the conversation was locked. """ - actorLogin: String + activeLockReason: LockReason """ - The HTTP path for the actor. + The number of additions in this pull request. """ - actorResourcePath: URI + additions: Int! """ - The HTTP URL for the actor. + A list of Users assigned to this object. """ - actorUrl: URI + assignees( + """ + 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 + ): UserConnection! """ - The HTTP URL for the OAuth Application + The actor who authored the comment. """ - oauthApplicationUrl: URI + author: Actor """ - The corresponding operation type for the action + Author's association with the subject of the comment. """ - operationType: OperationType + authorAssociation: CommentAuthorAssociation! """ - The Organization associated with the Audit Entry. + Returns the auto-merge request object if one exists for this pull request. """ - organization: Organization + autoMergeRequest: AutoMergeRequest """ - The name of the Organization. + Identifies the base Ref associated with the pull request. """ - organizationName: String + baseRef: Ref """ - The HTTP path for the organization + Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted. """ - organizationResourcePath: URI + baseRefName: String! """ - The HTTP URL for the organization + Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted. """ - organizationUrl: URI + baseRefOid: GitObjectID! """ - The user affected by the action + The repository associated with this pull request's base Ref. """ - user: User + baseRepository: Repository """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The body as Markdown. """ - userLogin: String + body: String! """ - The HTTP path for the user. + The body rendered to HTML. """ - userResourcePath: URI + bodyHTML: HTML! """ - The HTTP URL for the user. + The body rendered to text. """ - userUrl: URI -} + bodyText: String! -""" -Audit log entry for a org.oauth_app_access_denied event. -""" -type OrgOauthAppAccessDeniedAuditEntry implements AuditEntry & Node & OauthApplicationAuditEntryData & OrganizationAuditEntryData { """ - The action name + Whether or not the pull request is rebaseable. """ - action: String! + canBeRebased: Boolean! @preview(toggledBy: "merge-info-preview") """ - The user who initiated the action + The number of changed files in this pull request. """ - actor: AuditEntryActor + changedFiles: Int! """ - The IP address of the actor + The HTTP path for the checks of this pull request. """ - actorIp: String + checksResourcePath: URI! """ - A readable representation of the actor's location + The HTTP URL for the checks of this pull request. """ - actorLocation: ActorLocation + checksUrl: URI! """ - The username of the user who initiated the action + `true` if the pull request is closed """ - actorLogin: String + closed: Boolean! """ - The HTTP path for the actor. + Identifies the date and time when the object was closed. """ - actorResourcePath: URI + closedAt: DateTime """ - The HTTP URL for the actor. + List of issues that were may be closed by this pull request """ - actorUrl: URI + closingIssuesReferences( + """ + 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 - """ - The HTTP URL for the OAuth Application - """ - oauthApplicationUrl: URI + """ + Ordering options for issues returned from the connection + """ + orderBy: IssueOrder + + """ + Return only manually linked Issues + """ + userLinkedOnly: Boolean = false + ): IssueConnection """ - The corresponding operation type for the action + A list of comments associated with the pull request. """ - operationType: OperationType + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for issue comments returned from the connection. + """ + orderBy: IssueCommentOrder + ): IssueCommentConnection! """ - The Organization associated with the Audit Entry. + A list of commits present in this pull request's head branch not present in the base branch. """ - organization: Organization + commits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestCommitConnection! """ - The name of the Organization. + Identifies the date and time when the object was created. """ - organizationName: String + createdAt: DateTime! """ - The HTTP path for the organization + Check if this comment was created via an email reply. """ - organizationResourcePath: URI + createdViaEmail: Boolean! """ - The HTTP URL for the organization + Identifies the primary key from the database. """ - organizationUrl: URI + databaseId: Int """ - The user affected by the action + The number of deletions in this pull request. """ - user: User + deletions: Int! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The actor who edited this pull request's body. """ - userLogin: String + editor: Actor """ - The HTTP path for the user. + Lists the files changed within this pull request. """ - userResourcePath: URI + files( + """ + 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_requested event. -""" -type OrgOauthAppAccessRequestedAuditEntry implements AuditEntry & Node & 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 + ): PullRequestChangedFileConnection """ - The IP address of the actor + Identifies the head Ref associated with the pull request. """ - actorIp: String + headRef: Ref """ - A readable representation of the actor's location + Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. """ - actorLocation: ActorLocation + headRefName: String! """ - The username of the user who initiated the action + Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. """ - actorLogin: String + headRefOid: GitObjectID! """ - The HTTP path for the actor. + The repository associated with this pull request's head Ref. """ - actorResourcePath: URI + headRepository: Repository """ - The HTTP URL for the actor. + The owner of the repository associated with this pull request's head Ref. """ - actorUrl: URI + headRepositoryOwner: RepositoryOwner """ - The time the action was initiated + The hovercard information for this issue """ - createdAt: PreciseDateTime! + hovercard( + """ + Whether or not to include notification contexts + """ + includeNotificationContexts: Boolean = true + ): Hovercard! id: ID! """ - The name of the OAuth Application. + Check if this comment was edited and includes an edit with the creation data """ - oauthApplicationName: String + includesCreatedEdit: Boolean! """ - The HTTP path for the OAuth Application + The head and base repositories are different. """ - oauthApplicationResourcePath: URI + isCrossRepository: Boolean! """ - The HTTP URL for the OAuth Application + Identifies if the pull request is a draft. """ - oauthApplicationUrl: URI + isDraft: Boolean! """ - The corresponding operation type for the action + Is this pull request read by the viewer """ - operationType: OperationType + isReadByViewer: Boolean """ - The Organization associated with the Audit Entry. + A list of labels associated with the object. """ - organization: Organization + labels( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + ): LabelConnection """ - The name of the Organization. + The moment the editor made the last edit """ - organizationName: String + lastEditedAt: DateTime """ - The HTTP path for the organization + A list of latest reviews per user associated with the pull request. """ - organizationResourcePath: URI + latestOpinionatedReviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Only return reviews from user who have write access to the repository + """ + writersOnly: Boolean = false + ): PullRequestReviewConnection """ - The HTTP URL for the organization + A list of latest reviews per user associated with the pull request that are not also pending review. """ - organizationUrl: URI + latestReviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewConnection """ - The user affected by the action + `true` if the pull request is locked """ - user: User + locked: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Indicates whether maintainers can modify the pull request. """ - userLogin: String + maintainerCanModify: Boolean! """ - The HTTP path for the user. + The commit that was created when this pull request was merged. """ - userResourcePath: URI + mergeCommit: Commit """ - The HTTP URL for the user. + The merge queue entry of the pull request in the base branch's merge queue """ - userUrl: URI -} + mergeQueueEntry: MergeQueueEntry -""" -Audit log entry for a org.remove_billing_manager event. -""" -type OrgRemoveBillingManagerAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Detailed information about the current pull request merge state status. """ - action: String! + mergeStateStatus: MergeStateStatus! @preview(toggledBy: "merge-info-preview") """ - The user who initiated the action + Whether or not the pull request can be merged based on the existence of merge conflicts. """ - actor: AuditEntryActor + mergeable: MergeableState! """ - The IP address of the actor + Whether or not the pull request was merged. """ - actorIp: String + merged: Boolean! """ - A readable representation of the actor's location + The date and time that the pull request was merged. """ - actorLocation: ActorLocation + mergedAt: DateTime """ - The username of the user who initiated the action + The actor who merged the pull request. """ - actorLogin: String + mergedBy: Actor """ - The HTTP path for the actor. + Identifies the milestone associated with the pull request. """ - actorResourcePath: URI + milestone: Milestone """ - The HTTP URL for the actor. + Identifies the pull request number. """ - actorUrl: URI + number: Int! """ - The time the action was initiated + A list of Users that are participating in the Pull Request conversation. """ - createdAt: PreciseDateTime! - id: ID! + participants( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The corresponding operation type for the action + The permalink to the pull request. """ - operationType: OperationType + permalink: URI! """ - The Organization associated with the Audit Entry. + 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. """ - organization: Organization + potentialMergeCommit: Commit """ - The name of the Organization. + List of project cards associated with this pull request. """ - organizationName: String + projectCards( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + A list of archived states to filter the cards by + """ + archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectCardConnection! """ - The HTTP path for the organization + List of project items associated with this pull request. """ - organizationResourcePath: URI + projectItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Include archived items. + """ + includeArchived: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2ItemConnection! """ - The HTTP URL for the organization + Find a project by number. """ - organizationUrl: URI + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 """ - The reason for the billing manager being removed. + A list of projects under the owner. """ - reason: OrgRemoveBillingManagerAuditEntryReason + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! """ - The user affected by the action + Identifies when the comment was published at. """ - user: User + publishedAt: DateTime """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of reactions grouped by content left on the subject. """ - userLogin: String + reactionGroups: [ReactionGroup!] """ - The HTTP path for the user. + A list of Reactions left on the Issue. """ - userResourcePath: URI + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The HTTP URL for the user. + The repository associated with this node. """ - userUrl: URI -} + repository: Repository! -""" -The reason a billing manager was removed from an Organization. -""" -enum OrgRemoveBillingManagerAuditEntryReason { """ - SAML external identity missing + The HTTP path for this pull request. """ - SAML_EXTERNAL_IDENTITY_MISSING + resourcePath: URI! """ - SAML SSO enforcement requires an external identity + The HTTP path for reverting this pull request. """ - SAML_SSO_ENFORCEMENT_REQUIRES_EXTERNAL_IDENTITY + revertResourcePath: URI! """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + The HTTP URL for reverting this pull request. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE -} + revertUrl: URI! -""" -Audit log entry for a org.remove_member event. -""" -type OrgRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The current status of this pull request with respect to code review. """ - action: String! + reviewDecision: PullRequestReviewDecision """ - The user who initiated the action + A list of review requests associated with the pull request. """ - actor: AuditEntryActor + reviewRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ReviewRequestConnection """ - The IP address of the actor + The list of all review threads for this pull request. """ - actorIp: String + reviewThreads( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewThreadConnection! """ - A readable representation of the actor's location + A list of reviews associated with the pull request. """ - actorLocation: ActorLocation + reviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Filter by author of the review. + """ + author: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + A list of states to filter the reviews. + """ + states: [PullRequestReviewState!] + ): PullRequestReviewConnection """ - The username of the user who initiated the action + Identifies the state of the pull request. """ - actorLogin: String + state: PullRequestState! """ - The HTTP path for the actor. + A list of reviewer suggestions based on commit history and past review comments. """ - actorResourcePath: URI + suggestedReviewers: [SuggestedReviewer]! """ - The HTTP URL for the actor. + A list of events, comments, commits, etc. associated with the pull request. """ - actorUrl: URI + timeline( + """ + 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 types of membership the member has with the organization. - """ - membershipTypes: [OrgRemoveMemberAuditEntryMembershipType!] + """ + 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 timeline events by a `since` timestamp. + """ + since: DateTime + ): PullRequestTimelineConnection! + @deprecated(reason: "`timeline` will be removed Use PullRequest.timelineItems instead. Removal on 2020-10-01 UTC.") """ - The name of the Organization. + A list of events, comments, commits, etc. associated with the pull request. """ - organizationName: String + timelineItems( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The HTTP path for the organization - """ - organizationResourcePath: URI + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The HTTP URL for the organization - """ - organizationUrl: URI + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The reason for the member being removed. - """ - reason: OrgRemoveMemberAuditEntryReason + """ + Filter timeline items by type. + """ + itemTypes: [PullRequestTimelineItemsItemType!] - """ - 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 + """ + Filter timeline items by a `since` timestamp. + """ + since: DateTime - """ - The HTTP path for the user. - """ - userResourcePath: URI + """ + Skips the first _n_ elements in the list. + """ + skip: Int + ): PullRequestTimelineItemsConnection! """ - The HTTP URL for the user. + Identifies the pull request title. """ - userUrl: URI -} + title: String! -""" -The type of membership a user has with an Organization. -""" -enum OrgRemoveMemberAuditEntryMembershipType { """ - Organization administrators have full access and can change several settings, - including the names of repositories that belong to the Organization and Owners - team membership. In addition, organization admins can delete the organization - and all of its repositories. + Identifies the pull request title rendered to HTML. """ - ADMIN + titleHTML: HTML! """ - A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + Returns a count of how many comments this pull request has received. """ - BILLING_MANAGER + totalCommentsCount: Int """ - A direct member is a user that is a member of the Organization. + Identifies the date and time when the object was last updated. """ - DIRECT_MEMBER + updatedAt: DateTime! """ - 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. + The HTTP URL for this pull request. """ - OUTSIDE_COLLABORATOR + 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. + A list of edits to this content. """ - UNAFFILIATED -} + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -The reason a member was removed from an Organization. -""" -enum OrgRemoveMemberAuditEntryReason { - """ - 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 was removed from organization during account recovery - """ - TWO_FACTOR_ACCOUNT_RECOVERY + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + Whether or not the viewer can apply suggestion. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE + viewerCanApplySuggestion: Boolean! """ - User account has been deleted + Indicates if the object can be closed by the viewer. """ - USER_ACCOUNT_DELETED -} + viewerCanClose: Boolean! -""" -Audit log entry for a org.remove_outside_collaborator event. -""" -type OrgRemoveOutsideCollaboratorAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Check if the viewer can restore the deleted head ref. """ - action: String! + viewerCanDeleteHeadRef: Boolean! """ - The user who initiated the action + Whether or not the viewer can disable auto-merge """ - actor: AuditEntryActor + viewerCanDisableAutoMerge: Boolean! """ - The IP address of the actor + Can the viewer edit files within this pull request. """ - actorIp: String + viewerCanEditFiles: Boolean! """ - A readable representation of the actor's location + Whether or not the viewer can enable auto-merge """ - actorLocation: ActorLocation + viewerCanEnableAutoMerge: Boolean! """ - The username of the user who initiated the action + Indicates whether the viewer can bypass branch protections and merge the pull request immediately """ - actorLogin: String + viewerCanMergeAsAdmin: Boolean! """ - The HTTP path for the actor. + Can user react to this subject """ - actorResourcePath: URI + viewerCanReact: Boolean! """ - The HTTP URL for the actor. + Indicates if the object can be reopened by the viewer. """ - actorUrl: URI + viewerCanReopen: Boolean! """ - The time the action was initiated + Check if the viewer is able to change their subscription status for the repository. """ - createdAt: PreciseDateTime! - id: ID! + viewerCanSubscribe: Boolean! """ - The types of membership the outside collaborator has with the organization. + Check if the current viewer can update this object. """ - membershipTypes: [OrgRemoveOutsideCollaboratorAuditEntryMembershipType!] + viewerCanUpdate: Boolean! """ - The corresponding operation type for the action + 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. """ - operationType: OperationType + viewerCanUpdateBranch: Boolean! """ - The Organization associated with the Audit Entry. + Reasons why the current viewer can not update this comment. """ - organization: Organization + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The name of the Organization. + Did the viewer author this comment. """ - organizationName: String + viewerDidAuthor: Boolean! """ - The HTTP path for the organization + The latest review given from the viewer. """ - organizationResourcePath: URI + viewerLatestReview: PullRequestReview """ - The HTTP URL for the organization + The person who has requested the viewer for review on this pull request. """ - organizationUrl: URI + viewerLatestReviewRequest: ReviewRequest """ - The reason for the outside collaborator being removed from the Organization. + The merge body text for the viewer and method. """ - reason: OrgRemoveOutsideCollaboratorAuditEntryReason + viewerMergeBodyText( + """ + The merge method for the message. + """ + mergeType: PullRequestMergeMethod + ): String! """ - The user affected by the action + The merge headline text for the viewer and method. """ - user: User + viewerMergeHeadlineText( + """ + The merge method for the message. + """ + mergeType: PullRequestMergeMethod + ): String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. """ - userLogin: String + viewerSubscription: SubscriptionState +} +""" +The possible methods for updating a pull request's head branch with the base branch. +""" +enum PullRequestBranchUpdateMethod { """ - The HTTP path for the user. + Update branch via merge """ - userResourcePath: URI + MERGE """ - The HTTP URL for the user. + Update branch via rebase """ - userUrl: URI + REBASE } """ -The type of membership a user has with an Organization. +A file changed in a pull request. """ -enum OrgRemoveOutsideCollaboratorAuditEntryMembershipType { +type PullRequestChangedFile { """ - A billing manager is a user who manages the billing settings for the Organization, such as updating payment information. + The number of additions to the file. """ - BILLING_MANAGER + additions: Int! """ - 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. + How the file was changed in this PullRequest """ - OUTSIDE_COLLABORATOR + changeType: PatchStatus! """ - 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 deletions to the file. """ - UNAFFILIATED -} + deletions: Int! -""" -The reason an outside collaborator was removed from an Organization. -""" -enum OrgRemoveOutsideCollaboratorAuditEntryReason { """ - SAML external identity missing + The path of the file. """ - SAML_EXTERNAL_IDENTITY_MISSING + path: String! """ - The organization required 2FA of its billing managers and this user did not have 2FA enabled. + The state of the file for the viewer. """ - TWO_FACTOR_REQUIREMENT_NON_COMPLIANCE + viewerViewedState: FileViewedState! } """ -Audit log entry for a org.restore_member event. +The connection type for PullRequestChangedFile. """ -type OrgRestoreMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - +type PullRequestChangedFileConnection { """ - The user who initiated the action + A list of edges. """ - actor: AuditEntryActor + edges: [PullRequestChangedFileEdge] """ - The IP address of the actor + A list of nodes. """ - actorIp: String + nodes: [PullRequestChangedFile] """ - A readable representation of the actor's location + Information to aid in pagination. """ - actorLocation: ActorLocation + pageInfo: PageInfo! """ - The username of the user who initiated the action + Identifies the total count of items in the connection. """ - actorLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type PullRequestChangedFileEdge { """ - The HTTP path for the actor. + A cursor for use in pagination. """ - actorResourcePath: URI + cursor: String! """ - The HTTP URL for the actor. + The item at the end of the edge. """ - actorUrl: URI + node: PullRequestChangedFile +} +""" +Represents a Git commit part of a pull request. +""" +type PullRequestCommit implements Node & UniformResourceLocatable { """ - The time the action was initiated + The Git commit object """ - createdAt: PreciseDateTime! + commit: Commit! id: ID! """ - The corresponding operation type for the action + The pull request this commit belongs to """ - operationType: OperationType + pullRequest: PullRequest! """ - The Organization associated with the Audit Entry. + The HTTP path for this pull request commit """ - organization: Organization + resourcePath: URI! """ - The name of the Organization. + The HTTP URL for this pull request commit """ - organizationName: String + url: URI! +} +""" +Represents a commit comment thread part of a pull request. +""" +type PullRequestCommitCommentThread implements Node & RepositoryNode { """ - The HTTP path for the organization + The comments that exist in this thread. """ - organizationResourcePath: URI + comments( + """ + 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 number of custom email routings for the restored member. - """ - restoredCustomEmailRoutingsCount: Int + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The number of issue assignments for the restored member. - """ - restoredIssueAssignmentsCount: Int + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): CommitCommentConnection! """ - Restored organization membership objects. + The commit the comments were made on. """ - restoredMemberships: [OrgRestoreMemberAuditEntryMembership!] + commit: Commit! + id: ID! """ - The number of restored memberships. + The file the comments were made on. """ - restoredMembershipsCount: Int + path: String """ - The number of repositories of the restored member. + The position in the diff for the commit that the comment was made on. """ - restoredRepositoriesCount: Int + position: Int """ - The number of starred repositories for the restored member. + The pull request this commit comment thread belongs to """ - restoredRepositoryStarsCount: Int + pullRequest: PullRequest! """ - The number of watched repositories for the restored member. + The repository associated with this node. """ - restoredRepositoryWatchesCount: Int + repository: Repository! +} +""" +The connection type for PullRequestCommit. +""" +type PullRequestCommitConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [PullRequestCommitEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [PullRequestCommit] """ - The HTTP path for the user. + Information to aid in pagination. """ - userResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the user. + Identifies the total count of items in the connection. """ - userUrl: URI + totalCount: Int! } """ -Types of memberships that can be restored for an Organization member. -""" -union OrgRestoreMemberAuditEntryMembership = OrgRestoreMemberMembershipOrganizationAuditEntryData | OrgRestoreMemberMembershipRepositoryAuditEntryData | OrgRestoreMemberMembershipTeamAuditEntryData - -""" -Metadata for an organization membership for org.restore_member actions +An edge in a connection. """ -type OrgRestoreMemberMembershipOrganizationAuditEntryData implements OrganizationAuditEntryData { - """ - The Organization associated with the Audit Entry. - """ - organization: Organization - - """ - The name of the Organization. - """ - organizationName: String - +type PullRequestCommitEdge { """ - The HTTP path for the organization + A cursor for use in pagination. """ - organizationResourcePath: URI + cursor: String! """ - The HTTP URL for the organization + The item at the end of the edge. """ - organizationUrl: URI + node: PullRequestCommit } """ -Metadata for a repository membership for org.restore_member actions +The connection type for PullRequest. """ -type OrgRestoreMemberMembershipRepositoryAuditEntryData implements RepositoryAuditEntryData { +type PullRequestConnection { """ - The repository associated with the action + A list of edges. """ - repository: Repository + edges: [PullRequestEdge] """ - The name of the repository + A list of nodes. """ - repositoryName: String + nodes: [PullRequest] """ - The HTTP path for the repository + Information to aid in pagination. """ - repositoryResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the repository + Identifies the total count of items in the connection. """ - repositoryUrl: URI + totalCount: Int! } """ -Metadata for a team membership for org.restore_member actions +This aggregates pull requests opened by a user within one repository. """ -type OrgRestoreMemberMembershipTeamAuditEntryData implements TeamAuditEntryData { +type PullRequestContributionsByRepository { """ - The team associated with the action + The pull request contributions. """ - team: Team + contributions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for contributions returned from the connection. + """ + orderBy: ContributionOrder = {direction: DESC} + ): CreatedPullRequestContributionConnection! """ - The name of the team + The repository in which the pull requests were opened. """ - teamName: String + repository: Repository! +} +""" +An edge in a connection. +""" +type PullRequestEdge { """ - The HTTP path for this team + A cursor for use in pagination. """ - teamResourcePath: URI + cursor: String! """ - The HTTP URL for this team + The item at the end of the edge. """ - teamUrl: URI + node: PullRequest } """ -Audit log entry for a org.unblock_user +Represents available types of methods to use when merging a pull request. """ -type OrgUnblockUserAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { +enum PullRequestMergeMethod { """ - The action name + Add all commits from the head branch to the base branch with a merge commit. """ - action: String! + MERGE """ - The user who initiated the action + Add all commits from the head branch onto the base branch individually. """ - actor: AuditEntryActor + REBASE """ - The IP address of the actor + Combine all commits from the head branch into a single commit in the base branch. """ - actorIp: String + SQUASH +} +""" +Ways in which lists of issues can be ordered upon return. +""" +input PullRequestOrder { """ - A readable representation of the actor's location + The direction in which to order pull requests by the specified field. """ - actorLocation: ActorLocation + direction: OrderDirection! """ - The username of the user who initiated the action + The field in which to order pull requests by. """ - actorLogin: String + field: PullRequestOrderField! +} +""" +Properties by which pull_requests connections can be ordered. +""" +enum PullRequestOrderField { """ - The HTTP path for the actor. + Order pull_requests by creation time """ - actorResourcePath: URI + CREATED_AT """ - The HTTP URL for the actor. + Order pull_requests by update time """ - actorUrl: URI + UPDATED_AT +} +""" +Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. +""" +type PullRequestParameters { """ - The user being unblocked by the organization. + New, reviewable commits pushed will dismiss previous pull request review approvals. """ - blockedUser: User + dismissStaleReviewsOnPush: Boolean! """ - The username of the blocked user. + Require an approving review in pull requests that modify files that have a designated code owner. """ - blockedUserName: String + requireCodeOwnerReview: Boolean! """ - The HTTP path for the blocked user. + Whether the most recent reviewable push must be approved by someone other than the person who pushed it. """ - blockedUserResourcePath: URI + requireLastPushApproval: Boolean! """ - The HTTP URL for the blocked user. + The number of approving reviews that are required before a pull request can be merged. """ - blockedUserUrl: URI + requiredApprovingReviewCount: Int! """ - The time the action was initiated + All conversations on code must be resolved before a pull request can be merged. """ - createdAt: PreciseDateTime! - id: ID! + requiredReviewThreadResolution: Boolean! +} +""" +Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. +""" +input PullRequestParametersInput { """ - The corresponding operation type for the action + New, reviewable commits pushed will dismiss previous pull request review approvals. """ - operationType: OperationType + dismissStaleReviewsOnPush: Boolean! """ - The Organization associated with the Audit Entry. + Require an approving review in pull requests that modify files that have a designated code owner. """ - organization: Organization + requireCodeOwnerReview: Boolean! """ - The name of the Organization. + Whether the most recent reviewable push must be approved by someone other than the person who pushed it. """ - organizationName: String + requireLastPushApproval: Boolean! """ - The HTTP path for the organization + The number of approving reviews that are required before a pull request can be merged. """ - organizationResourcePath: URI + requiredApprovingReviewCount: Int! """ - The HTTP URL for the organization + All conversations on code must be resolved before a pull request can be merged. """ - organizationUrl: URI + requiredReviewThreadResolution: Boolean! +} +""" +A review object for a given pull request. +""" +type PullRequestReview implements Comment & Deletable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The user affected by the action + The actor who authored the comment. """ - user: User + author: Actor """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Author's association with the subject of the comment. """ - userLogin: String + authorAssociation: CommentAuthorAssociation! """ - The HTTP path for the user. + Indicates whether the author of this review has push access to the repository. """ - userResourcePath: URI + authorCanPushToRepository: Boolean! """ - The HTTP URL for the user. + Identifies the pull request review body. """ - userUrl: URI -} + body: String! -""" -Audit log entry for a org.update_default_repository_permission -""" -type OrgUpdateDefaultRepositoryPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The body rendered to HTML. """ - action: String! + bodyHTML: HTML! """ - The user who initiated the action + The body of this review rendered as plain text. """ - actor: AuditEntryActor + bodyText: String! """ - The IP address of the actor + A list of review comments for the current pull request review. """ - actorIp: String + comments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PullRequestReviewCommentConnection! """ - A readable representation of the actor's location + Identifies the commit associated with this pull request review. """ - actorLocation: ActorLocation + commit: Commit """ - The username of the user who initiated the action + Identifies the date and time when the object was created. """ - actorLogin: String + createdAt: DateTime! """ - The HTTP path for the actor. + Check if this comment was created via an email reply. """ - actorResourcePath: URI + createdViaEmail: Boolean! """ - The HTTP URL for the actor. + Identifies the primary key from the database. """ - actorUrl: URI + databaseId: Int """ - The time the action was initiated + The actor who edited the comment. """ - createdAt: PreciseDateTime! + editor: Actor id: ID! """ - The corresponding operation type for the action + Check if this comment was edited and includes an edit with the creation data """ - operationType: OperationType + includesCreatedEdit: Boolean! """ - The Organization associated with the Audit Entry. + The moment the editor made the last edit """ - organization: Organization + lastEditedAt: DateTime """ - The name of the Organization. + A list of teams that this review was made on behalf of. """ - organizationName: String + 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 new default repository permission level for the organization. - """ - permission: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): TeamConnection! """ - The former default repository permission level for the organization. + Identifies when the comment was published at. """ - permissionWas: OrgUpdateDefaultRepositoryPermissionAuditEntryPermission + publishedAt: DateTime """ - The user affected by the action + Identifies the pull request associated with this pull request review. """ - user: User + pullRequest: PullRequest! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of reactions grouped by content left on the subject. """ - userLogin: String + reactionGroups: [ReactionGroup!] """ - The HTTP path for the user. + A list of Reactions left on the Issue. """ - userResourcePath: URI + reactions( + """ + 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 default permission a repository can have in an Organization. -""" -enum OrgUpdateDefaultRepositoryPermissionAuditEntryPermission { - """ - Can read, clone, push, and add collaborators to repositories. - """ - ADMIN + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent - """ - No default permission value. - """ - NONE + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - Can read and clone repositories. + The repository associated with this node. """ - READ + repository: Repository! """ - Can read, clone and push to repositories. + The HTTP path permalink for this PullRequestReview. """ - WRITE -} + resourcePath: URI! -""" -Audit log entry for a org.update_member event. -""" -type OrgUpdateMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Identifies the current state of the pull request review. """ - action: String! + state: PullRequestReviewState! """ - The user who initiated the action + Identifies when the Pull Request Review was submitted """ - actor: AuditEntryActor + submittedAt: DateTime """ - The IP address of the actor + Identifies the date and time when the object was last updated. """ - actorIp: String + updatedAt: DateTime! """ - A readable representation of the actor's location + The HTTP URL permalink for this PullRequestReview. """ - actorLocation: ActorLocation + url: URI! """ - The username of the user who initiated the action + A list of edits to this content. """ - actorLogin: String + userContentEdits( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserContentEditConnection """ - The HTTP path for the actor. + Check if the current viewer can delete this object. """ - actorResourcePath: URI + viewerCanDelete: Boolean! """ - The HTTP URL for the actor. + Can user react to this subject """ - actorUrl: URI + viewerCanReact: Boolean! """ - The time the action was initiated + Check if the current viewer can update this object. """ - createdAt: PreciseDateTime! - id: ID! + viewerCanUpdate: Boolean! """ - The corresponding operation type for the action + Reasons why the current viewer can not update this comment. """ - operationType: OperationType + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The Organization associated with the Audit Entry. + Did the viewer author this comment. """ - organization: Organization + viewerDidAuthor: Boolean! +} +""" +A review comment associated with a given repository pull request. +""" +type PullRequestReviewComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The name of the Organization. + The actor who authored the comment. """ - organizationName: String + author: Actor """ - The HTTP path for the organization + Author's association with the subject of the comment. """ - organizationResourcePath: URI + authorAssociation: CommentAuthorAssociation! """ - The HTTP URL for the organization + The comment body of this review comment. """ - organizationUrl: URI + body: String! """ - The new member permission level for the organization. + The body rendered to HTML. """ - permission: OrgUpdateMemberAuditEntryPermission + bodyHTML: HTML! """ - The former member permission level for the organization. + The comment body of this review comment rendered as plain text. """ - permissionWas: OrgUpdateMemberAuditEntryPermission + bodyText: String! """ - The user affected by the action + Identifies the commit associated with the comment. """ - user: User + commit: Commit """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies when the comment was created. """ - userLogin: String + createdAt: DateTime! """ - The HTTP path for the user. + Check if this comment was created via an email reply. """ - userResourcePath: URI + createdViaEmail: Boolean! """ - The HTTP URL for the user. + Identifies the primary key from the database. """ - userUrl: URI -} + databaseId: Int -""" -The permissions available to members on an Organization. -""" -enum OrgUpdateMemberAuditEntryPermission { """ - Can read, clone, push, and add collaborators to repositories. + The diff hunk to which the comment applies. """ - ADMIN + diffHunk: String! """ - Can read and clone repositories. + Identifies when the comment was created in a draft state. """ - READ -} + draftedAt: DateTime! -""" -Audit log entry for a org.update_member_repository_creation_permission event. -""" -type OrgUpdateMemberRepositoryCreationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + The actor who edited the comment. """ - action: String! + editor: Actor + id: ID! """ - The user who initiated the action + Check if this comment was edited and includes an edit with the creation data """ - actor: AuditEntryActor + includesCreatedEdit: Boolean! """ - The IP address of the actor + Returns whether or not a comment has been minimized. """ - actorIp: String + isMinimized: Boolean! """ - A readable representation of the actor's location + The moment the editor made the last edit """ - actorLocation: ActorLocation + lastEditedAt: DateTime """ - The username of the user who initiated the action + The end line number on the file to which the comment applies """ - actorLogin: String + line: Int """ - The HTTP path for the actor. + 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. """ - actorResourcePath: URI + minimizedReason: String """ - The HTTP URL for the actor. + Identifies the original commit associated with the comment. """ - actorUrl: URI + originalCommit: Commit """ - Can members create repositories in the organization. + The end line number on the file to which the comment applied when it was first created """ - canCreateRepositories: Boolean + originalLine: Int """ - The time the action was initiated + The original line index in the diff to which the comment applies. """ - createdAt: PreciseDateTime! - id: ID! + originalPosition: Int! + @deprecated(reason: "We are phasing out diff-relative positioning for PR comments Removal on 2023-10-01 UTC.") """ - The corresponding operation type for the action + The start line number on the file to which the comment applied when it was first created """ - operationType: OperationType + originalStartLine: Int """ - The Organization associated with the Audit Entry. + Identifies when the comment body is outdated """ - organization: Organization + outdated: Boolean! """ - The name of the Organization. + The path to which the comment applies. """ - organizationName: String + path: String! """ - The HTTP path for the organization + The line index in the diff to which the comment applies. """ - organizationResourcePath: URI + position: Int + @deprecated( + reason: "We are phasing out diff-relative positioning for PR comments Use the `line` and `startLine` fields instead, which are file line numbers instead of diff line numbers Removal on 2023-10-01 UTC." + ) """ - The HTTP URL for the organization + Identifies when the comment was published at. """ - organizationUrl: URI + publishedAt: DateTime """ - The user affected by the action + The pull request associated with this review comment. """ - user: User + pullRequest: PullRequest! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The pull request review associated with this review comment. """ - userLogin: String + pullRequestReview: PullRequestReview """ - The HTTP path for the user. + A list of reactions grouped by content left on the subject. """ - userResourcePath: URI + reactionGroups: [ReactionGroup!] """ - The HTTP URL for the user. + A list of Reactions left on the Issue. """ - userUrl: URI + reactions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Allows specifying the order in which reactions are returned. + """ + orderBy: ReactionOrder + ): ReactionConnection! """ - The permission for visibility level of repositories for this organization. + The comment this is a reply to. """ - visibility: OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility -} + replyTo: PullRequestReviewComment -""" -The permissions available for repository creation on an Organization. -""" -enum OrgUpdateMemberRepositoryCreationPermissionAuditEntryVisibility { """ - All organization members are restricted from creating any repositories. + The repository associated with this node. """ - ALL + repository: Repository! """ - All organization members are restricted from creating internal repositories. + The HTTP path permalink for this review comment. """ - INTERNAL + resourcePath: URI! """ - All organization members are allowed to create any repositories. + The start line number on the file to which the comment applies """ - NONE + startLine: Int """ - All organization members are restricted from creating private repositories. + Identifies the state of the comment. """ - PRIVATE + state: PullRequestReviewCommentState! """ - All organization members are restricted from creating private or internal repositories. + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file """ - PRIVATE_INTERNAL + subjectType: PullRequestReviewThreadSubjectType! """ - All organization members are restricted from creating public repositories. + Identifies when the comment was last updated. """ - PUBLIC + updatedAt: DateTime! """ - All organization members are restricted from creating public or internal repositories. + The HTTP URL permalink for this review comment. """ - PUBLIC_INTERNAL + url: URI! """ - All organization members are restricted from creating public or private repositories. + A list of edits to this content. """ - PUBLIC_PRIVATE -} + 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 -""" -Audit log entry for a org.update_member_repository_invitation_permission event. -""" -type OrgUpdateMemberRepositoryInvitationPermissionAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData { """ - The action name + Check if the current viewer can delete this object. """ - action: String! + viewerCanDelete: Boolean! """ - The user who initiated the action + Check if the current viewer can minimize this object. """ - actor: AuditEntryActor + viewerCanMinimize: Boolean! """ - The IP address of the actor + Can user react to this subject """ - actorIp: String + viewerCanReact: Boolean! """ - A readable representation of the actor's location + Check if the current viewer can update this object. """ - actorLocation: ActorLocation + viewerCanUpdate: Boolean! """ - The username of the user who initiated the action + Reasons why the current viewer can not update this comment. """ - actorLogin: String + viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! """ - The HTTP path for the actor. + Did the viewer author this comment. """ - actorResourcePath: URI + viewerDidAuthor: Boolean! +} +""" +The connection type for PullRequestReviewComment. +""" +type PullRequestReviewCommentConnection { """ - The HTTP URL for the actor. + A list of edges. """ - actorUrl: URI + edges: [PullRequestReviewCommentEdge] """ - Can outside collaborators be invited to repositories in the organization. + A list of nodes. """ - canInviteOutsideCollaboratorsToRepositories: Boolean + nodes: [PullRequestReviewComment] """ - The time the action was initiated + Information to aid in pagination. """ - createdAt: PreciseDateTime! - id: ID! + pageInfo: PageInfo! """ - The corresponding operation type for the action + Identifies the total count of items in the connection. """ - operationType: OperationType + totalCount: Int! +} +""" +An edge in a connection. +""" +type PullRequestReviewCommentEdge { """ - The Organization associated with the Audit Entry. + A cursor for use in pagination. """ - organization: Organization + cursor: String! """ - The name of the Organization. + The item at the end of the edge. """ - organizationName: String + node: PullRequestReviewComment +} +""" +The possible states of a pull request review comment. +""" +enum PullRequestReviewCommentState { """ - The HTTP path for the organization + A comment that is part of a pending review """ - organizationResourcePath: URI + PENDING """ - The HTTP URL for the organization + A comment that is part of a submitted review """ - organizationUrl: URI + SUBMITTED +} +""" +The connection type for PullRequestReview. +""" +type PullRequestReviewConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [PullRequestReviewEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [PullRequestReview] """ - The HTTP path for the user. + Information to aid in pagination. """ - userResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the user. + Identifies the total count of items in the connection. """ - userUrl: URI + totalCount: Int! } """ -An account on GitHub, with one or more owners, that has repositories, members and teams. +This aggregates pull request reviews made by a user within one repository. """ -type Organization implements Actor & MemberStatusable & Node & PackageOwner & ProfileOwner & ProjectOwner & RepositoryOwner & Sponsorable & UniformResourceLocatable { - """ - Determine if this repository owner has any items that can be pinned to their profile. - """ - anyPinnableItems( - """ - Filter to only a particular kind of pinnable item. - """ - type: PinnableItemType - ): Boolean! - +type PullRequestReviewContributionsByRepository { """ - Audit log entries of the organization + The pull request review contributions. """ - auditLog( + contributions( """ Returns the elements in the list that come after the specified cursor. """ @@ -20094,106 +36163,115 @@ type Organization implements Actor & MemberStatusable & Node & PackageOwner & Pr last: Int """ - Ordering options for the returned audit log entries. - """ - orderBy: AuditLogOrder = {field: CREATED_AT, direction: DESC} - - """ - The query string to filter audit entries + Ordering options for contributions returned from the connection. """ - query: String - ): OrganizationAuditEntryConnection! + orderBy: ContributionOrder = {direction: DESC} + ): CreatedPullRequestReviewContributionConnection! """ - A URL pointing to the organization's public avatar. + The repository in which the pull request reviews were made. """ - avatarUrl( - """ - The size of the resulting square image. - """ - size: Int - ): URI! + repository: Repository! +} +""" +The review status of a pull request. +""" +enum PullRequestReviewDecision { """ - Identifies the date and time when the object was created. + The pull request has received an approving review. """ - createdAt: DateTime! + APPROVED """ - Identifies the primary key from the database. + Changes have been requested on the pull request. """ - databaseId: Int + CHANGES_REQUESTED """ - The organization's public profile description. + A review is required before the pull request can be merged. """ - description: String + REVIEW_REQUIRED +} +""" +An edge in a connection. +""" +type PullRequestReviewEdge { """ - The organization's public profile description rendered to HTML. + A cursor for use in pagination. """ - descriptionHTML: String + cursor: String! """ - A list of domains owned by the organization. + The item at the end of the edge. """ - domains( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + node: PullRequestReview +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +The possible events to perform on a pull request review. +""" +enum PullRequestReviewEvent { + """ + Submit feedback and approve merging these changes. + """ + APPROVE - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Submit general feedback without explicit approval. + """ + COMMENT - """ - Filter by if the domain is verified. - """ - isVerified: Boolean = null + """ + Dismiss review so it now longer effects merging. + """ + DISMISS - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Submit feedback that must be addressed before merging. + """ + REQUEST_CHANGES +} - """ - Ordering options for verifiable domains returned. - """ - orderBy: VerifiableDomainOrder = {field: DOMAIN, direction: ASC} - ): VerifiableDomainConnection +""" +The possible states of a pull request review. +""" +enum PullRequestReviewState { + """ + A review allowing the pull request to merge. + """ + APPROVED """ - The organization's public email. + A review blocking the pull request from merging. """ - email: String + CHANGES_REQUESTED """ - True if this user/organization has a GitHub Sponsors listing. + An informational review. """ - hasSponsorsListing: Boolean! - id: ID! + COMMENTED """ - The interaction ability settings for this organization. + A review that has been dismissed. """ - interactionAbility: RepositoryInteractionAbility + DISMISSED """ - The setting value for whether the organization has an IP allow list enabled. + A review that has not yet been submitted. """ - ipAllowListEnabledSetting: IpAllowListEnabledSettingValue! + PENDING +} +""" +A threaded list of comments for a given pull request. +""" +type PullRequestReviewThread implements Node { """ - The IP addresses that are allowed to access resources owned by the organization. + A list of pull request comments associated with the thread. """ - ipAllowListEntries( + comments( """ Returns the elements in the list that come after the specified cursor. """ @@ -20215,201 +36293,221 @@ type Organization implements Actor & MemberStatusable & Node & PackageOwner & Pr last: Int """ - Ordering options for IP allow list entries returned. + Skips the first _n_ elements in the list. """ - orderBy: IpAllowListEntryOrder = {field: ALLOW_LIST_VALUE, direction: ASC} - ): IpAllowListEntryConnection! + skip: Int + ): PullRequestReviewCommentConnection! """ - Check if the given account is sponsoring this user/organization. + The side of the diff on which this thread was placed. """ - isSponsoredBy( - """ - The target account's login. - """ - accountLogin: String! - ): Boolean! + diffSide: DiffSide! + id: ID! """ - True if the viewer is sponsored by this user/organization. + Whether or not the thread has been collapsed (resolved) """ - isSponsoringViewer: Boolean! + isCollapsed: Boolean! """ - Whether the organization has verified its profile email and website. + Indicates whether this thread was outdated by newer changes. """ - isVerified: Boolean! + isOutdated: Boolean! """ - Showcases a selection of repositories and gists that the profile owner has - either curated or that have been selected automatically based on popularity. + Whether this thread has been resolved """ - itemShowcase: ProfileItemShowcase! + isResolved: Boolean! """ - The organization's public profile location. + The line in the file to which this thread refers """ - location: String + line: Int """ - The organization's login name. + The original line in the file to which this thread refers. """ - login: String! + originalLine: Int """ - Get the status messages members of this entity have set that are either public or visible only to the organization. + The original start line in the file to which this thread refers (multi-line only). """ - memberStatuses( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + originalStartLine: Int - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the file path of this thread. + """ + path: String! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Identifies the pull request associated with this thread. + """ + pullRequest: PullRequest! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Identifies the repository associated with this thread. + """ + repository: Repository! - """ - Ordering options for user statuses returned from the connection. - """ - orderBy: UserStatusOrder = {field: UPDATED_AT, direction: DESC} - ): UserStatusConnection! + """ + The user who resolved this thread + """ + resolvedBy: User """ - A list of users who are members of this organization. + The side of the diff that the first line of the thread starts on (multi-line only) """ - membersWithRole( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + startDiffSide: DiffSide - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The start line in the file to which this thread refers (multi-line only) + """ + startLine: Int - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file + """ + subjectType: PullRequestReviewThreadSubjectType! - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): OrganizationMemberConnection! + """ + Indicates whether the current viewer can reply to this thread. + """ + viewerCanReply: Boolean! """ - The organization's public profile name. + Whether or not the viewer can resolve this thread """ - name: String + viewerCanResolve: Boolean! """ - The HTTP path creating a new team + Whether or not the viewer can unresolve this thread """ - newTeamResourcePath: URI! + viewerCanUnresolve: Boolean! +} +""" +Review comment threads for a pull request review. +""" +type PullRequestReviewThreadConnection { """ - The HTTP URL creating a new team + A list of edges. """ - newTeamUrl: URI! + edges: [PullRequestReviewThreadEdge] """ - Indicates if email notification delivery for this organization is restricted to verified domains. + A list of nodes. """ - notificationDeliveryRestrictionEnabledSetting: NotificationRestrictionSettingValue! + nodes: [PullRequestReviewThread] """ - The billing email for the organization. + Information to aid in pagination. """ - organizationBillingEmail: String + pageInfo: PageInfo! """ - A list of packages under the owner. + Identifies the total count of items in the connection. """ - packages( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + totalCount: Int! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +An edge in a connection. +""" +type PullRequestReviewThreadEdge { + """ + 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: PullRequestReviewThread +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +The possible subject types of a pull request review comment. +""" +enum PullRequestReviewThreadSubjectType { + """ + A comment that has been made against the file of a pull request + """ + FILE - """ - Find packages by their names. - """ - names: [String] + """ + A comment that has been made against the line of a pull request + """ + LINE +} - """ - Ordering of the returned packages. - """ - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} +""" +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! - """ - Filter registry package by type. - """ - packageType: PackageType + """ + The last commit the viewer has seen. + """ + lastSeenCommit: Commit! - """ - Find packages in a repository by ID. - """ - repositoryId: ID - ): PackageConnection! + """ + The pull request to which the marker belongs. + """ + pullRequest: PullRequest! +} + +""" +The possible states of a pull request. +""" +enum PullRequestState { + """ + A pull request that has been closed without being merged. + """ + CLOSED + + """ + A pull request that has been closed by being merged. + """ + MERGED + + """ + A pull request that is still open. + """ + OPEN +} +""" +A repository pull request template. +""" +type PullRequestTemplate { """ - A list of users who have been invited to join this organization. + The body of the template """ - 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 + body: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The filename of the template + """ + filename: String - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! + """ + 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 repositories and gists this profile owner can pin to their profile. + A list of pull request comments associated with the thread. """ - pinnableItems( + comments( """ Returns the elements in the list that come after the specified cursor. """ @@ -20431,634 +36529,660 @@ type Organization implements Actor & MemberStatusable & Node & PackageOwner & Pr last: Int """ - Filter the types of pinnable items that are returned. + Skips the first _n_ elements in the list. """ - types: [PinnableItemType!] - ): PinnableItemConnection! + skip: Int + ): PullRequestReviewCommentConnection! """ - A list of repositories and gists this profile owner has pinned to their profile + The side of the diff on which this thread was placed. """ - pinnedItems( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + diffSide: DiffSide! + id: ID! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Whether or not the thread has been collapsed (resolved) + """ + isCollapsed: Boolean! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Indicates whether this thread was outdated by newer changes. + """ + isOutdated: Boolean! - """ - Filter the types of pinned items that are returned. - """ - types: [PinnableItemType!] - ): PinnableItemConnection! + """ + Whether this thread has been resolved + """ + isResolved: Boolean! """ - Returns how many more items this profile owner can pin to their profile. + The line in the file to which this thread refers """ - pinnedItemsRemaining: Int! + line: Int """ - Find project by number. + Identifies the file path of this thread. """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + path: String! """ - A list of projects under the owner. + Identifies the pull request associated with this thread. """ - projects( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + pullRequest: PullRequest! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the repository associated with this thread. + """ + repository: Repository! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The user who resolved this thread + """ + resolvedBy: User - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The side of the diff that the first line of the thread starts on (multi-line only) + """ + startDiffSide: DiffSide - """ - Ordering options for projects returned from the connection - """ - orderBy: ProjectOrder + """ + The line of the first file diff in the thread. + """ + startLine: Int - """ - Query to search projects by, currently only searching by name. - """ - search: String + """ + The level at which the comments in the corresponding thread are targeted, can be a diff line or a file + """ + subjectType: PullRequestReviewThreadSubjectType! - """ - A list of states to filter the projects by. - """ - states: [ProjectState!] - ): ProjectConnection! + """ + Indicates whether the current viewer can reply to this thread. + """ + viewerCanReply: Boolean! """ - The HTTP path listing organization's projects + Whether or not the viewer can resolve this thread """ - projectsResourcePath: URI! + viewerCanResolve: Boolean! """ - The HTTP URL listing organization's projects + Whether or not the viewer can unresolve this thread """ - projectsUrl: URI! + viewerCanUnresolve: Boolean! +} +""" +The connection type for PullRequestTimelineItem. +""" +type PullRequestTimelineConnection { """ - A list of repositories that the user owns. + A list of edges. """ - repositories( - """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. - """ - affiliations: [RepositoryAffiliation] + edges: [PullRequestTimelineItemEdge] - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + """ + A list of nodes. + """ + nodes: [PullRequestTimelineItem] - """ - 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! +} - """ - If non-null, filters repositories according to whether they are forks of another repository - """ - isFork: Boolean +""" +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 - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean +""" +An edge in a connection. +""" +type PullRequestTimelineItemEdge { + """ + 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: PullRequestTimelineItem +} - """ - Ordering options for repositories returned from the connection - """ - orderBy: RepositoryOrder +""" +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 - """ - 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 connection type for PullRequestTimelineItems. +""" +type PullRequestTimelineItemsConnection { + """ + A list of edges. + """ + edges: [PullRequestTimelineItemsEdge] - """ - If non-null, filters repositories according to privacy - """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + """ + Identifies the count of items after applying `before` and `after` filters. + """ + filteredCount: Int! """ - Find Repository. + A list of nodes. """ - repository( - """ - Name of Repository to find. - """ - name: String! - ): Repository + nodes: [PullRequestTimelineItems] """ - When true the organization requires all members, billing managers, and outside - collaborators to enable two-factor authentication. + Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. """ - requiresTwoFactorAuthentication: Boolean + pageCount: Int! """ - The HTTP path for this organization. + Information to aid in pagination. """ - resourcePath: URI! + pageInfo: PageInfo! """ - The Organization's SAML identity providers + Identifies the total count of items in the connection. """ - samlIdentityProvider: OrganizationIdentityProvider + totalCount: Int! """ - The GitHub Sponsors listing for this user or organization. + Identifies the date and time when the timeline was last updated. """ - sponsorsListing: SponsorsListing + updatedAt: DateTime! +} +""" +An edge in a connection. +""" +type PullRequestTimelineItemsEdge { """ - The viewer's sponsorship of this entity. + A cursor for use in pagination. """ - sponsorshipForViewerAsSponsor: Sponsorship + cursor: String! """ - This object's sponsorships as the maintainer. + The item at the end of the edge. """ - sponsorshipsAsMaintainer( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + node: PullRequestTimelineItems +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +The possible item types found in a timeline. +""" +enum PullRequestTimelineItemsItemType { + """ + Represents an 'added_to_merge_queue' event on a given pull request. + """ + ADDED_TO_MERGE_QUEUE_EVENT - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Represents a 'added_to_project' event on a given issue or pull request. + """ + ADDED_TO_PROJECT_EVENT - """ - Whether or not to include private sponsorships in the result set - """ - includePrivate: Boolean = false + """ + Represents an 'assigned' event on any assignable object. + """ + ASSIGNED_EVENT - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Represents a 'automatic_base_change_failed' event on a given pull request. + """ + AUTOMATIC_BASE_CHANGE_FAILED_EVENT - """ - 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! + """ + Represents a 'automatic_base_change_succeeded' event on a given pull request. + """ + AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT """ - This object's sponsorships as the sponsor. + Represents a 'auto_merge_disabled' event on a given pull request. """ - sponsorshipsAsSponsor( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + AUTO_MERGE_DISABLED_EVENT - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Represents a 'auto_merge_enabled' event on a given pull request. + """ + AUTO_MERGE_ENABLED_EVENT - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Represents a 'auto_rebase_enabled' event on a given pull request. + """ + AUTO_REBASE_ENABLED_EVENT - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Represents a 'auto_squash_enabled' event on a given pull request. + """ + AUTO_SQUASH_ENABLED_EVENT - """ - 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! + """ + Represents a 'base_ref_changed' event on a given issue or pull request. + """ + BASE_REF_CHANGED_EVENT """ - Find an organization's team by its slug. + Represents a 'base_ref_deleted' event on a given pull request. """ - team( - """ - The name or slug of the team to find. - """ - slug: String! - ): Team + BASE_REF_DELETED_EVENT """ - A list of teams in this organization. + Represents a 'base_ref_force_pushed' event on a given pull request. """ - teams( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + BASE_REF_FORCE_PUSHED_EVENT - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Represents a 'closed' event on any `Closable`. + """ + CLOSED_EVENT - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Represents a 'comment_deleted' event on a given issue or pull request. + """ + COMMENT_DELETED_EVENT - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Represents a 'connected' event on a given issue or pull request. + """ + CONNECTED_EVENT - """ - If true, filters teams that are mapped to an LDAP Group (Enterprise only) - """ - ldapMapped: Boolean + """ + Represents a 'converted_note_to_issue' event on a given issue or pull request. + """ + CONVERTED_NOTE_TO_ISSUE_EVENT - """ - Ordering options for teams returned from the connection - """ - orderBy: TeamOrder + """ + Represents a 'converted_to_discussion' event on a given issue. + """ + CONVERTED_TO_DISCUSSION_EVENT - """ - If non-null, filters teams according to privacy - """ - privacy: TeamPrivacy + """ + Represents a 'convert_to_draft' event on a given pull request. + """ + CONVERT_TO_DRAFT_EVENT - """ - If non-null, filters teams with query on team name and team slug - """ - query: String + """ + Represents a mention made by one issue or pull request to another. + """ + CROSS_REFERENCED_EVENT - """ - If non-null, filters teams according to whether the viewer is an admin or member on team - """ - role: TeamRole + """ + Represents a 'demilestoned' event on a given issue or pull request. + """ + DEMILESTONED_EVENT - """ - If true, restrict to only root teams - """ - rootTeamsOnly: Boolean = false + """ + Represents a 'deployed' event on a given pull request. + """ + DEPLOYED_EVENT - """ - User logins to filter by - """ - userLogins: [String!] - ): TeamConnection! + """ + Represents a 'deployment_environment_changed' event on a given pull request. + """ + DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT """ - The HTTP path listing organization's teams + Represents a 'disconnected' event on a given issue or pull request. """ - teamsResourcePath: URI! + DISCONNECTED_EVENT """ - The HTTP URL listing organization's teams + Represents a 'head_ref_deleted' event on a given pull request. """ - teamsUrl: URI! + HEAD_REF_DELETED_EVENT """ - The organization's Twitter username. + Represents a 'head_ref_force_pushed' event on a given pull request. """ - twitterUsername: String + HEAD_REF_FORCE_PUSHED_EVENT """ - Identifies the date and time when the object was last updated. + Represents a 'head_ref_restored' event on a given pull request. """ - updatedAt: DateTime! + HEAD_REF_RESTORED_EVENT """ - The HTTP URL for this organization. + Represents a comment on an Issue. """ - url: URI! + ISSUE_COMMENT """ - Organization is adminable by the viewer. + Represents a 'labeled' event on a given issue or pull request. """ - viewerCanAdminister: Boolean! + LABELED_EVENT """ - Can the viewer pin repositories and gists to the profile? + Represents a 'locked' event on a given issue or pull request. """ - viewerCanChangePinnedItems: Boolean! + LOCKED_EVENT """ - Can the current viewer create new projects on this owner. + Represents a 'marked_as_duplicate' event on a given issue or pull request. """ - viewerCanCreateProjects: Boolean! + MARKED_AS_DUPLICATE_EVENT """ - Viewer can create repositories on this organization + Represents a 'mentioned' event on a given issue or pull request. """ - viewerCanCreateRepositories: Boolean! + MENTIONED_EVENT """ - Viewer can create teams on this organization. + Represents a 'merged' event on a given pull request. """ - viewerCanCreateTeams: Boolean! + MERGED_EVENT """ - Whether or not the viewer is able to sponsor this user/organization. + Represents a 'milestoned' event on a given issue or pull request. """ - viewerCanSponsor: Boolean! + MILESTONED_EVENT """ - Viewer is an active member of this organization. + Represents a 'moved_columns_in_project' event on a given issue or pull request. """ - viewerIsAMember: Boolean! + MOVED_COLUMNS_IN_PROJECT_EVENT """ - True if the viewer is sponsoring this user/organization. + Represents a 'pinned' event on a given issue or pull request. """ - viewerIsSponsoring: Boolean! + PINNED_EVENT """ - The organization's public profile URL. + Represents a Git commit part of a pull request. """ - 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 + PULL_REQUEST_COMMIT -""" -The connection type for OrganizationAuditEntry. -""" -type OrganizationAuditEntryConnection { """ - A list of edges. + Represents a commit comment thread part of a pull request. """ - edges: [OrganizationAuditEntryEdge] + PULL_REQUEST_COMMIT_COMMENT_THREAD """ - A list of nodes. + A review object for a given pull request. """ - nodes: [OrganizationAuditEntry] + PULL_REQUEST_REVIEW """ - Information to aid in pagination. + A threaded list of comments for a given pull request. """ - pageInfo: PageInfo! + PULL_REQUEST_REVIEW_THREAD """ - Identifies the total count of items in the connection. + Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. """ - totalCount: Int! -} + PULL_REQUEST_REVISION_MARKER -""" -Metadata for an audit entry with action org.* -""" -interface OrganizationAuditEntryData { """ - The Organization associated with the Audit Entry. + Represents a 'ready_for_review' event on a given pull request. """ - organization: Organization + READY_FOR_REVIEW_EVENT """ - The name of the Organization. + Represents a 'referenced' event on a given `ReferencedSubject`. """ - organizationName: String + REFERENCED_EVENT """ - The HTTP path for the organization + Represents a 'removed_from_merge_queue' event on a given pull request. """ - organizationResourcePath: URI + REMOVED_FROM_MERGE_QUEUE_EVENT """ - The HTTP URL for the organization + Represents a 'removed_from_project' event on a given issue or pull request. """ - organizationUrl: URI -} + REMOVED_FROM_PROJECT_EVENT -""" -An edge in a connection. -""" -type OrganizationAuditEntryEdge { """ - A cursor for use in pagination. + Represents a 'renamed' event on a given issue or pull request """ - cursor: String! + RENAMED_TITLE_EVENT """ - The item at the end of the edge. + Represents a 'reopened' event on any `Closable`. """ - node: OrganizationAuditEntry -} + REOPENED_EVENT -""" -The connection type for Organization. -""" -type OrganizationConnection { """ - A list of edges. + Represents a 'review_dismissed' event on a given issue or pull request. """ - edges: [OrganizationEdge] + REVIEW_DISMISSED_EVENT """ - A list of nodes. + Represents an 'review_requested' event on a given pull request. """ - nodes: [Organization] + REVIEW_REQUESTED_EVENT """ - Information to aid in pagination. + Represents an 'review_request_removed' event on a given pull request. """ - pageInfo: PageInfo! + REVIEW_REQUEST_REMOVED_EVENT """ - Identifies the total count of items in the connection. + Represents a 'subscribed' event on a given `Subscribable`. """ - totalCount: Int! -} + SUBSCRIBED_EVENT -""" -An edge in a connection. -""" -type OrganizationEdge { """ - A cursor for use in pagination. + Represents a 'transferred' event on a given issue or pull request. """ - cursor: String! + TRANSFERRED_EVENT """ - The item at the end of the edge. + Represents an 'unassigned' event on any assignable object. """ - node: Organization -} + UNASSIGNED_EVENT -""" -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. + Represents an 'unlabeled' event on a given issue or pull request. """ - digestMethod: URI + UNLABELED_EVENT """ - External Identities provisioned by this Identity Provider + Represents an 'unlocked' event on a given issue or pull request. """ - externalIdentities( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + UNLOCKED_EVENT - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ExternalIdentityConnection! - id: ID! + """ + Represents an 'unmarked_as_duplicate' event on a given issue or pull request. + """ + UNMARKED_AS_DUPLICATE_EVENT """ - The x509 certificate used by the Identity Provider to sign assertions and responses. + Represents an 'unpinned' event on a given issue or pull request. """ - idpCertificate: X509Certificate + UNPINNED_EVENT """ - The Issuer Entity ID for the SAML Identity Provider + Represents an 'unsubscribed' event on a given `Subscribable`. """ - issuer: String + UNSUBSCRIBED_EVENT """ - Organization this Identity Provider belongs to + Represents a 'user_blocked' event on a given user. """ - organization: Organization + USER_BLOCKED_EVENT +} +""" +The possible target states when updating a pull request. +""" +enum PullRequestUpdateState { """ - The signature algorithm used to sign SAML requests for the Identity Provider. + A pull request that has been closed without being merged. """ - signatureMethod: URI + CLOSED """ - The URL endpoint for the Identity Provider's SAML SSO. + A pull request that is still open. """ - ssoUrl: URI + OPEN } """ -An Invitation for a user to an organization. +A Git push. """ -type OrganizationInvitation implements Node { +type Push implements Node { + id: ID! + """ - Identifies the date and time when the object was created. + The SHA after the push """ - createdAt: DateTime! + nextSha: GitObjectID """ - The email address of the user invited to the organization. + The permalink for this push. """ - email: String - id: ID! + permalink: URI! """ - The type of invitation that was sent (e.g. email, user). + The SHA before the push """ - invitationType: OrganizationInvitationType! + previousSha: GitObjectID """ - The user who was invited to the organization. + The actor who pushed """ - invitee: User + pusher: Actor! """ - The user who created the invitation. + The repository that was pushed to """ - inviter: User! + repository: Repository! +} +""" +A team, user, or app who has the ability to push to a protected branch. +""" +type PushAllowance implements Node { """ - The organization the invite is for + The actor that can push. """ - organization: Organization! + actor: PushAllowanceActor """ - The user's pending role in the organization (e.g. member, owner). + Identifies the branch protection rule associated with the allowed user, team, or app. """ - role: OrganizationInvitationRole! + branchProtectionRule: BranchProtectionRule + id: ID! } """ -The connection type for OrganizationInvitation. +Types that can be an actor. """ -type OrganizationInvitationConnection { +union PushAllowanceActor = App | Team | User + +""" +The connection type for PushAllowance. +""" +type PushAllowanceConnection { """ A list of edges. """ - edges: [OrganizationInvitationEdge] + edges: [PushAllowanceEdge] """ A list of nodes. """ - nodes: [OrganizationInvitation] + nodes: [PushAllowance] """ Information to aid in pagination. @@ -21074,7 +37198,7 @@ type OrganizationInvitationConnection { """ An edge in a connection. """ -type OrganizationInvitationEdge { +type PushAllowanceEdge { """ A cursor for use in pagination. """ @@ -21083,182 +37207,300 @@ type OrganizationInvitationEdge { """ The item at the end of the edge. """ - node: OrganizationInvitation + node: PushAllowance } """ -The possible organization invitation roles. +The query root of GitHub's GraphQL interface. """ -enum OrganizationInvitationRole { +type Query { """ - The user is invited to be an admin of the organization. + Look up a code of conduct by its key """ - ADMIN + codeOfConduct( + """ + The code of conduct's key + """ + key: String! + ): CodeOfConduct """ - The user is invited to be a billing manager of the organization. + Look up a code of conduct by its key """ - BILLING_MANAGER + codesOfConduct: [CodeOfConduct] """ - The user is invited to be a direct member of the organization. + Look up an enterprise by URL slug. """ - DIRECT_MEMBER + enterprise( + """ + The enterprise invitation token. + """ + invitationToken: String - """ - The user's previous role will be reinstated. - """ - REINSTATE -} + """ + The enterprise URL slug. + """ + slug: String! + ): Enterprise -""" -The possible organization invitation types. -""" -enum OrganizationInvitationType { """ - The invitation was to an email address. + Look up a pending enterprise administrator invitation by invitee, enterprise and role. """ - EMAIL + enterpriseAdministratorInvitation( + """ + The slug of the enterprise the user was invited to join. + """ + enterpriseSlug: String! - """ - The invitation was to an existing user. - """ - USER -} + """ + The role for the business member invitation. + """ + role: EnterpriseAdministratorRole! -""" -The connection type for User. -""" -type OrganizationMemberConnection { - """ - A list of edges. - """ - edges: [OrganizationMemberEdge] + """ + The login of the user invited to join the business. + """ + userLogin: String! + ): EnterpriseAdministratorInvitation """ - A list of nodes. + Look up a pending enterprise administrator invitation by invitation token. """ - nodes: [User] + enterpriseAdministratorInvitationByToken( + """ + The invitation token sent with the invitation email. + """ + invitationToken: String! + ): EnterpriseAdministratorInvitation """ - Information to aid in pagination. + Look up an open source license by its key """ - pageInfo: PageInfo! + license( + """ + The license's downcased SPDX ID + """ + key: String! + ): License """ - Identifies the total count of items in the connection. + Return a list of known open source licenses """ - totalCount: Int! -} + licenses: [License]! -""" -Represents a user within an organization. -""" -type OrganizationMemberEdge { """ - A cursor for use in pagination. + Get alphabetically sorted list of Marketplace categories """ - cursor: String! + marketplaceCategories( + """ + Exclude categories with no listings. + """ + excludeEmpty: Boolean - """ - Whether the organization member has two factor enabled or not. Returns null if information is not available to viewer. - """ - hasTwoFactorEnabled: Boolean + """ + Returns top level categories only, excluding any subcategories. + """ + excludeSubcategories: Boolean + + """ + Return only the specified categories. + """ + includeCategories: [String!] + ): [MarketplaceCategory!]! """ - The item at the end of the edge. + Look up a Marketplace category by its slug. """ - node: User + marketplaceCategory( + """ + The URL slug of the category. + """ + slug: String! + + """ + Also check topic aliases for the category slug + """ + useTopicAliases: Boolean + ): MarketplaceCategory """ - The role this user has in the organization. + Look up a single Marketplace listing """ - role: OrganizationMemberRole -} + marketplaceListing( + """ + Select the listing that matches this slug. It's the short name of the listing used in its URL. + """ + slug: String! + ): MarketplaceListing -""" -The possible roles within an organization for its members. -""" -enum OrganizationMemberRole { """ - The user is an administrator of the organization. + Look up Marketplace listings """ - ADMIN + marketplaceListings( + """ + Select listings that can be administered by the specified user. + """ + adminId: ID + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Select listings visible to the viewer even if they are not approved. If omitted or + false, only approved listings will be returned. + """ + allStates: Boolean + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Select only listings with the given category. + """ + categorySlug: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Select listings for products owned by the specified organization. + """ + organizationId: ID + + """ + Select only listings where the primary category matches the given category slug. + """ + primaryCategoryOnly: Boolean = false + + """ + Select the listings with these slugs, if they are visible to the viewer. + """ + slugs: [String] + + """ + Also check topic aliases for the category slug + """ + useTopicAliases: Boolean + + """ + Select listings to which user has admin access. If omitted, listings visible to the + viewer are returned. + """ + viewerCanAdmin: Boolean + + """ + Select only listings that offer a free trial. + """ + withFreeTrialsOnly: Boolean = false + ): MarketplaceListingConnection! """ - The user is a member of the organization. + Return information about the GitHub instance """ - MEMBER -} + meta: GitHubMetadata! -""" -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. + Fetches an object given its ID. """ - ALL + node( + """ + ID of the object. + """ + id: ID! + ): Node """ - Members will not be able to create public or private repositories. + Lookup nodes by a list of IDs. """ - DISABLED + nodes( + """ + The list of node IDs. + """ + ids: [ID!]! + ): [Node]! """ - Members will be able to create only private repositories. + Lookup a organization by login. """ - PRIVATE -} + organization( + """ + The organization's login. + """ + login: String! + ): Organization -""" -Ordering options for organization connections. -""" -input OrganizationOrder { """ - The ordering direction. + The client's rate limit information. """ - direction: OrderDirection! + rateLimit( + """ + If true, calculate the cost for the query without evaluating it + """ + dryRun: Boolean = false + ): RateLimit """ - The field to order organizations by. + Workaround for re-exposing the root query object. (Refer to + https://github.com/facebook/relay/issues/112 for more information.) """ - field: OrganizationOrderField! -} + relay: Query! -""" -Properties by which organization connections can be ordered. -""" -enum OrganizationOrderField { """ - Order organizations by creation time + Lookup a given repository by the owner and repository name. """ - CREATED_AT + repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + + """ + The name of the repository + """ + name: String! - """ - Order organizations by login - """ - LOGIN -} + """ + The login field of a user or organization + """ + owner: String! + ): Repository -""" -An organization teams hovercard context -""" -type OrganizationTeamsHovercardContext implements HovercardContext { """ - A string describing this context + Lookup a repository owner (ie. either a User or an Organization) by login. """ - message: String! + repositoryOwner( + """ + The username to lookup the owner by. + """ + login: String! + ): RepositoryOwner """ - An octicon to accompany this context + Lookup resource by a URL. """ - octicon: String! + resource( + """ + The URL. + """ + url: URI! + ): UniformResourceLocatable """ - Teams in this organization the user is a member of that are relevant + Perform a search across resources, returning a maximum of 1,000 results. """ - relevantTeams( + search( """ Returns the elements in the list that come after the specified cursor. """ @@ -21278,42 +37520,22 @@ type OrganizationTeamsHovercardContext implements HovercardContext { Returns the last _n_ elements from the list. """ last: Int - ): TeamConnection! - - """ - The path for the full team list for this user - """ - teamsResourcePath: URI! - - """ - The URL for the full team list for this user - """ - teamsUrl: URI! - - """ - The total number of teams the user is on in the organization - """ - totalTeamCount: Int! -} -""" -An organization list hovercard context -""" -type OrganizationsHovercardContext implements HovercardContext { - """ - A string describing this context - """ - message: String! + """ + The search string to look for. + """ + query: String! - """ - An octicon to accompany this context - """ - octicon: String! + """ + The types of search items to search within. + """ + type: SearchType! + ): SearchResultItemConnection! """ - Organizations this user is a member of that are relevant + GitHub Security Advisories """ - relevantOrganizations( + securityAdvisories( """ Returns the elements in the list that come after the specified cursor. """ @@ -21324,68 +37546,56 @@ type OrganizationsHovercardContext implements HovercardContext { """ before: String + """ + A list of classifications to filter advisories by. + """ + classifications: [SecurityAdvisoryClassification!] + """ Returns the first _n_ elements from the list. """ first: Int + """ + Filter advisories by identifier, e.g. GHSA or CVE. + """ + identifier: SecurityAdvisoryIdentifierFilter + """ Returns the last _n_ elements from the list. """ last: Int - ): OrganizationConnection! - - """ - The total number of organizations this user is in - """ - totalOrganizationCount: Int! -} - -""" -Information for an uploaded package. -""" -type Package implements Node { - id: ID! - - """ - Find the latest version for the package. - """ - latestVersion: PackageVersion - - """ - Identifies the name of the package. - """ - name: String! - """ - Identifies the type of the package. - """ - packageType: PackageType! + """ + Ordering options for the returned topics. + """ + orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} - """ - The repository this package belongs to. - """ - repository: Repository + """ + Filter advisories to those published since a time in the past. + """ + publishedSince: DateTime - """ - Statistics about package activity. - """ - statistics: PackageStatistics + """ + Filter advisories to those updated since a time in the past. + """ + updatedSince: DateTime + ): SecurityAdvisoryConnection! """ - Find package version by version string. + Fetch a Security Advisory by its GHSA ID """ - version( + securityAdvisory( """ - The package version. + GitHub Security Advisory ID. """ - version: String! - ): PackageVersion + ghsaId: String! + ): SecurityAdvisory """ - list of versions for this package + Software Vulnerabilities documented by GitHub Security Advisories """ - versions( + securityVulnerabilities( """ Returns the elements in the list that come after the specified cursor. """ @@ -21396,6 +37606,16 @@ type Package implements Node { """ before: String + """ + A list of advisory classifications to filter vulnerabilities by. + """ + classifications: [SecurityAdvisoryClassification!] + + """ + An ecosystem to filter vulnerabilities by. + """ + ecosystem: SecurityAdvisoryEcosystem + """ Returns the first _n_ elements from the list. """ @@ -21407,199 +37627,165 @@ type Package implements Node { last: Int """ - Ordering of the returned packages. + Ordering options for the returned topics. """ - orderBy: PackageVersionOrder = {field: CREATED_AT, direction: DESC} - ): PackageVersionConnection! -} + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} -""" -The connection type for Package. -""" -type PackageConnection { - """ - A list of edges. - """ - edges: [PackageEdge] + """ + A package name to filter vulnerabilities by. + """ + package: String - """ - A list of nodes. - """ - nodes: [Package] + """ + A list of severities to filter vulnerabilities by. + """ + severities: [SecurityAdvisorySeverity!] + ): SecurityVulnerabilityConnection! """ - Information to aid in pagination. + Users and organizations who can be sponsored via GitHub Sponsors. """ - pageInfo: PageInfo! + sponsorables( + """ + 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 PackageEdge { - """ - A cursor for use in pagination. - """ - cursor: 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. - """ - The item at the end of the edge. - """ - node: Package -} + **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 -""" -A file in a package version. -""" -type PackageFile implements Node { - id: ID! + """ + 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 - """ - MD5 hash of the file. - """ - md5: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Name of the file. - """ - name: String! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The package version this file belongs to. - """ - packageVersion: PackageVersion + """ + 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 - """ - SHA1 hash of the file. - """ - sha1: String + """ + Ordering options for users and organizations returned from the connection. + """ + orderBy: SponsorableOrder = {field: LOGIN, direction: ASC} - """ - SHA256 hash of the file. - """ - sha256: String + """ + Optional organization username for whose dependencies should be checked. + Used when onlyDependencies = true. Omit to check your own dependencies. If + you are not an administrator of the organization, only dependencies from its + public repositories will be considered. + """ + orgLoginForDependencies: String + ): SponsorableItemConnection! """ - Size of the file in bytes. + Look up a topic by name. """ - size: Int + topic( + """ + The topic's name. + """ + name: String! + ): Topic """ - Identifies the date and time when the object was last updated. + Lookup a user by login. """ - updatedAt: DateTime! + user( + """ + The user's login. + """ + login: String! + ): User """ - URL to download the asset. + The currently authenticated user. """ - url: URI + viewer: User! } """ -The connection type for PackageFile. +Represents the client's rate limit. """ -type PackageFileConnection { - """ - A list of edges. - """ - edges: [PackageFileEdge] - - """ - A list of nodes. - """ - nodes: [PackageFile] - - """ - Information to aid in pagination. - """ - pageInfo: PageInfo! - +type RateLimit { """ - Identifies the total count of items in the connection. + The point cost for the current query counting against the rate limit. """ - totalCount: Int! -} + cost: Int! -""" -An edge in a connection. -""" -type PackageFileEdge { """ - A cursor for use in pagination. + The maximum number of points the client is permitted to consume in a 60 minute window. """ - cursor: String! + limit: Int! """ - The item at the end of the edge. + The maximum number of nodes this query may return """ - node: PackageFile -} + nodeCount: Int! -""" -Ways in which lists of package files can be ordered upon return. -""" -input PackageFileOrder { """ - The direction in which to order package files by the specified field. + The number of points remaining in the current rate limit window. """ - direction: OrderDirection + remaining: Int! """ - The field in which to order package files by. + The time at which the current rate limit window resets in UTC epoch seconds. """ - field: PackageFileOrderField -} + resetAt: DateTime! -""" -Properties by which package file connections can be ordered. -""" -enum PackageFileOrderField { """ - Order package files by creation time + The number of points used in the current rate limit window. """ - CREATED_AT + used: Int! } """ -Ways in which lists of packages can be ordered upon return. +Represents a subject that can be reacted on. """ -input PackageOrder { - """ - The direction in which to order packages by the specified field. - """ - direction: OrderDirection - +interface Reactable { """ - The field in which to order packages by. + Identifies the primary key from the database. """ - field: PackageOrderField -} + databaseId: Int + id: ID! -""" -Properties by which package connections can be ordered. -""" -enum PackageOrderField { """ - Order packages by creation time + A list of reactions grouped by content left on the subject. """ - CREATED_AT -} - -""" -Represents an owner of a package. -""" -interface PackageOwner { - id: ID! + reactionGroups: [ReactionGroup!] """ - A list of packages under the owner. + A list of Reactions left on the Issue. """ - packages( + reactions( """ Returns the elements in the list that come after the specified cursor. """ @@ -21610,6 +37796,11 @@ interface PackageOwner { """ before: String + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + """ Returns the first _n_ elements from the list. """ @@ -21621,183 +37812,102 @@ interface PackageOwner { last: Int """ - Find packages by their names. - """ - names: [String] - - """ - Ordering of the returned packages. - """ - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} - - """ - Filter registry package by type. - """ - packageType: PackageType - - """ - Find packages in a repository by ID. + Allows specifying the order in which reactions are returned. """ - repositoryId: ID - ): PackageConnection! -} - -""" -Represents a object that contains package activity statistics such as downloads. -""" -type PackageStatistics { - """ - Number of times the package was downloaded since it was created. - """ - downloadsTotalCount: Int! -} - -""" -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! + orderBy: ReactionOrder + ): ReactionConnection! """ - Version that the tag is associated with. + Can user react to this subject """ - version: PackageVersion + viewerCanReact: Boolean! } """ -The possible types of a package. +The connection type for User. """ -enum PackageType { - """ - A debian package. - """ - DEBIAN - - """ - A docker image. - """ - DOCKER - - """ - A maven package. - """ - MAVEN - - """ - An npm package. - """ - NPM - - """ - A nuget package. - """ - NUGET - +type ReactingUserConnection { """ - A python package. + A list of edges. """ - PYPI + edges: [ReactingUserEdge] """ - A rubygems package. + A list of nodes. """ - RUBYGEMS -} + nodes: [User] -""" -Information about a specific package version. -""" -type PackageVersion implements Node { """ - List of files associated with this package version + Information to aid in pagination. """ - files( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering of the returned package files. - """ - orderBy: PackageFileOrder = {field: CREATED_AT, direction: ASC} - ): PackageFileConnection! - id: ID! + pageInfo: PageInfo! """ - The package associated with this version. + Identifies the total count of items in the connection. """ - package: Package + totalCount: Int! +} +""" +Represents a user that's made a reaction. +""" +type ReactingUserEdge { """ - The platform this version was built for. + A cursor for use in pagination. """ - platform: String + cursor: String! + node: User! """ - Whether or not this version is a pre-release. + The moment when the user made the reaction. """ - preRelease: Boolean! + reactedAt: DateTime! +} +""" +An emoji reaction to a particular piece of content. +""" +type Reaction implements Node { """ - The README of this package version. + Identifies the emoji reaction. """ - readme: String + content: ReactionContent! """ - The release associated with this package version. + Identifies the date and time when the object was created. """ - release: Release + createdAt: DateTime! """ - Statistics about package activity. + Identifies the primary key from the database. """ - statistics: PackageVersionStatistics + databaseId: Int + id: ID! """ - The package version summary. + The reactable piece of content """ - summary: String + reactable: Reactable! """ - The version string. + Identifies the user who created this reaction. """ - version: String! + user: User } """ -The connection type for PackageVersion. +A list of reactions that have been left on the subject. """ -type PackageVersionConnection { +type ReactionConnection { """ A list of edges. """ - edges: [PackageVersionEdge] + edges: [ReactionEdge] """ A list of nodes. """ - nodes: [PackageVersion] + nodes: [Reaction] """ Information to aid in pagination. @@ -21808,156 +37918,194 @@ type PackageVersionConnection { Identifies the total count of items in the connection. """ totalCount: Int! + + """ + Whether or not the authenticated user has left a reaction on the subject. + """ + viewerHasReacted: Boolean! } """ -An edge in a connection. +Emojis that can be attached to Issues, Pull Requests and Comments. """ -type PackageVersionEdge { +enum ReactionContent { """ - A cursor for use in pagination. + Represents the `:confused:` emoji. """ - cursor: String! + CONFUSED """ - The item at the end of the edge. + Represents the `:eyes:` emoji. """ - node: PackageVersion -} + EYES -""" -Ways in which lists of package versions can be ordered upon return. -""" -input PackageVersionOrder { """ - The direction in which to order package versions by the specified field. + Represents the `:heart:` emoji. """ - direction: OrderDirection + HEART """ - The field in which to order package versions by. + Represents the `:hooray:` emoji. """ - field: PackageVersionOrderField -} + HOORAY -""" -Properties by which package version connections can be ordered. -""" -enum PackageVersionOrderField { """ - Order package versions by creation time + Represents the `:laugh:` emoji. """ - CREATED_AT + LAUGH + + """ + Represents the `:rocket:` emoji. + """ + ROCKET + + """ + Represents the `:-1:` emoji. + """ + THUMBS_DOWN + + """ + Represents the `:+1:` emoji. + """ + THUMBS_UP } """ -Represents a object that contains package version activity statistics such as downloads. +An edge in a connection. """ -type PackageVersionStatistics { +type ReactionEdge { """ - Number of times the package was downloaded since it was created. + A cursor for use in pagination. """ - downloadsTotalCount: Int! + cursor: String! + + """ + The item at the end of the edge. + """ + node: Reaction } """ -Information about pagination in a connection. +A group of emoji reactions to a particular piece of content. """ -type PageInfo { +type ReactionGroup { """ - When paginating forwards, the cursor to continue. + Identifies the emoji reaction. """ - endCursor: String + content: ReactionContent! """ - When paginating forwards, are there more items? + Identifies when the reaction was created. """ - hasNextPage: Boolean! + createdAt: DateTime """ - When paginating backwards, are there more items? + Reactors to the reaction subject with the emotion represented by this reaction group. """ - hasPreviousPage: Boolean! + reactors( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - When paginating backwards, the cursor to continue. - """ - startCursor: String -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Types that can grant permissions on a repository to a user -""" -union PermissionGranter = Organization | Repository | Team + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ReactorConnection! -""" -A level of permission and source for a user's access to a repository. -""" -type PermissionSource { """ - The organization the repository belongs to. + The subject that was reacted to. """ - organization: Organization! + subject: Reactable! """ - The level of access this source has granted to the user. + Users who have reacted to the reaction subject with the emotion represented by this reaction group """ - permission: DefaultRepositoryPermissionField! + users( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ReactingUserConnection! + @deprecated( + reason: "Reactors can now be mannequins, bots, and organizations. Use the `reactors` field instead. Removal on 2021-10-01 UTC." + ) """ - The source of this permission. + Whether or not the authenticated user has left a reaction on the subject. """ - source: PermissionGranter! + viewerHasReacted: Boolean! } """ -Autogenerated input type of PinIssue +Ways in which lists of reactions can be ordered upon return. """ -input PinIssueInput { +input ReactionOrder { """ - A unique identifier for the client performing the mutation. + The direction in which to order reactions by the specified field. """ - clientMutationId: String + direction: OrderDirection! """ - The ID of the issue to be pinned + The field in which to order reactions by. """ - issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) + field: ReactionOrderField! } """ -Autogenerated return type of PinIssue +A list of fields that reactions can be ordered by. """ -type PinIssuePayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String - +enum ReactionOrderField { """ - The issue that was pinned + Allows ordering a list of reactions by when they were created. """ - issue: Issue + CREATED_AT } """ -Types that can be pinned to a profile page. +Types that can be assigned to reactions. """ -union PinnableItem = Gist | Repository +union Reactor = Bot | Mannequin | Organization | User """ -The connection type for PinnableItem. +The connection type for Reactor. """ -type PinnableItemConnection { +type ReactorConnection { """ A list of edges. """ - edges: [PinnableItemEdge] + edges: [ReactorEdge] """ A list of nodes. """ - nodes: [PinnableItem] + nodes: [Reactor] """ Information to aid in pagination. @@ -21971,125 +38119,165 @@ type PinnableItemConnection { } """ -An edge in a connection. +Represents an author of a reaction. """ -type PinnableItemEdge { +type ReactorEdge { """ A cursor for use in pagination. """ cursor: String! """ - The item at the end of the edge. + The author of the reaction. """ - node: PinnableItem + node: Reactor! + + """ + The moment when the user made the reaction. + """ + reactedAt: DateTime! } """ -Represents items that can be pinned to a profile page or dashboard. +Represents a 'ready_for_review' event on a given pull request. """ -enum PinnableItemType { +type ReadyForReviewEvent implements Node & UniformResourceLocatable { """ - A gist. + Identifies the actor who performed the event. """ - GIST + actor: Actor """ - An issue. + Identifies the date and time when the object was created. """ - ISSUE + createdAt: DateTime! + id: ID! """ - An organization. + PullRequest referenced by event. """ - ORGANIZATION + pullRequest: PullRequest! """ - A project. + The HTTP path for this ready for review event. """ - PROJECT + resourcePath: URI! """ - A pull request. + The HTTP URL for this ready for review event. """ - PULL_REQUEST + url: URI! +} +""" +Represents a Git reference. +""" +type Ref implements Node { """ - A repository. + A list of pull requests with this ref as the head ref. """ - REPOSITORY + associatedPullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - A team. - """ - TEAM + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String - """ - A user. - """ - USER -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! -""" -Represents a 'pinned' event on a given issue or pull request. -""" -type PinnedEvent implements Node { """ - Identifies the actor who performed the event. + Branch protection rules for this ref """ - actor: Actor + branchProtectionRule: BranchProtectionRule """ - Identifies the date and time when the object was created. + Compares the current ref as a base ref to another head ref, if the comparison can be made. """ - createdAt: DateTime! + compare( + """ + The head ref to compare against. + """ + headRef: String! + ): Comparison id: ID! """ - Identifies the issue associated with the event. + The ref name. """ - issue: Issue! -} + name: String! -""" -A Pinned Issue is a issue pinned to a repository's index page. -""" -type PinnedIssue implements Node { """ - Identifies the primary key from the database. + The ref's prefix, such as `refs/heads/` or `refs/tags/`. """ - databaseId: Int - id: ID! + prefix: String! """ - The issue that was pinned. + Branch protection rules that are viewable by non-admins """ - issue: Issue! + refUpdateRule: RefUpdateRule """ - The actor that pinned this issue. + The repository the ref belongs to. """ - pinnedBy: Actor! + repository: Repository! """ - The repository that this issue was pinned to. + The object the ref points to. Returns null when object does not exist. """ - repository: Repository! + target: GitObject } """ -The connection type for PinnedIssue. +The connection type for Ref. """ -type PinnedIssueConnection { +type RefConnection { """ A list of edges. """ - edges: [PinnedIssueEdge] + edges: [RefEdge] """ A list of nodes. """ - nodes: [PinnedIssue] + nodes: [Ref] """ Information to aid in pagination. @@ -22105,7 +38293,7 @@ type PinnedIssueConnection { """ An edge in a connection. """ -type PinnedIssueEdge { +type RefEdge { """ A cursor for use in pagination. """ @@ -22114,349 +38302,358 @@ type PinnedIssueEdge { """ The item at the end of the edge. """ - node: PinnedIssue + node: Ref } """ -An ISO-8601 encoded UTC date string with millisecond precision. -""" -scalar PreciseDateTime - -""" -Audit log entry for a private_repository_forking.disable event. +Parameters to be used for the ref_name condition """ -type PrivateRepositoryForkingDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { - """ - The action name - """ - action: String! - +type RefNameConditionTarget { """ - 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 + Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. """ - actorLogin: String - - """ - The HTTP path for the actor. - """ - actorResourcePath: URI + exclude: [String!]! """ - The HTTP URL for the actor. + 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. """ - actorUrl: URI + include: [String!]! +} +""" +Parameters to be used for the ref_name condition +""" +input RefNameConditionTargetInput { """ - The time the action was initiated + Array of ref names or patterns to exclude. The condition will not pass if any of these patterns match. """ - createdAt: PreciseDateTime! + exclude: [String!]! """ - The HTTP path for this enterprise. + 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. """ - enterpriseResourcePath: URI + include: [String!]! +} +""" +Ways in which lists of git refs can be ordered upon return. +""" +input RefOrder { """ - The slug of the enterprise. + The direction in which to order refs by the specified field. """ - enterpriseSlug: String + direction: OrderDirection! """ - The HTTP URL for this enterprise. + The field in which to order refs by. """ - enterpriseUrl: URI - id: ID! + field: RefOrderField! +} +""" +Properties by which ref connections can be ordered. +""" +enum RefOrderField { """ - The corresponding operation type for the action + Order refs by their alphanumeric name """ - operationType: OperationType + ALPHABETICAL """ - The Organization associated with the Audit Entry. + Order refs by underlying commit date if the ref prefix is refs/tags/ """ - organization: Organization + TAG_COMMIT_DATE +} +""" +A ref update +""" +input RefUpdate @preview(toggledBy: "update-refs-preview") { """ - The name of the Organization. + The value this ref should be updated to. """ - organizationName: String + afterOid: GitObjectID! """ - The HTTP path for the organization + The value this ref needs to point to before the update. """ - organizationResourcePath: URI + beforeOid: GitObjectID """ - The HTTP URL for the organization + Force a non fast-forward update. """ - organizationUrl: URI + force: Boolean = false """ - The repository associated with the action + The fully qualified name of the ref to be update. For example `refs/heads/branch-name` """ - repository: Repository + name: GitRefname! +} +""" +A ref update rules for a viewer. +""" +type RefUpdateRule { """ - The name of the repository + Can this branch be deleted. """ - repositoryName: String + allowsDeletions: Boolean! """ - The HTTP path for the repository + Are force pushes allowed on this branch. """ - repositoryResourcePath: URI + allowsForcePushes: Boolean! """ - The HTTP URL for the repository + Can matching branches be created. """ - repositoryUrl: URI + blocksCreations: Boolean! """ - The user affected by the action + Identifies the protection rule pattern. """ - user: User + pattern: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Number of approving reviews required to update matching branches. """ - userLogin: String + requiredApprovingReviewCount: Int """ - The HTTP path for the user. + List of required status check contexts that must pass for commits to be accepted to matching branches. """ - userResourcePath: URI + requiredStatusCheckContexts: [String] """ - The HTTP URL for the user. + Are reviews from code owners required to update matching branches. """ - userUrl: URI -} + requiresCodeOwnerReviews: Boolean! -""" -Audit log entry for a private_repository_forking.enable event. -""" -type PrivateRepositoryForkingEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + Are conversations required to be resolved before merging. """ - action: String! + requiresConversationResolution: Boolean! """ - The user who initiated the action + Are merge commits prohibited from being pushed to this branch. """ - actor: AuditEntryActor + requiresLinearHistory: Boolean! """ - The IP address of the actor + Are commits required to be signed. """ - actorIp: String + requiresSignatures: Boolean! """ - A readable representation of the actor's location + Is the viewer allowed to dismiss reviews. """ - actorLocation: ActorLocation + viewerAllowedToDismissReviews: Boolean! """ - The username of the user who initiated the action + Can the viewer push to the branch """ - actorLogin: String + viewerCanPush: Boolean! +} +""" +Represents a 'referenced' event on a given `ReferencedSubject`. +""" +type ReferencedEvent implements Node { """ - The HTTP path for the actor. + Identifies the actor who performed the event. """ - actorResourcePath: URI + actor: Actor """ - The HTTP URL for the actor. + Identifies the commit associated with the 'referenced' event. """ - actorUrl: URI + commit: Commit """ - The time the action was initiated + Identifies the repository associated with the 'referenced' event. """ - createdAt: PreciseDateTime! + commitRepository: Repository! """ - The HTTP path for this enterprise. + Identifies the date and time when the object was created. """ - enterpriseResourcePath: URI + createdAt: DateTime! + id: ID! """ - The slug of the enterprise. + Reference originated in a different repository. """ - enterpriseSlug: String + isCrossRepository: Boolean! """ - The HTTP URL for this enterprise. + Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference. """ - enterpriseUrl: URI - id: ID! + isDirectReference: Boolean! """ - The corresponding operation type for the action + Object referenced by event. """ - operationType: OperationType + subject: ReferencedSubject! +} + +""" +Any referencable object +""" +union ReferencedSubject = Issue | PullRequest +""" +Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes +""" +input RegenerateEnterpriseIdentityProviderRecoveryCodesInput { """ - The Organization associated with the Audit Entry. + A unique identifier for the client performing the mutation. """ - organization: Organization + clientMutationId: String """ - The name of the Organization. + The ID of the enterprise on which to set an identity provider. """ - organizationName: String + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) +} +""" +Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes +""" +type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload { """ - The HTTP path for the organization + A unique identifier for the client performing the mutation. """ - organizationResourcePath: URI + clientMutationId: String """ - The HTTP URL for the organization + The identity provider for the enterprise. """ - organizationUrl: URI + identityProvider: EnterpriseIdentityProvider +} +""" +Autogenerated input type of RegenerateVerifiableDomainToken +""" +input RegenerateVerifiableDomainTokenInput { """ - The repository associated with the action + A unique identifier for the client performing the mutation. """ - repository: Repository + clientMutationId: String """ - The name of the repository + The ID of the verifiable domain to regenerate the verification token of. """ - repositoryName: String + id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"]) +} +""" +Autogenerated return type of RegenerateVerifiableDomainToken +""" +type RegenerateVerifiableDomainTokenPayload { """ - The HTTP path for the repository + A unique identifier for the client performing the mutation. """ - repositoryResourcePath: URI + clientMutationId: String """ - The HTTP URL for the repository + The verification token that was generated. """ - repositoryUrl: URI + verificationToken: String +} +""" +Autogenerated input type of RejectDeployments +""" +input RejectDeploymentsInput { """ - The user affected by the action + A unique identifier for the client performing the mutation. """ - user: User + clientMutationId: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Optional comment for rejecting deployments """ - userLogin: String + comment: String = "" """ - The HTTP path for the user. + The ids of environments to reject deployments """ - userResourcePath: URI + environmentIds: [ID!]! """ - The HTTP URL for the user. + The node ID of the workflow run containing the pending deployments. """ - userUrl: URI + workflowRunId: ID! @possibleTypes(concreteTypes: ["WorkflowRun"]) } """ -A curatable list of repositories relating to a repository owner, which defaults -to showing the most popular repositories they own. +Autogenerated return type of RejectDeployments """ -type ProfileItemShowcase { +type RejectDeploymentsPayload { """ - Whether or not the owner has pinned any repositories or gists. + A unique identifier for the client performing the mutation. """ - hasPinnedItems: Boolean! + clientMutationId: String """ - 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. + The affected deployments. """ - items( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PinnableItemConnection! + deployments: [Deployment!] } """ -Represents any entity on GitHub that has a profile page. +A release contains the content for a release. """ -interface ProfileOwner { +type Release implements Node & Reactable & UniformResourceLocatable { """ - Determine if this repository owner has any items that can be pinned to their profile. + The author of the release """ - anyPinnableItems( - """ - Filter to only a particular kind of pinnable item. - """ - type: PinnableItemType - ): Boolean! + author: User """ - The public profile email. + Identifies the date and time when the object was created. """ - email: String - id: ID! + createdAt: DateTime! """ - Showcases a selection of repositories and gists that the profile owner has - either curated or that have been selected automatically based on popularity. + Identifies the primary key from the database. """ - itemShowcase: ProfileItemShowcase! + databaseId: Int """ - The public profile location. + The description of the release. """ - location: String + description: String """ - The username used to login. + The description of this release rendered to HTML. """ - login: String! + descriptionHTML: HTML + id: ID! """ - The public profile name. + Whether or not the release is a draft """ - name: String + isDraft: Boolean! """ - A list of repositories and gists this profile owner can pin to their profile. + Whether or not the release is the latest releast """ - pinnableItems( + isLatest: Boolean! + + """ + 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. """ @@ -22476,17 +38673,27 @@ interface ProfileOwner { Returns the last _n_ elements from the list. """ last: Int + ): UserConnection - """ - Filter the types of pinnable items that are returned. - """ - types: [PinnableItemType!] - ): PinnableItemConnection! + """ + The title of the release. + """ + name: String """ - A list of repositories and gists this profile owner has pinned to their profile + Identifies the date and time when the release was created. """ - pinnedItems( + 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. """ @@ -22497,6 +38704,11 @@ interface ProfileOwner { """ before: String + """ + Allows filtering Reactions by emoji. + """ + content: ReactionContent + """ Returns the first _n_ elements from the list. """ @@ -22508,55 +38720,15 @@ interface ProfileOwner { last: Int """ - Filter the types of pinned items that are returned. + Allows specifying the order in which reactions are returned. """ - types: [PinnableItemType!] - ): 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 Closable & Node & 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 + orderBy: ReactionOrder + ): ReactionConnection! """ - List of columns in the project + List of releases assets which are dependent on this release. """ - columns( + releaseAssets( """ Returns the elements in the list that come after the specified cursor. """ @@ -22576,83 +38748,47 @@ type Project implements Closable & Node & Updatable { Returns the last _n_ elements from the list. """ last: Int - ): ProjectColumnConnection! - - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - - """ - The actor who originally created the project. - """ - creator: Actor - - """ - Identifies the primary key from the database. - """ - databaseId: Int - id: ID! - """ - The project's name. - """ - name: String! + """ + A list of names to filter the assets by. + """ + name: String + ): ReleaseAssetConnection! """ - The project's number. + The repository that the release belongs to. """ - number: Int! + repository: Repository! """ - The project's owner. Currently limited to repositories, organizations, and users. + The HTTP path for this issue """ - owner: ProjectOwner! + resourcePath: URI! """ - List of pending cards in this project + A description of the release, rendered to HTML without any links in it. """ - pendingCards( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - A list of archived states to filter the cards by - """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - + shortDescriptionHTML( """ - Returns the last _n_ elements from the list. + How many characters to return. """ - last: Int - ): ProjectCardConnection! + limit: Int = 200 + ): HTML """ - Project progress details. + The Git tag the release points to """ - progress: ProjectProgress! + tag: Ref """ - The HTTP path for this project + The tag commit for this release. """ - resourcePath: URI! + tagCommit: Commit """ - Whether the project is open or closed. + The name of the release's Git tag """ - state: ProjectState! + tagName: String! """ Identifies the date and time when the object was last updated. @@ -22660,32 +38796,24 @@ type Project implements Closable & Node & Updatable { updatedAt: DateTime! """ - The HTTP URL for this project + The HTTP URL for this issue """ url: URI! """ - Check if the current viewer can update this object. + Can user react to this subject """ - viewerCanUpdate: Boolean! + viewerCanReact: Boolean! } """ -A card in a project. +A release asset contains the content for a release asset. """ -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 - +type ReleaseAsset implements Node { """ - The card content item + The asset's content-type """ - content: ProjectCardItem + contentType: String! """ Identifies the date and time when the object was created. @@ -22693,80 +38821,100 @@ type ProjectCard implements Node { createdAt: DateTime! """ - The actor who created this card + The number of times this asset was downloaded """ - creator: Actor + downloadCount: Int! """ - Identifies the primary key from the database. + Identifies the URL where you can download the release asset via the browser. """ - databaseId: Int + downloadUrl: URI! id: ID! """ - Whether the card is archived + Identifies the title of the release asset. """ - isArchived: Boolean! + name: String! """ - The card note + Release that the asset is associated with """ - note: String + release: Release """ - The project that contains this card. + The size (in bytes) of the asset """ - project: Project! + size: Int! """ - The HTTP path for this card + Identifies the date and time when the object was last updated. """ - resourcePath: URI! + updatedAt: DateTime! """ - The state of ProjectCard + The user that performed the upload """ - state: ProjectCardState + uploadedBy: User! """ - Identifies the date and time when the object was last updated. + Identifies the URL of the release asset. """ - updatedAt: DateTime! + url: URI! +} + +""" +The connection type for ReleaseAsset. +""" +type ReleaseAssetConnection { + """ + A list of edges. + """ + edges: [ReleaseAssetEdge] """ - The HTTP URL for this card + A list of nodes. """ - url: URI! + nodes: [ReleaseAsset] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! } """ -The possible archived states of a project card. +An edge in a connection. """ -enum ProjectCardArchivedState { +type ReleaseAssetEdge { """ - A project card that is archived + A cursor for use in pagination. """ - ARCHIVED + cursor: String! """ - A project card that is not archived + The item at the end of the edge. """ - NOT_ARCHIVED + node: ReleaseAsset } """ -The connection type for ProjectCard. +The connection type for Release. """ -type ProjectCardConnection { +type ReleaseConnection { """ A list of edges. """ - edges: [ProjectCardEdge] + edges: [ReleaseEdge] """ A list of nodes. """ - nodes: [ProjectCard] + nodes: [Release] """ Information to aid in pagination. @@ -22782,7 +38930,7 @@ type ProjectCardConnection { """ An edge in a connection. """ -type ProjectCardEdge { +type ReleaseEdge { """ A cursor for use in pagination. """ @@ -22791,3854 +38939,3067 @@ type ProjectCardEdge { """ The item at the end of the edge. """ - node: ProjectCard + node: Release } """ -An issue or PR and its owning repository to be used in a project card. +Ways in which lists of releases can be ordered upon return. """ -input ProjectCardImport { +input ReleaseOrder { """ - The issue or pull request number. + The direction in which to order releases by the specified field. """ - number: Int! + direction: OrderDirection! """ - Repository name with owner (owner/repository). + The field in which to order releases by. """ - repository: String! + field: ReleaseOrderField! } """ -Types that can be inside Project Cards. +Properties by which release connections can be ordered. """ -union ProjectCardItem = Issue | PullRequest +enum ReleaseOrderField { + """ + Order releases by creation time + """ + CREATED_AT + + """ + Order releases alphabetically by name + """ + NAME +} """ -Various content states of a ProjectCard +Autogenerated input type of RemoveAssigneesFromAssignable """ -enum ProjectCardState { +input RemoveAssigneesFromAssignableInput { """ - The card has content only. + The id of the assignable object to remove assignees from. """ - CONTENT_ONLY + assignableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Assignable") """ - The card has a note only. + The id of users to remove as assignees. """ - NOTE_ONLY + assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"]) """ - The card is redacted. + A unique identifier for the client performing the mutation. """ - REDACTED + clientMutationId: String } """ -A column inside a project. +Autogenerated return type of RemoveAssigneesFromAssignable """ -type ProjectColumn implements Node { +type RemoveAssigneesFromAssignablePayload { """ - List of cards in the column + The item that was unassigned. """ - cards( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - A list of archived states to filter the cards by - """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + assignable: Assignable - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectCardConnection! + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String +} +""" +Autogenerated input type of RemoveEnterpriseAdmin +""" +input RemoveEnterpriseAdminInput { """ - Identifies the date and time when the object was created. + A unique identifier for the client performing the mutation. """ - createdAt: DateTime! + clientMutationId: String """ - Identifies the primary key from the database. + The Enterprise ID from which to remove the administrator. """ - databaseId: Int - id: ID! + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The project column's name. + The login of the user to remove as an administrator. """ - name: String! + login: String! +} +""" +Autogenerated return type of RemoveEnterpriseAdmin +""" +type RemoveEnterpriseAdminPayload { """ - The project that contains this column. + The user who was removed as an administrator. """ - project: Project! + admin: User """ - The semantic purpose of the column + A unique identifier for the client performing the mutation. """ - purpose: ProjectColumnPurpose + clientMutationId: String """ - The HTTP path for this project column + The updated enterprise. """ - resourcePath: URI! + enterprise: Enterprise """ - Identifies the date and time when the object was last updated. + A message confirming the result of removing an administrator. """ - updatedAt: DateTime! + message: String """ - The HTTP URL for this project column + The viewer performing the mutation. """ - url: URI! + viewer: User } """ -The connection type for ProjectColumn. +Autogenerated input type of RemoveEnterpriseIdentityProvider """ -type ProjectColumnConnection { +input RemoveEnterpriseIdentityProviderInput { """ - A list of edges. + A unique identifier for the client performing the mutation. """ - edges: [ProjectColumnEdge] + clientMutationId: String """ - A list of nodes. + The ID of the enterprise from which to remove the identity provider. """ - nodes: [ProjectColumn] + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) +} +""" +Autogenerated return type of RemoveEnterpriseIdentityProvider +""" +type RemoveEnterpriseIdentityProviderPayload { """ - Information to aid in pagination. + A unique identifier for the client performing the mutation. """ - pageInfo: PageInfo! + clientMutationId: String """ - Identifies the total count of items in the connection. + The identity provider that was removed from the enterprise. """ - totalCount: Int! + identityProvider: EnterpriseIdentityProvider } """ -An edge in a connection. +Autogenerated input type of RemoveEnterpriseMember """ -type ProjectColumnEdge { +input RemoveEnterpriseMemberInput { """ - A cursor for use in pagination. + A unique identifier for the client performing the mutation. """ - cursor: String! + clientMutationId: String """ - The item at the end of the edge. + The ID of the enterprise from which the user should be removed. """ - node: ProjectColumn + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the user to remove from the enterprise. + """ + userId: ID! @possibleTypes(concreteTypes: ["User"]) } """ -A project column and a list of its issues and PRs. +Autogenerated return type of RemoveEnterpriseMember """ -input ProjectColumnImport { +type RemoveEnterpriseMemberPayload { """ - The name of the column. + A unique identifier for the client performing the mutation. """ - columnName: String! + clientMutationId: String """ - A list of issues and pull requests in the column. + The updated enterprise. """ - issues: [ProjectCardImport!] + enterprise: Enterprise """ - The position of the column, starting from 0. + The user that was removed from the enterprise. """ - position: Int! + user: User + + """ + The viewer performing the mutation. + """ + viewer: User } """ -The semantic purpose of the column - todo, in progress, or done. +Autogenerated input type of RemoveEnterpriseOrganization """ -enum ProjectColumnPurpose { +input RemoveEnterpriseOrganizationInput { """ - The column contains cards which are complete + A unique identifier for the client performing the mutation. """ - DONE + clientMutationId: String """ - The column contains cards which are currently being worked on + The ID of the enterprise from which the organization should be removed. """ - IN_PROGRESS + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The column contains cards still to be worked on + The ID of the organization to remove from the enterprise. """ - TODO + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) } """ -A list of projects associated with the owner. +Autogenerated return type of RemoveEnterpriseOrganization """ -type ProjectConnection { +type RemoveEnterpriseOrganizationPayload { """ - A list of edges. + A unique identifier for the client performing the mutation. """ - edges: [ProjectEdge] + clientMutationId: String """ - A list of nodes. + The updated enterprise. """ - nodes: [Project] + enterprise: Enterprise """ - Information to aid in pagination. + The organization that was removed from the enterprise. """ - pageInfo: PageInfo! + organization: Organization """ - Identifies the total count of items in the connection. + The viewer performing the mutation. """ - totalCount: Int! + viewer: User } """ -An edge in a connection. +Autogenerated input type of RemoveEnterpriseSupportEntitlement """ -type ProjectEdge { +input RemoveEnterpriseSupportEntitlementInput { """ - A cursor for use in pagination. + A unique identifier for the client performing the mutation. """ - cursor: String! + clientMutationId: String """ - The item at the end of the edge. + The ID of the Enterprise which the admin belongs to. """ - node: Project + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The login of a member who will lose the support entitlement. + """ + login: String! } """ -Ways in which lists of projects can be ordered upon return. +Autogenerated return type of RemoveEnterpriseSupportEntitlement """ -input ProjectOrder { +type RemoveEnterpriseSupportEntitlementPayload { """ - The direction in which to order projects by the specified field. + A unique identifier for the client performing the mutation. """ - direction: OrderDirection! + clientMutationId: String """ - The field in which to order projects by. + A message confirming the result of removing the support entitlement. """ - field: ProjectOrderField! + message: String } """ -Properties by which project connections can be ordered. +Autogenerated input type of RemoveLabelsFromLabelable """ -enum ProjectOrderField { +input RemoveLabelsFromLabelableInput { """ - Order projects by creation time + A unique identifier for the client performing the mutation. """ - CREATED_AT + clientMutationId: String """ - Order projects by name + The ids of labels to remove. """ - NAME + labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"]) """ - Order projects by update time + The id of the Labelable to remove labels from. """ - UPDATED_AT + labelableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Labelable") } """ -Represents an owner of a Project. +Autogenerated return type of RemoveLabelsFromLabelable """ -interface ProjectOwner { - id: ID! - +type RemoveLabelsFromLabelablePayload { """ - Find project by number. + A unique identifier for the client performing the mutation. """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + clientMutationId: String """ - A list of projects under the owner. + The Labelable the labels were removed from. """ - projects( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for projects returned from the connection - """ - orderBy: ProjectOrder + labelable: Labelable +} - """ - Query to search projects by, currently only searching by name. - """ - search: String +""" +Autogenerated input type of RemoveOutsideCollaborator +""" +input RemoveOutsideCollaboratorInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String - """ - A list of states to filter the projects by. - """ - states: [ProjectState!] - ): ProjectConnection! + """ + The ID of the organization to remove the outside collaborator from. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) """ - The HTTP path listing owners projects + The ID of the outside collaborator to remove. """ - projectsResourcePath: URI! + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} +""" +Autogenerated return type of RemoveOutsideCollaborator +""" +type RemoveOutsideCollaboratorPayload { """ - The HTTP URL listing owners projects + A unique identifier for the client performing the mutation. """ - projectsUrl: URI! + clientMutationId: String """ - Can the current viewer create new projects on this owner. + The user that was removed as an outside collaborator. """ - viewerCanCreateProjects: Boolean! + removedUser: User } """ -Project progress stats. +Autogenerated input type of RemoveReaction """ -type ProjectProgress { +input RemoveReactionInput { """ - The number of done cards. + A unique identifier for the client performing the mutation. """ - doneCount: Int! + clientMutationId: String """ - The percentage of done cards. + The name of the emoji reaction to remove. """ - donePercentage: Float! + content: ReactionContent! """ - Whether progress tracking is enabled and cards with purpose exist for this project + The Node ID of the subject to modify. """ - enabled: Boolean! + subjectId: ID! + @possibleTypes( + concreteTypes: [ + "CommitComment" + "Discussion" + "DiscussionComment" + "Issue" + "IssueComment" + "PullRequest" + "PullRequestReview" + "PullRequestReviewComment" + "Release" + "TeamDiscussion" + "TeamDiscussionComment" + ] + abstractType: "Reactable" + ) +} +""" +Autogenerated return type of RemoveReaction +""" +type RemoveReactionPayload { """ - The number of in-progress cards. + A unique identifier for the client performing the mutation. """ - inProgressCount: Int! + clientMutationId: String """ - The percentage of in-progress cards. + The reaction object. """ - inProgressPercentage: Float! + reaction: Reaction """ - The number of to do cards. + The reaction groups for the subject. """ - todoCount: Int! + reactionGroups: [ReactionGroup!] """ - The percentage of to do cards. + The reactable subject. """ - todoPercentage: Float! + subject: Reactable } """ -State of the project; either 'open' or 'closed' +Autogenerated input type of RemoveStar """ -enum ProjectState { +input RemoveStarInput { """ - The project is closed. + A unique identifier for the client performing the mutation. """ - CLOSED + clientMutationId: String """ - The project is open. + The Starrable ID to unstar. """ - OPEN + starrableId: ID! @possibleTypes(concreteTypes: ["Gist", "Repository", "Topic"], abstractType: "Starrable") } """ -GitHub-provided templates for Projects +Autogenerated return type of RemoveStar """ -enum ProjectTemplate { +type RemoveStarPayload { """ - Create a board with v2 triggers to automatically move cards across To do, In progress and Done columns. + A unique identifier for the client performing the mutation. """ - AUTOMATED_KANBAN_V2 + clientMutationId: String """ - Create a board with triggers to automatically move cards across columns with review automation. + The starrable. """ - AUTOMATED_REVIEWS_KANBAN + starrable: Starrable +} +""" +Autogenerated input type of RemoveUpvote +""" +input RemoveUpvoteInput { """ - Create a board with columns for To do, In progress and Done. + A unique identifier for the client performing the mutation. """ - BASIC_KANBAN + clientMutationId: String """ - Create a board to triage and prioritize bugs with To do, priority, and Done columns. + The Node ID of the discussion or comment to remove upvote. """ - BUG_TRIAGE + subjectId: ID! @possibleTypes(concreteTypes: ["Discussion", "DiscussionComment"], abstractType: "Votable") } """ -A user's public key. +Autogenerated return type of RemoveUpvote """ -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 - +type RemoveUpvotePayload { """ - 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. + A unique identifier for the client performing the mutation. """ - createdAt: DateTime + clientMutationId: String """ - The fingerprint for this PublicKey. + The votable subject. """ - fingerprint: String! - id: ID! + subject: Votable +} +""" +Represents a 'removed_from_merge_queue' event on a given pull request. +""" +type RemovedFromMergeQueueEvent implements Node { """ - Whether this PublicKey is read-only or not. Values will be null for keys not owned by the user. + Identifies the actor who performed the event. """ - isReadOnly: Boolean + actor: Actor """ - The public key string. + Identifies the before commit SHA for the 'removed_from_merge_queue' event. """ - key: String! + beforeCommit: Commit """ - 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. + Identifies the date and time when the object was created. """ - updatedAt: DateTime -} + createdAt: DateTime! -""" -The connection type for PublicKey. -""" -type PublicKeyConnection { """ - A list of edges. + The user who removed this Pull Request from the merge queue """ - edges: [PublicKeyEdge] + enqueuer: User + id: ID! """ - A list of nodes. + The merge queue where this pull request was removed from. """ - nodes: [PublicKey] + mergeQueue: MergeQueue """ - Information to aid in pagination. + PullRequest referenced by event. """ - pageInfo: PageInfo! + pullRequest: PullRequest """ - Identifies the total count of items in the connection. + The reason this pull request was removed from the queue. """ - totalCount: Int! + reason: String } """ -An edge in a connection. +Represents a 'removed_from_project' event on a given issue or pull request. """ -type PublicKeyEdge { +type RemovedFromProjectEvent implements Node { """ - A cursor for use in pagination. + Identifies the actor who performed the event. """ - cursor: String! + actor: Actor """ - The item at the end of the edge. + Identifies the date and time when the object was created. """ - node: PublicKey -} + createdAt: DateTime! -""" -A repository pull request. -""" -type PullRequest implements Assignable & Closable & Comment & Labelable & Lockable & Node & Reactable & RepositoryNode & Subscribable & UniformResourceLocatable & Updatable & UpdatableComment { """ - Reason that the conversation was locked. + Identifies the primary key from the database. """ - activeLockReason: LockReason + databaseId: Int + id: ID! """ - The number of additions in this pull request. + Project referenced by event. """ - additions: Int! + project: Project @preview(toggledBy: "starfox-preview") """ - A list of Users assigned to this object. + Column name referenced by this project event. """ - 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 + projectColumnName: String! @preview(toggledBy: "starfox-preview") +} - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! +""" +Represents a 'renamed' event on a given issue or pull request +""" +type RenamedTitleEvent implements Node { + """ + Identifies the actor who performed the event. + """ + actor: Actor """ - The actor who authored the comment. + Identifies the date and time when the object was created. """ - author: Actor + createdAt: DateTime! """ - Author's association with the subject of the comment. + Identifies the current title of the issue or pull request. """ - authorAssociation: CommentAuthorAssociation! + currentTitle: String! + id: ID! """ - Returns the auto-merge request object if one exists for this pull request. + Identifies the previous title of the issue or pull request. """ - autoMergeRequest: AutoMergeRequest + previousTitle: String! """ - Identifies the base Ref associated with the pull request. + Subject that was renamed. """ - baseRef: Ref + subject: RenamedTitleSubject! +} + +""" +An object which has a renamable title +""" +union RenamedTitleSubject = Issue | PullRequest +""" +Autogenerated input type of ReopenDiscussion +""" +input ReopenDiscussionInput { """ - Identifies the name of the base Ref associated with the pull request, even if the ref has been deleted. + A unique identifier for the client performing the mutation. """ - baseRefName: String! + clientMutationId: String """ - Identifies the oid of the base ref associated with the pull request, even if the ref has been deleted. + ID of the discussion to be reopened. """ - baseRefOid: GitObjectID! + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) +} +""" +Autogenerated return type of ReopenDiscussion +""" +type ReopenDiscussionPayload { """ - The repository associated with this pull request's base Ref. + A unique identifier for the client performing the mutation. """ - baseRepository: Repository + clientMutationId: String """ - The body as Markdown. + The discussion that was reopened. """ - body: String! + discussion: Discussion +} +""" +Autogenerated input type of ReopenIssue +""" +input ReopenIssueInput { """ - The body rendered to HTML. + A unique identifier for the client performing the mutation. """ - bodyHTML: HTML! + clientMutationId: String """ - The body rendered to text. + ID of the issue to be opened. """ - bodyText: String! + issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) +} +""" +Autogenerated return type of ReopenIssue +""" +type ReopenIssuePayload { """ - Whether or not the pull request is rebaseable. + A unique identifier for the client performing the mutation. """ - canBeRebased: Boolean! @preview(toggledBy: "merge-info-preview") + clientMutationId: String """ - The number of changed files in this pull request. + The issue that was opened. """ - changedFiles: Int! + issue: Issue +} +""" +Autogenerated input type of ReopenPullRequest +""" +input ReopenPullRequestInput { """ - The HTTP path for the checks of this pull request. + A unique identifier for the client performing the mutation. """ - checksResourcePath: URI! + clientMutationId: String """ - The HTTP URL for the checks of this pull request. + ID of the pull request to be reopened. """ - checksUrl: URI! + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) +} +""" +Autogenerated return type of ReopenPullRequest +""" +type ReopenPullRequestPayload { """ - `true` if the pull request is closed + A unique identifier for the client performing the mutation. """ - closed: Boolean! + clientMutationId: String """ - Identifies the date and time when the object was closed. + The pull request that was reopened. """ - closedAt: DateTime + pullRequest: PullRequest +} +""" +Represents a 'reopened' event on any `Closable`. +""" +type ReopenedEvent implements Node { """ - A list of comments associated with the pull request. + Identifies the actor who performed the event. """ - comments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for issue comments returned from the connection. - """ - orderBy: IssueCommentOrder - ): IssueCommentConnection! + actor: Actor """ - A list of commits present in this pull request's head branch not present in the base branch. + Object that was reopened. """ - commits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestCommitConnection! + closable: Closable! """ Identifies the date and time when the object was created. """ createdAt: DateTime! + id: ID! """ - Check if this comment was created via an email reply. + The reason the issue state was changed to open. """ - createdViaEmail: Boolean! + stateReason: IssueStateReason +} +""" +Audit log entry for a repo.access event. +""" +type RepoAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Identifies the primary key from the database. + The action name """ - databaseId: Int + action: String! """ - The number of deletions in this pull request. + The user who initiated the action """ - deletions: Int! + actor: AuditEntryActor """ - The actor who edited this pull request's body. + The IP address of the actor """ - editor: Actor + actorIp: String """ - Lists the files changed within this pull request. + A readable representation of the actor's location """ - files( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestChangedFileConnection + actorLocation: ActorLocation """ - Identifies the head Ref associated with the pull request. + The username of the user who initiated the action """ - headRef: Ref + actorLogin: String """ - Identifies the name of the head Ref associated with the pull request, even if the ref has been deleted. + The HTTP path for the actor. """ - headRefName: String! + actorResourcePath: URI """ - Identifies the oid of the head ref associated with the pull request, even if the ref has been deleted. + The HTTP URL for the actor. """ - headRefOid: GitObjectID! + actorUrl: URI """ - The repository associated with this pull request's head Ref. + The time the action was initiated """ - headRepository: Repository + createdAt: PreciseDateTime! + id: ID! """ - The owner of the repository associated with this pull request's head Ref. + The corresponding operation type for the action """ - headRepositoryOwner: RepositoryOwner + operationType: OperationType """ - The hovercard information for this issue + The Organization associated with the Audit Entry. """ - hovercard( - """ - Whether or not to include notification contexts - """ - includeNotificationContexts: Boolean = true - ): Hovercard! - id: ID! + organization: Organization """ - Check if this comment was edited and includes an edit with the creation data + The name of the Organization. """ - includesCreatedEdit: Boolean! + organizationName: String """ - The head and base repositories are different. + The HTTP path for the organization """ - isCrossRepository: Boolean! + organizationResourcePath: URI """ - Identifies if the pull request is a draft. + The HTTP URL for the organization """ - isDraft: Boolean! + organizationUrl: URI """ - Is this pull request read by the viewer + The repository associated with the action """ - isReadByViewer: Boolean + repository: Repository """ - A list of labels associated with the object. + The name of the repository """ - labels( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for labels returned from the connection. - """ - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - ): LabelConnection + repositoryName: String """ - The moment the editor made the last edit + The HTTP path for the repository """ - lastEditedAt: DateTime + repositoryResourcePath: URI """ - A list of latest reviews per user associated with the pull request. + The HTTP URL for the repository """ - latestOpinionatedReviews( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Only return reviews from user who have write access to the repository - """ - writersOnly: Boolean = false - ): PullRequestReviewConnection + repositoryUrl: URI """ - A list of latest reviews per user associated with the pull request that are not also pending review. + The user affected by the action """ - latestReviews( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestReviewConnection + user: User """ - `true` if the pull request is locked + For actions involving two users, the actor is the initiator and the user is the affected user. """ - locked: Boolean! + userLogin: String """ - Indicates whether maintainers can modify the pull request. + The HTTP path for the user. """ - maintainerCanModify: Boolean! + userResourcePath: URI """ - The commit that was created when this pull request was merged. + The HTTP URL for the user. """ - mergeCommit: Commit + userUrl: URI """ - Detailed information about the current pull request merge state status. + The visibility of the repository """ - mergeStateStatus: MergeStateStatus! @preview(toggledBy: "merge-info-preview") + visibility: RepoAccessAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoAccessAuditEntryVisibility { """ - Whether or not the pull request can be merged based on the existence of merge conflicts. + The repository is visible only to users in the same business. """ - mergeable: MergeableState! + INTERNAL """ - Whether or not the pull request was merged. + The repository is visible only to those with explicit access. """ - merged: Boolean! + PRIVATE """ - The date and time that the pull request was merged. + The repository is visible to everyone. """ - mergedAt: DateTime + PUBLIC +} +""" +Audit log entry for a repo.add_member event. +""" +type RepoAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The actor who merged the pull request. + The action name """ - mergedBy: Actor + action: String! """ - Identifies the milestone associated with the pull request. + The user who initiated the action """ - milestone: Milestone + actor: AuditEntryActor """ - Identifies the pull request number. + The IP address of the actor """ - number: Int! + actorIp: String """ - A list of Users that are participating in the Pull Request conversation. + A readable representation of the actor's location """ - 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! + actorLocation: ActorLocation """ - The permalink to the pull request. + The username of the user who initiated the action """ - permalink: URI! + 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. + The HTTP path for the actor. """ - potentialMergeCommit: Commit + actorResourcePath: URI """ - List of project cards associated with this pull request. + The HTTP URL for the actor. """ - projectCards( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - A list of archived states to filter the cards by - """ - archivedStates: [ProjectCardArchivedState] = [ARCHIVED, NOT_ARCHIVED] - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ProjectCardConnection! + actorUrl: URI """ - Identifies when the comment was published at. + The time the action was initiated """ - publishedAt: DateTime + createdAt: PreciseDateTime! + id: ID! """ - A list of reactions grouped by content left on the subject. + The corresponding operation type for the action """ - reactionGroups: [ReactionGroup!] + operationType: OperationType """ - A list of Reactions left on the Issue. + The Organization associated with the Audit Entry. """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + organization: Organization """ - The repository associated with this node. + The name of the Organization. """ - repository: Repository! + organizationName: String """ - The HTTP path for this pull request. + The HTTP path for the organization """ - resourcePath: URI! + organizationResourcePath: URI """ - The HTTP path for reverting this pull request. + The HTTP URL for the organization """ - revertResourcePath: URI! + organizationUrl: URI """ - The HTTP URL for reverting this pull request. + The repository associated with the action """ - revertUrl: URI! + repository: Repository """ - The current status of this pull request with respect to code review. + The name of the repository """ - reviewDecision: PullRequestReviewDecision + repositoryName: String """ - A list of review requests associated with the pull request. + The HTTP path for the repository """ - reviewRequests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): ReviewRequestConnection + repositoryResourcePath: URI """ - The list of all review threads for this pull request. + The HTTP URL for the repository """ - reviewThreads( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestReviewThreadConnection! + repositoryUrl: URI """ - A list of reviews associated with the pull request. + The user affected by the action """ - reviews( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Filter by author of the review. - """ - author: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + 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 - """ - A list of states to filter the reviews. - """ - states: [PullRequestReviewState!] - ): PullRequestReviewConnection + """ + The HTTP path for the user. + """ + userResourcePath: URI """ - Identifies the state of the pull request. + The HTTP URL for the user. """ - state: PullRequestState! + userUrl: URI """ - A list of reviewer suggestions based on commit history and past review comments. + The visibility of the repository """ - suggestedReviewers: [SuggestedReviewer]! + visibility: RepoAddMemberAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoAddMemberAuditEntryVisibility { """ - A list of events, comments, commits, etc. associated with the pull request. + The repository is visible only to users in the same business. """ - timeline( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + INTERNAL - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The repository is visible only to those with explicit access. + """ + PRIVATE - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The repository is visible to everyone. + """ + PUBLIC +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Audit log entry for a repo.add_topic event. +""" +type RepoAddTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { + """ + The action name + """ + action: String! - """ - Allows filtering timeline events by a `since` timestamp. - """ - since: DateTime - ): PullRequestTimelineConnection! @deprecated(reason: "`timeline` will be removed Use PullRequest.timelineItems instead. Removal on 2020-10-01 UTC.") + """ + The user who initiated the action + """ + actor: AuditEntryActor """ - A list of events, comments, commits, etc. associated with the pull request. + The IP address of the actor """ - timelineItems( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - """ - Filter timeline items by type. - """ - itemTypes: [PullRequestTimelineItemsItemType!] + """ + 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 - """ - Filter timeline items by a `since` timestamp. - """ - since: DateTime + """ + The time the action was initiated + """ + createdAt: PreciseDateTime! + id: ID! - """ - Skips the first _n_ elements in the list. - """ - skip: Int - ): PullRequestTimelineItemsConnection! + """ + The corresponding operation type for the action + """ + operationType: OperationType """ - Identifies the pull request title. + The Organization associated with the Audit Entry. """ - title: String! + organization: Organization """ - Identifies the date and time when the object was last updated. + The name of the Organization. """ - updatedAt: DateTime! + organizationName: String """ - The HTTP URL for this pull request. + The HTTP path for the organization """ - url: URI + organizationResourcePath: URI """ - A list of edits to this content. + The HTTP URL for the organization """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - ): UserContentEditConnection + """ + The HTTP path for the repository + """ + repositoryResourcePath: URI """ - Whether or not the viewer can apply suggestion. + The HTTP URL for the repository """ - viewerCanApplySuggestion: Boolean! + repositoryUrl: URI """ - Check if the viewer can restore the deleted head ref. + The name of the topic added to the repository """ - viewerCanDeleteHeadRef: Boolean! + topic: Topic """ - Whether or not the viewer can disable auto-merge + The name of the topic added to the repository """ - viewerCanDisableAutoMerge: Boolean! + topicName: String """ - Whether or not the viewer can enable auto-merge + The user affected by the action """ - viewerCanEnableAutoMerge: Boolean! + user: User """ - Can user react to this subject + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanReact: Boolean! + userLogin: String """ - Check if the viewer is able to change their subscription status for the repository. + The HTTP path for the user. """ - viewerCanSubscribe: Boolean! + userResourcePath: URI """ - Check if the current viewer can update this object. + The HTTP URL for the user. """ - viewerCanUpdate: Boolean! + userUrl: URI +} +""" +Audit log entry for a repo.archived event. +""" +type RepoArchivedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Reasons why the current viewer can not update this comment. + The action name """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + action: String! """ - Did the viewer author this comment. + The user who initiated the action """ - viewerDidAuthor: Boolean! + actor: AuditEntryActor """ - The latest review given from the viewer. + The IP address of the actor """ - viewerLatestReview: PullRequestReview + actorIp: String """ - The person who has requested the viewer for review on this pull request. + A readable representation of the actor's location """ - viewerLatestReviewRequest: ReviewRequest + actorLocation: ActorLocation """ - The merge body text for the viewer and method. + The username of the user who initiated the action """ - viewerMergeBodyText( - """ - The merge method for the message. - """ - mergeType: PullRequestMergeMethod - ): String! + actorLogin: String """ - The merge headline text for the viewer and method. + The HTTP path for the actor. """ - viewerMergeHeadlineText( - """ - The merge method for the message. - """ - mergeType: PullRequestMergeMethod - ): String! + actorResourcePath: URI """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + The HTTP URL for the actor. """ - viewerSubscription: SubscriptionState -} + actorUrl: URI -""" -A file changed in a pull request. -""" -type PullRequestChangedFile { """ - The number of additions to the file. + The time the action was initiated """ - additions: Int! + createdAt: PreciseDateTime! + id: ID! """ - The number of deletions to the file. + The corresponding operation type for the action """ - deletions: Int! + operationType: OperationType """ - The path of the file. + The Organization associated with the Audit Entry. """ - path: String! + organization: Organization """ - The state of the file for the viewer. + The name of the Organization. """ - viewerViewedState: FileViewedState! -} + organizationName: String -""" -The connection type for PullRequestChangedFile. -""" -type PullRequestChangedFileConnection { """ - A list of edges. + The HTTP path for the organization """ - edges: [PullRequestChangedFileEdge] + organizationResourcePath: URI """ - A list of nodes. + The HTTP URL for the organization """ - nodes: [PullRequestChangedFile] + organizationUrl: URI """ - Information to aid in pagination. + The repository associated with the action """ - pageInfo: PageInfo! + repository: Repository """ - Identifies the total count of items in the connection. + The name of the repository """ - totalCount: Int! -} + repositoryName: String -""" -An edge in a connection. -""" -type PullRequestChangedFileEdge { """ - A cursor for use in pagination. + The HTTP path for the repository """ - cursor: String! + repositoryResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the repository """ - node: PullRequestChangedFile -} + repositoryUrl: URI -""" -Represents a Git commit part of a pull request. -""" -type PullRequestCommit implements Node & UniformResourceLocatable { """ - The Git commit object + The user affected by the action """ - commit: Commit! - id: ID! + user: User """ - The pull request this commit belongs to + For actions involving two users, the actor is the initiator and the user is the affected user. """ - pullRequest: PullRequest! + userLogin: String """ - The HTTP path for this pull request commit + The HTTP path for the user. """ - resourcePath: URI! + userResourcePath: URI """ - The HTTP URL for this pull request commit + The HTTP URL for the user. """ - url: URI! + userUrl: URI + + """ + The visibility of the repository + """ + visibility: RepoArchivedAuditEntryVisibility } """ -Represents a commit comment thread part of a pull request. +The privacy of a repository """ -type PullRequestCommitCommentThread implements Node & RepositoryNode { +enum RepoArchivedAuditEntryVisibility { """ - The comments that exist in this thread. + The repository is visible only to users in the same business. """ - 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 + INTERNAL - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The repository is visible only to those with explicit access. + """ + PRIVATE - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): CommitCommentConnection! + """ + The repository is visible to everyone. + """ + PUBLIC +} +""" +Audit log entry for a repo.change_merge_setting event. +""" +type RepoChangeMergeSettingAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The commit the comments were made on. + The action name """ - commit: Commit! - id: ID! + action: String! """ - The file the comments were made on. + The user who initiated the action """ - path: String + actor: AuditEntryActor """ - The position in the diff for the commit that the comment was made on. + The IP address of the actor """ - position: Int + actorIp: String """ - The pull request this commit comment thread belongs to + A readable representation of the actor's location """ - pullRequest: PullRequest! + actorLocation: ActorLocation """ - The repository associated with this node. + The username of the user who initiated the action """ - repository: Repository! -} + actorLogin: String -""" -The connection type for PullRequestCommit. -""" -type PullRequestCommitConnection { """ - A list of edges. + The HTTP path for the actor. """ - edges: [PullRequestCommitEdge] + actorResourcePath: URI """ - A list of nodes. + The HTTP URL for the actor. """ - nodes: [PullRequestCommit] + actorUrl: URI """ - Information to aid in pagination. + The time the action was initiated """ - pageInfo: PageInfo! + createdAt: PreciseDateTime! + id: ID! """ - Identifies the total count of items in the connection. + Whether the change was to enable (true) or disable (false) the merge type """ - totalCount: Int! -} + isEnabled: Boolean -""" -An edge in a connection. -""" -type PullRequestCommitEdge { """ - A cursor for use in pagination. + The merge method affected by the change """ - cursor: String! + mergeType: RepoChangeMergeSettingAuditEntryMergeType """ - The item at the end of the edge. + The corresponding operation type for the action """ - node: PullRequestCommit -} + operationType: OperationType -""" -The connection type for PullRequest. -""" -type PullRequestConnection { """ - A list of edges. + The Organization associated with the Audit Entry. """ - edges: [PullRequestEdge] + organization: Organization """ - A list of nodes. + The name of the Organization. """ - nodes: [PullRequest] + organizationName: String """ - Information to aid in pagination. + The HTTP path for the organization """ - pageInfo: PageInfo! + organizationResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the organization """ - totalCount: Int! -} + organizationUrl: URI -""" -This aggregates pull requests opened by a user within one repository. -""" -type PullRequestContributionsByRepository { """ - The pull request contributions. + The repository associated with the action """ - contributions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + repository: Repository - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The name of the repository + """ + repositoryName: String - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The HTTP path for the repository + """ + repositoryResourcePath: URI - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The HTTP URL for the repository + """ + repositoryUrl: URI - """ - Ordering options for contributions returned from the connection. - """ - orderBy: ContributionOrder = {direction: DESC} - ): CreatedPullRequestContributionConnection! + """ + The user affected by the action + """ + user: User """ - The repository in which the pull requests were opened. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - repository: Repository! -} + userLogin: String -""" -An edge in a connection. -""" -type PullRequestEdge { """ - A cursor for use in pagination. + The HTTP path for the user. """ - cursor: String! + userResourcePath: URI """ - The item at the end of the edge. + The HTTP URL for the user. """ - node: PullRequest + userUrl: URI } """ -Represents available types of methods to use when merging a pull request. +The merge options available for pull requests to this repository. """ -enum PullRequestMergeMethod { +enum RepoChangeMergeSettingAuditEntryMergeType { """ - Add all commits from the head branch to the base branch with a merge commit. + The pull request is added to the base branch in a merge commit. """ MERGE """ - Add all commits from the head branch onto the base branch individually. + Commits from the pull request are added onto the base branch individually without a merge commit. """ REBASE """ - Combine all commits from the head branch into a single commit in the base branch. + The pull request's commits are squashed into a single commit before they are merged to the base branch. """ SQUASH } """ -Ways in which lists of issues can be ordered upon return. +Audit log entry for a repo.config.disable_anonymous_git_access event. """ -input PullRequestOrder { +type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The direction in which to order pull requests by the specified field. + The action name """ - direction: OrderDirection! + action: String! """ - The field in which to order pull requests by. + The user who initiated the action """ - field: PullRequestOrderField! -} + actor: AuditEntryActor -""" -Properties by which pull_requests connections can be ordered. -""" -enum PullRequestOrderField { """ - Order pull_requests by creation time + The IP address of the actor """ - CREATED_AT + actorIp: String """ - Order pull_requests by update time + A readable representation of the actor's location """ - UPDATED_AT -} + actorLocation: ActorLocation -""" -A review object for a given pull request. -""" -type PullRequestReview implements Comment & Deletable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The actor who authored the comment. + The username of the user who initiated the action """ - author: Actor + actorLogin: String """ - Author's association with the subject of the comment. + The HTTP path for the actor. """ - authorAssociation: CommentAuthorAssociation! + actorResourcePath: URI """ - Indicates whether the author of this review has push access to the repository. + The HTTP URL for the actor. """ - authorCanPushToRepository: Boolean! + actorUrl: URI """ - Identifies the pull request review body. + The time the action was initiated """ - body: String! + createdAt: PreciseDateTime! + id: ID! """ - The body rendered to HTML. + The corresponding operation type for the action """ - bodyHTML: HTML! + operationType: OperationType """ - The body of this review rendered as plain text. + The Organization associated with the Audit Entry. """ - bodyText: String! + organization: Organization """ - A list of review comments for the current pull request review. + The name of the Organization. """ - comments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PullRequestReviewCommentConnection! + organizationName: String """ - Identifies the commit associated with this pull request review. + The HTTP path for the organization """ - commit: Commit + organizationResourcePath: URI """ - Identifies the date and time when the object was created. + The HTTP URL for the organization """ - createdAt: DateTime! + organizationUrl: URI """ - Check if this comment was created via an email reply. + The repository associated with the action """ - createdViaEmail: Boolean! + repository: Repository """ - Identifies the primary key from the database. + The name of the repository """ - databaseId: Int + repositoryName: String """ - The actor who edited the comment. + The HTTP path for the repository """ - editor: Actor - id: ID! + repositoryResourcePath: URI """ - Check if this comment was edited and includes an edit with the creation data + The HTTP URL for the repository """ - includesCreatedEdit: Boolean! + repositoryUrl: URI """ - The moment the editor made the last edit + The user affected by the action """ - lastEditedAt: DateTime + user: User """ - A list of teams that this review was made on behalf of. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - onBehalfOf( - """ - 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 - ): TeamConnection! +""" +Audit log entry for a repo.config.disable_collaborators_only event. +""" +type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { + """ + The action name + """ + action: String! """ - Identifies when the comment was published at. + The user who initiated the action """ - publishedAt: DateTime + actor: AuditEntryActor """ - Identifies the pull request associated with this pull request review. + The IP address of the actor """ - pullRequest: PullRequest! + actorIp: String """ - A list of reactions grouped by content left on the subject. + A readable representation of the actor's location """ - reactionGroups: [ReactionGroup!] + actorLocation: ActorLocation """ - A list of Reactions left on the Issue. + The username of the user who initiated the action """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + actorLogin: String - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The HTTP path for the actor. + """ + actorResourcePath: URI - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent + """ + 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 corresponding operation type for the action + """ + operationType: OperationType - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + """ + The Organization associated with the Audit Entry. + """ + organization: Organization """ - The repository associated with this node. + The name of the Organization. """ - repository: Repository! + organizationName: String """ - The HTTP path permalink for this PullRequestReview. + The HTTP path for the organization """ - resourcePath: URI! + organizationResourcePath: URI """ - Identifies the current state of the pull request review. + The HTTP URL for the organization """ - state: PullRequestReviewState! + organizationUrl: URI """ - Identifies when the Pull Request Review was submitted + The repository associated with the action """ - submittedAt: DateTime + repository: Repository """ - Identifies the date and time when the object was last updated. + The name of the repository """ - updatedAt: DateTime! + repositoryName: String """ - The HTTP URL permalink for this PullRequestReview. + The HTTP path for the repository """ - url: URI! + repositoryResourcePath: URI """ - A list of edits to this content. + The HTTP URL for the repository """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + repositoryUrl: URI - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The 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 - ): UserContentEditConnection + """ + The HTTP path for the user. + """ + userResourcePath: URI """ - Check if the current viewer can delete this object. + The HTTP URL for the user. """ - viewerCanDelete: Boolean! + userUrl: URI +} +""" +Audit log entry for a repo.config.disable_contributors_only event. +""" +type RepoConfigDisableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Can user react to this subject + The action name """ - viewerCanReact: Boolean! + action: String! """ - Check if the current viewer can update this object. + The user who initiated the action """ - viewerCanUpdate: Boolean! + actor: AuditEntryActor """ - Reasons why the current viewer can not update this comment. + The IP address of the actor """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + actorIp: String """ - Did the viewer author this comment. + A readable representation of the actor's location """ - viewerDidAuthor: Boolean! -} + actorLocation: ActorLocation -""" -A review comment associated with a given repository pull request. -""" -type PullRequestReviewComment implements Comment & Deletable & Minimizable & Node & Reactable & RepositoryNode & Updatable & UpdatableComment { """ - The actor who authored the comment. + The username of the user who initiated the action """ - author: Actor + actorLogin: String """ - Author's association with the subject of the comment. + The HTTP path for the actor. """ - authorAssociation: CommentAuthorAssociation! + actorResourcePath: URI """ - The comment body of this review comment. + The HTTP URL for the actor. """ - body: String! + actorUrl: URI """ - The body rendered to HTML. + The time the action was initiated """ - bodyHTML: HTML! + createdAt: PreciseDateTime! + id: ID! """ - The comment body of this review comment rendered as plain text. + The corresponding operation type for the action """ - bodyText: String! + operationType: OperationType """ - Identifies the commit associated with the comment. + The Organization associated with the Audit Entry. """ - commit: Commit + organization: Organization """ - Identifies when the comment was created. + The name of the Organization. """ - createdAt: DateTime! + organizationName: String """ - Check if this comment was created via an email reply. + The HTTP path for the organization """ - createdViaEmail: Boolean! + organizationResourcePath: URI """ - Identifies the primary key from the database. + The HTTP URL for the organization """ - databaseId: Int + organizationUrl: URI """ - The diff hunk to which the comment applies. + The repository associated with the action """ - diffHunk: String! + repository: Repository """ - Identifies when the comment was created in a draft state. + The name of the repository """ - draftedAt: DateTime! + repositoryName: String """ - The actor who edited the comment. + The HTTP path for the repository """ - editor: Actor - id: ID! + repositoryResourcePath: URI """ - Check if this comment was edited and includes an edit with the creation data + The HTTP URL for the repository """ - includesCreatedEdit: Boolean! + repositoryUrl: URI """ - Returns whether or not a comment has been minimized. + The user affected by the action """ - isMinimized: Boolean! + user: User """ - The moment the editor made the last edit + For actions involving two users, the actor is the initiator and the user is the affected user. """ - lastEditedAt: DateTime + userLogin: String """ - Returns why the comment was minimized. + The HTTP path for the user. """ - minimizedReason: String + userResourcePath: URI """ - Identifies the original commit associated with the comment. + The HTTP URL for the user. """ - originalCommit: Commit + userUrl: URI +} +""" +Audit log entry for a repo.config.disable_sockpuppet_disallowed event. +""" +type RepoConfigDisableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The original line index in the diff to which the comment applies. + The action name """ - originalPosition: Int! + action: String! """ - Identifies when the comment body is outdated + The user who initiated the action """ - outdated: Boolean! + actor: AuditEntryActor """ - The path to which the comment applies. + The IP address of the actor """ - path: String! + actorIp: String """ - The line index in the diff to which the comment applies. + A readable representation of the actor's location """ - position: Int + actorLocation: ActorLocation """ - Identifies when the comment was published at. + The username of the user who initiated the action """ - publishedAt: DateTime + actorLogin: String """ - The pull request associated with this review comment. + The HTTP path for the actor. """ - pullRequest: PullRequest! + actorResourcePath: URI """ - The pull request review associated with this review comment. + The HTTP URL for the actor. """ - pullRequestReview: PullRequestReview + actorUrl: URI """ - A list of reactions grouped by content left on the subject. + The time the action was initiated """ - reactionGroups: [ReactionGroup!] + createdAt: PreciseDateTime! + id: ID! """ - A list of Reactions left on the Issue. + The corresponding operation type for the action """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + 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 - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent + """ + 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 specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + """ + The repository associated with the action + """ + repository: Repository """ - The comment this is a reply to. + The name of the repository """ - replyTo: PullRequestReviewComment + repositoryName: String """ - The repository associated with this node. + The HTTP path for the repository """ - repository: Repository! + repositoryResourcePath: URI """ - The HTTP path permalink for this review comment. + The HTTP URL for the repository """ - resourcePath: URI! + repositoryUrl: URI """ - Identifies the state of the comment. + The user affected by the action """ - state: PullRequestReviewCommentState! + user: User """ - Identifies when the comment was last updated. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - updatedAt: DateTime! + userLogin: String """ - The HTTP URL permalink for this review comment. + The HTTP path for the user. """ - url: URI! + userResourcePath: URI """ - A list of edits to this content. + The HTTP URL for the user. """ - userContentEdits( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + userUrl: URI +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +Audit log entry for a repo.config.enable_anonymous_git_access event. +""" +type RepoConfigEnableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { + """ + The action name + """ + action: String! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The user who initiated the action + """ + actor: AuditEntryActor - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserContentEditConnection + """ + The IP address of the actor + """ + actorIp: String """ - Check if the current viewer can delete this object. + A readable representation of the actor's location """ - viewerCanDelete: Boolean! + actorLocation: ActorLocation """ - Check if the current viewer can minimize this object. + The username of the user who initiated the action """ - viewerCanMinimize: Boolean! + actorLogin: String """ - Can user react to this subject + The HTTP path for the actor. """ - viewerCanReact: Boolean! + actorResourcePath: URI """ - Check if the current viewer can update this object. + The HTTP URL for the actor. """ - viewerCanUpdate: Boolean! + actorUrl: URI """ - Reasons why the current viewer can not update this comment. + The time the action was initiated """ - viewerCannotUpdateReasons: [CommentCannotUpdateReason!]! + createdAt: PreciseDateTime! + id: ID! """ - Did the viewer author this comment. + The corresponding operation type for the action """ - viewerDidAuthor: Boolean! -} + operationType: OperationType -""" -The connection type for PullRequestReviewComment. -""" -type PullRequestReviewCommentConnection { """ - A list of edges. + The Organization associated with the Audit Entry. """ - edges: [PullRequestReviewCommentEdge] + organization: Organization """ - A list of nodes. + The name of the Organization. """ - nodes: [PullRequestReviewComment] + organizationName: String """ - Information to aid in pagination. + The HTTP path for the organization """ - pageInfo: PageInfo! + organizationResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the organization """ - totalCount: Int! -} + organizationUrl: URI -""" -An edge in a connection. -""" -type PullRequestReviewCommentEdge { """ - A cursor for use in pagination. + The repository associated with the action """ - cursor: String! + repository: Repository """ - The item at the end of the edge. + The name of the repository """ - node: PullRequestReviewComment -} + repositoryName: String -""" -The possible states of a pull request review comment. -""" -enum PullRequestReviewCommentState { """ - A comment that is part of a pending review + The HTTP path for the repository """ - PENDING + repositoryResourcePath: URI """ - A comment that is part of a submitted review + The HTTP URL for the repository """ - SUBMITTED -} + repositoryUrl: URI -""" -The connection type for PullRequestReview. -""" -type PullRequestReviewConnection { """ - A list of edges. + The user affected by the action """ - edges: [PullRequestReviewEdge] + user: User """ - A list of nodes. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodes: [PullRequestReview] + userLogin: String """ - Information to aid in pagination. + The HTTP path for the user. """ - pageInfo: PageInfo! + userResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the user. """ - totalCount: Int! + userUrl: URI } """ -This aggregates pull request reviews made by a user within one repository. +Audit log entry for a repo.config.enable_collaborators_only event. """ -type PullRequestReviewContributionsByRepository { +type RepoConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The pull request review contributions. + The action name """ - contributions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + action: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The user who initiated the action + """ + actor: AuditEntryActor - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The IP address of the actor + """ + actorIp: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation - """ - Ordering options for 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. + The HTTP path for the actor. """ - repository: Repository! -} + actorResourcePath: URI -""" -The review status of a pull request. -""" -enum PullRequestReviewDecision { """ - The pull request has received an approving review. + The HTTP URL for the actor. """ - APPROVED + actorUrl: URI """ - Changes have been requested on the pull request. + The time the action was initiated """ - CHANGES_REQUESTED + createdAt: PreciseDateTime! + id: ID! """ - A review is required before the pull request can be merged. + The corresponding operation type for the action """ - REVIEW_REQUIRED -} + operationType: OperationType -""" -An edge in a connection. -""" -type PullRequestReviewEdge { """ - A cursor for use in pagination. + The Organization associated with the Audit Entry. """ - cursor: String! + organization: Organization """ - The item at the end of the edge. + The name of the Organization. """ - node: PullRequestReview -} + organizationName: String -""" -The possible events to perform on a pull request review. -""" -enum PullRequestReviewEvent { """ - Submit feedback and approve merging these changes. + The HTTP path for the organization """ - APPROVE + organizationResourcePath: URI """ - Submit general feedback without explicit approval. + The HTTP URL for the organization """ - COMMENT + organizationUrl: URI """ - Dismiss review so it now longer effects merging. + The repository associated with the action """ - DISMISS + repository: Repository """ - Submit feedback that must be addressed before merging. + The name of the repository """ - REQUEST_CHANGES -} + repositoryName: String -""" -The possible states of a pull request review. -""" -enum PullRequestReviewState { """ - A review allowing the pull request to merge. + The HTTP path for the repository """ - APPROVED + repositoryResourcePath: URI """ - A review blocking the pull request from merging. + The HTTP URL for the repository """ - CHANGES_REQUESTED + repositoryUrl: URI """ - An informational review. + The user affected by the action """ - COMMENTED + user: User """ - A review that has been dismissed. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - DISMISSED + userLogin: String """ - A review that has not yet been submitted. + The HTTP path for the user. """ - PENDING + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI } """ -A threaded list of comments for a given pull request. +Audit log entry for a repo.config.enable_contributors_only event. """ -type PullRequestReviewThread implements Node { +type RepoConfigEnableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of pull request comments associated with the thread. + The action name """ - comments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + action: String! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The user who initiated the action + """ + actor: AuditEntryActor - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The IP address of the actor + """ + actorIp: String - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + A readable representation of the actor's location + """ + actorLocation: ActorLocation - """ - 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. + The HTTP path for the actor. """ - diffSide: DiffSide! - id: ID! + actorResourcePath: URI """ - Whether or not the thread has been collapsed (outdated or resolved) + The HTTP URL for the actor. """ - isCollapsed: Boolean! + actorUrl: URI """ - Indicates whether this thread was outdated by newer changes. + The time the action was initiated """ - isOutdated: Boolean! + createdAt: PreciseDateTime! + id: ID! """ - Whether this thread has been resolved + The corresponding operation type for the action """ - isResolved: Boolean! + operationType: OperationType """ - The line in the file to which this thread refers + The Organization associated with the Audit Entry. """ - line: Int + organization: Organization """ - The original line in the file to which this thread refers. + The name of the Organization. """ - originalLine: Int + organizationName: String """ - The original start line in the file to which this thread refers (multi-line only). + The HTTP path for the organization """ - originalStartLine: Int + organizationResourcePath: URI """ - Identifies the file path of this thread. + The HTTP URL for the organization """ - path: String! + organizationUrl: URI """ - Identifies the pull request associated with this thread. + The repository associated with the action """ - pullRequest: PullRequest! + repository: Repository """ - Identifies the repository associated with this thread. + The name of the repository """ - repository: Repository! + repositoryName: String """ - The user who resolved this thread + The HTTP path for the repository """ - resolvedBy: User + repositoryResourcePath: URI """ - The side of the diff that the first line of the thread starts on (multi-line only) + The HTTP URL for the repository """ - startDiffSide: DiffSide + repositoryUrl: URI """ - The start line in the file to which this thread refers (multi-line only) + The user affected by the action """ - startLine: Int + user: User """ - Indicates whether the current viewer can reply to this thread. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - viewerCanReply: Boolean! + userLogin: String """ - Whether or not the viewer can resolve this thread + The HTTP path for the user. """ - viewerCanResolve: Boolean! + userResourcePath: URI """ - Whether or not the viewer can unresolve this thread + The HTTP URL for the user. """ - viewerCanUnresolve: Boolean! + userUrl: URI } """ -Review comment threads for a pull request review. +Audit log entry for a repo.config.enable_sockpuppet_disallowed event. """ -type PullRequestReviewThreadConnection { +type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [PullRequestReviewThreadEdge] + action: String! """ - A list of nodes. + The user who initiated the action """ - nodes: [PullRequestReviewThread] + actor: AuditEntryActor """ - Information to aid in pagination. + The IP address of the actor """ - pageInfo: PageInfo! + actorIp: String """ - Identifies the total count of items in the connection. + A readable representation of the actor's location """ - totalCount: Int! -} + actorLocation: ActorLocation -""" -An edge in a connection. -""" -type PullRequestReviewThreadEdge { """ - A cursor for use in pagination. + The username of the user who initiated the action """ - cursor: String! + actorLogin: String """ - The item at the end of the edge. + The HTTP path for the actor. """ - node: PullRequestReviewThread -} + actorResourcePath: URI -""" -Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. -""" -type PullRequestRevisionMarker { """ - Identifies the date and time when the object was created. + The HTTP URL for the actor. """ - createdAt: DateTime! + actorUrl: URI """ - The last commit the viewer has seen. + The time the action was initiated """ - lastSeenCommit: Commit! + createdAt: PreciseDateTime! + id: ID! """ - The pull request to which the marker belongs. + The corresponding operation type for the action """ - pullRequest: PullRequest! -} + operationType: OperationType -""" -The possible states of a pull request. -""" -enum PullRequestState { """ - A pull request that has been closed without being merged. + The Organization associated with the Audit Entry. """ - CLOSED + organization: Organization """ - A pull request that has been closed by being merged. + The name of the Organization. """ - MERGED + organizationName: String """ - A pull request that is still open. + The HTTP path for the organization """ - OPEN -} + organizationResourcePath: URI -""" -The connection type for PullRequestTimelineItem. -""" -type PullRequestTimelineConnection { """ - A list of edges. + The HTTP URL for the organization """ - edges: [PullRequestTimelineItemEdge] + organizationUrl: URI """ - A list of nodes. + The repository associated with the action """ - nodes: [PullRequestTimelineItem] + repository: Repository """ - Information to aid in pagination. + The name of the repository """ - pageInfo: PageInfo! + repositoryName: String """ - Identifies the total count of items in the connection. + The HTTP path for the repository """ - totalCount: Int! -} + repositoryResourcePath: URI -""" -An item in 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 + """ + The HTTP URL for the repository + """ + repositoryUrl: URI -""" -An edge in a connection. -""" -type PullRequestTimelineItemEdge { """ - A cursor for use in pagination. + The user affected by the action """ - cursor: String! + user: User """ - The item at the end of the edge. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - node: PullRequestTimelineItem -} + userLogin: String -""" -An item in a pull request timeline -""" -union PullRequestTimelineItems = AddedToProjectEvent | AssignedEvent | AutoMergeDisabledEvent | AutoMergeEnabledEvent | AutoRebaseEnabledEvent | AutoSquashEnabledEvent | 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 + """ + The HTTP path for the user. + """ + userResourcePath: URI + + """ + The HTTP URL for the user. + """ + userUrl: URI +} """ -The connection type for PullRequestTimelineItems. +Audit log entry for a repo.config.lock_anonymous_git_access event. """ -type PullRequestTimelineItemsConnection { +type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - A list of edges. + The action name """ - edges: [PullRequestTimelineItemsEdge] + action: String! """ - Identifies the count of items after applying `before` and `after` filters. + The user who initiated the action """ - filteredCount: Int! + actor: AuditEntryActor """ - A list of nodes. + The IP address of the actor """ - nodes: [PullRequestTimelineItems] + actorIp: String """ - Identifies the count of items after applying `before`/`after` filters and `first`/`last`/`skip` slicing. + A readable representation of the actor's location """ - pageCount: Int! + actorLocation: ActorLocation """ - Information to aid in pagination. + The username of the user who initiated the action """ - pageInfo: PageInfo! + actorLogin: String """ - Identifies the total count of items in the connection. + The HTTP path for the actor. """ - totalCount: Int! + actorResourcePath: URI """ - Identifies the date and time when the timeline was last updated. + The HTTP URL for the actor. """ - updatedAt: DateTime! -} + actorUrl: URI -""" -An edge in a connection. -""" -type PullRequestTimelineItemsEdge { """ - A cursor for use in pagination. + The time the action was initiated """ - cursor: String! + createdAt: PreciseDateTime! + id: ID! """ - The item at the end of the edge. + The corresponding operation type for the action """ - node: PullRequestTimelineItems -} + operationType: OperationType -""" -The possible item types found in a timeline. -""" -enum PullRequestTimelineItemsItemType { """ - Represents a 'added_to_project' event on a given issue or pull request. + The Organization associated with the Audit Entry. """ - ADDED_TO_PROJECT_EVENT + organization: Organization """ - Represents an 'assigned' event on any assignable object. + The name of the Organization. """ - ASSIGNED_EVENT + organizationName: String """ - Represents a 'automatic_base_change_failed' event on a given pull request. + The HTTP path for the organization """ - AUTOMATIC_BASE_CHANGE_FAILED_EVENT + organizationResourcePath: URI """ - Represents a 'automatic_base_change_succeeded' event on a given pull request. + The HTTP URL for the organization """ - AUTOMATIC_BASE_CHANGE_SUCCEEDED_EVENT + organizationUrl: URI """ - Represents a 'auto_merge_disabled' event on a given pull request. + The repository associated with the action """ - AUTO_MERGE_DISABLED_EVENT + repository: Repository """ - Represents a 'auto_merge_enabled' event on a given pull request. + The name of the repository """ - AUTO_MERGE_ENABLED_EVENT + repositoryName: String """ - Represents a 'auto_rebase_enabled' event on a given pull request. + The HTTP path for the repository """ - AUTO_REBASE_ENABLED_EVENT + repositoryResourcePath: URI """ - Represents a 'auto_squash_enabled' event on a given pull request. + The HTTP URL for the repository """ - AUTO_SQUASH_ENABLED_EVENT + repositoryUrl: URI """ - Represents a 'base_ref_changed' event on a given issue or pull request. + The user affected by the action """ - BASE_REF_CHANGED_EVENT + user: User """ - Represents a 'base_ref_deleted' event on a given pull request. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - BASE_REF_DELETED_EVENT + userLogin: String """ - Represents a 'base_ref_force_pushed' event on a given pull request. + The HTTP path for the user. """ - BASE_REF_FORCE_PUSHED_EVENT + userResourcePath: URI """ - Represents a 'closed' event on any `Closable`. + The HTTP URL for the user. """ - CLOSED_EVENT + userUrl: URI +} +""" +Audit log entry for a repo.config.unlock_anonymous_git_access event. +""" +type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Represents a 'comment_deleted' event on a given issue or pull request. + The action name """ - COMMENT_DELETED_EVENT + action: String! """ - Represents a 'connected' event on a given issue or pull request. + The user who initiated the action """ - CONNECTED_EVENT + actor: AuditEntryActor """ - Represents a 'converted_note_to_issue' event on a given issue or pull request. + The IP address of the actor """ - CONVERTED_NOTE_TO_ISSUE_EVENT + actorIp: String """ - Represents a 'convert_to_draft' event on a given pull request. + A readable representation of the actor's location """ - CONVERT_TO_DRAFT_EVENT + actorLocation: ActorLocation """ - Represents a mention made by one issue or pull request to another. + The username of the user who initiated the action """ - CROSS_REFERENCED_EVENT + actorLogin: String """ - Represents a 'demilestoned' event on a given issue or pull request. + The HTTP path for the actor. """ - DEMILESTONED_EVENT + actorResourcePath: URI """ - Represents a 'deployed' event on a given pull request. + The HTTP URL for the actor. """ - DEPLOYED_EVENT + actorUrl: URI """ - Represents a 'deployment_environment_changed' event on a given pull request. + The time the action was initiated """ - DEPLOYMENT_ENVIRONMENT_CHANGED_EVENT + createdAt: PreciseDateTime! + id: ID! """ - Represents a 'disconnected' event on a given issue or pull request. + The corresponding operation type for the action """ - DISCONNECTED_EVENT + operationType: OperationType """ - Represents a 'head_ref_deleted' event on a given pull request. + The Organization associated with the Audit Entry. """ - HEAD_REF_DELETED_EVENT + organization: Organization """ - Represents a 'head_ref_force_pushed' event on a given pull request. + The name of the Organization. """ - HEAD_REF_FORCE_PUSHED_EVENT + organizationName: String """ - Represents a 'head_ref_restored' event on a given pull request. + The HTTP path for the organization """ - HEAD_REF_RESTORED_EVENT + organizationResourcePath: URI """ - Represents a comment on an Issue. + The HTTP URL for the organization """ - ISSUE_COMMENT + organizationUrl: URI """ - Represents a 'labeled' event on a given issue or pull request. + The repository associated with the action """ - LABELED_EVENT + repository: Repository """ - Represents a 'locked' event on a given issue or pull request. + The name of the repository """ - LOCKED_EVENT + repositoryName: String """ - Represents a 'marked_as_duplicate' event on a given issue or pull request. + The HTTP path for the repository """ - MARKED_AS_DUPLICATE_EVENT + repositoryResourcePath: URI """ - Represents a 'mentioned' event on a given issue or pull request. + The HTTP URL for the repository """ - MENTIONED_EVENT + repositoryUrl: URI """ - Represents a 'merged' event on a given pull request. + The user affected by the action """ - MERGED_EVENT + user: User """ - Represents a 'milestoned' event on a given issue or pull request. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - MILESTONED_EVENT + userLogin: String """ - Represents a 'moved_columns_in_project' event on a given issue or pull request. + The HTTP path for the user. """ - MOVED_COLUMNS_IN_PROJECT_EVENT + userResourcePath: URI """ - Represents a 'pinned' event on a given issue or pull request. + The HTTP URL for the user. """ - PINNED_EVENT + userUrl: URI +} +""" +Audit log entry for a repo.create event. +""" +type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - Represents a Git commit part of a pull request. + The action name """ - PULL_REQUEST_COMMIT + action: String! """ - Represents a commit comment thread part of a pull request. + The user who initiated the action """ - PULL_REQUEST_COMMIT_COMMENT_THREAD + actor: AuditEntryActor """ - A review object for a given pull request. + The IP address of the actor """ - PULL_REQUEST_REVIEW + actorIp: String """ - A threaded list of comments for a given pull request. + A readable representation of the actor's location """ - PULL_REQUEST_REVIEW_THREAD + actorLocation: ActorLocation """ - Represents the latest point in the pull request timeline for which the viewer has seen the pull request's commits. + The username of the user who initiated the action """ - PULL_REQUEST_REVISION_MARKER + actorLogin: String """ - Represents a 'ready_for_review' event on a given pull request. + The HTTP path for the actor. """ - READY_FOR_REVIEW_EVENT + actorResourcePath: URI """ - Represents a 'referenced' event on a given `ReferencedSubject`. + The HTTP URL for the actor. """ - REFERENCED_EVENT + actorUrl: URI """ - Represents a 'removed_from_project' event on a given issue or pull request. + The time the action was initiated """ - REMOVED_FROM_PROJECT_EVENT + createdAt: PreciseDateTime! """ - Represents a 'renamed' event on a given issue or pull request + The name of the parent repository for this forked repository. """ - RENAMED_TITLE_EVENT + forkParentName: String """ - Represents a 'reopened' event on any `Closable`. + The name of the root repository for this network. """ - REOPENED_EVENT + forkSourceName: String + id: ID! """ - Represents a 'review_dismissed' event on a given issue or pull request. + The corresponding operation type for the action """ - REVIEW_DISMISSED_EVENT + operationType: OperationType """ - Represents an 'review_requested' event on a given pull request. + The Organization associated with the Audit Entry. """ - REVIEW_REQUESTED_EVENT + organization: Organization """ - Represents an 'review_request_removed' event on a given pull request. + The name of the Organization. """ - REVIEW_REQUEST_REMOVED_EVENT + organizationName: String """ - Represents a 'subscribed' event on a given `Subscribable`. + The HTTP path for the organization """ - SUBSCRIBED_EVENT + organizationResourcePath: URI """ - Represents a 'transferred' event on a given issue or pull request. + The HTTP URL for the organization """ - TRANSFERRED_EVENT + organizationUrl: URI """ - Represents an 'unassigned' event on any assignable object. + The repository associated with the action """ - UNASSIGNED_EVENT + repository: Repository """ - Represents an 'unlabeled' event on a given issue or pull request. + The name of the repository """ - UNLABELED_EVENT + repositoryName: String """ - Represents an 'unlocked' event on a given issue or pull request. + The HTTP path for the repository """ - UNLOCKED_EVENT + repositoryResourcePath: URI """ - Represents an 'unmarked_as_duplicate' event on a given issue or pull request. + The HTTP URL for the repository """ - UNMARKED_AS_DUPLICATE_EVENT + repositoryUrl: URI """ - Represents an 'unpinned' event on a given issue or pull request. + The user affected by the action """ - UNPINNED_EVENT + user: User """ - Represents an 'unsubscribed' event on a given `Subscribable`. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - UNSUBSCRIBED_EVENT + userLogin: String """ - Represents a 'user_blocked' event on a given user. + The HTTP path for the user. """ - USER_BLOCKED_EVENT -} + userResourcePath: URI -""" -The possible target states when updating a pull request. -""" -enum PullRequestUpdateState { """ - A pull request that has been closed without being merged. + The HTTP URL for the user. """ - CLOSED + userUrl: URI """ - A pull request that is still open. + The visibility of the repository """ - OPEN + visibility: RepoCreateAuditEntryVisibility } """ -A Git push. +The privacy of a repository """ -type Push implements Node { - id: ID! - +enum RepoCreateAuditEntryVisibility { """ - The SHA after the push + The repository is visible only to users in the same business. """ - nextSha: GitObjectID + INTERNAL """ - The permalink for this push. + The repository is visible only to those with explicit access. """ - permalink: URI! + PRIVATE """ - The SHA before the push + The repository is visible to everyone. """ - previousSha: GitObjectID + PUBLIC +} +""" +Audit log entry for a repo.destroy event. +""" +type RepoDestroyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The user who pushed + The action name """ - pusher: User! + action: String! """ - The repository that was pushed to + The user who initiated the action """ - repository: Repository! -} + actor: AuditEntryActor -""" -A team, user or app who has the ability to push to a protected branch. -""" -type PushAllowance implements Node { """ - The actor that can push. + The IP address of the actor """ - actor: PushAllowanceActor + actorIp: String """ - Identifies the branch protection rule associated with the allowed user or team. + A readable representation of the actor's location """ - branchProtectionRule: BranchProtectionRule - id: ID! -} - -""" -Types that can be an actor. -""" -union PushAllowanceActor = App | Team | User + actorLocation: ActorLocation -""" -The connection type for PushAllowance. -""" -type PushAllowanceConnection { """ - A list of edges. + The username of the user who initiated the action """ - edges: [PushAllowanceEdge] + actorLogin: String """ - A list of nodes. + The HTTP path for the actor. """ - nodes: [PushAllowance] + actorResourcePath: URI """ - Information to aid in pagination. + The HTTP URL for the actor. """ - pageInfo: PageInfo! + actorUrl: URI """ - Identifies the total count of items in the connection. + The time the action was initiated """ - totalCount: Int! -} + createdAt: PreciseDateTime! + id: ID! -""" -An edge in a connection. -""" -type PushAllowanceEdge { """ - A cursor for use in pagination. + The corresponding operation type for the action """ - cursor: String! + operationType: OperationType """ - The item at the end of the edge. + The Organization associated with the Audit Entry. """ - node: PushAllowance -} + organization: Organization -""" -The query root of GitHub's GraphQL interface. -""" -type Query { """ - Look up a code of conduct by its key + The name of the Organization. """ - codeOfConduct( - """ - The code of conduct's key - """ - key: String! - ): CodeOfConduct + organizationName: String """ - Look up a code of conduct by its key + The HTTP path for the organization """ - codesOfConduct: [CodeOfConduct] + organizationResourcePath: URI """ - Look up an enterprise by URL slug. + The HTTP URL for the organization """ - enterprise( - """ - The enterprise invitation token. - """ - invitationToken: String - - """ - The enterprise URL slug. - """ - slug: String! - ): Enterprise + organizationUrl: URI """ - Look up a pending enterprise administrator invitation by invitee, enterprise and role. + The repository associated with the action """ - enterpriseAdministratorInvitation( - """ - The slug of the enterprise the user was invited to join. - """ - enterpriseSlug: String! - - """ - The role for the business member invitation. - """ - role: EnterpriseAdministratorRole! - - """ - The login of the user invited to join the business. - """ - userLogin: String! - ): EnterpriseAdministratorInvitation + repository: Repository """ - Look up a pending enterprise administrator invitation by invitation token. + The name of the repository """ - enterpriseAdministratorInvitationByToken( - """ - The invitation token sent with the invitation email. - """ - invitationToken: String! - ): EnterpriseAdministratorInvitation + repositoryName: String """ - Look up an open source license by its key + The HTTP path for the repository """ - license( - """ - The license's downcased SPDX ID - """ - key: String! - ): License + repositoryResourcePath: URI """ - Return a list of known open source licenses + The HTTP URL for the repository """ - licenses: [License]! + repositoryUrl: URI """ - Get alphabetically sorted list of Marketplace categories + The user affected by the action """ - marketplaceCategories( - """ - Exclude categories with no listings. - """ - excludeEmpty: Boolean - - """ - Returns top level categories only, excluding any subcategories. - """ - excludeSubcategories: Boolean - - """ - Return only the specified categories. - """ - includeCategories: [String!] - ): [MarketplaceCategory!]! + user: User """ - Look up a Marketplace category by its slug. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - marketplaceCategory( - """ - The URL slug of the category. - """ - slug: String! - - """ - Also check topic aliases for the category slug - """ - useTopicAliases: Boolean - ): MarketplaceCategory + userLogin: String """ - Look up a single Marketplace listing + The HTTP path for the user. """ - marketplaceListing( - """ - Select the listing that matches this slug. It's the short name of the listing used in its URL. - """ - slug: String! - ): MarketplaceListing + userResourcePath: URI """ - Look up Marketplace listings + The HTTP URL for the user. """ - marketplaceListings( - """ - Select listings that can be administered by the specified user. - """ - adminId: ID - - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Select listings visible to the viewer even if they are not approved. If omitted or - false, only approved listings will be returned. - """ - allStates: Boolean - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Select only listings with the given category. - """ - categorySlug: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Select listings for products owned by the specified organization. - """ - organizationId: ID - - """ - Select only listings where the primary category matches the given category slug. - """ - primaryCategoryOnly: Boolean = false - - """ - Select the listings with these slugs, if they are visible to the viewer. - """ - slugs: [String] - - """ - Also check topic aliases for the category slug - """ - useTopicAliases: Boolean - - """ - Select listings to which user has admin access. If omitted, listings visible to the - viewer are returned. - """ - viewerCanAdmin: Boolean - - """ - Select only listings that offer a free trial. - """ - withFreeTrialsOnly: Boolean = false - ): MarketplaceListingConnection! + userUrl: URI """ - Return information about the GitHub instance + The visibility of the repository """ - meta: GitHubMetadata! + visibility: RepoDestroyAuditEntryVisibility +} +""" +The privacy of a repository +""" +enum RepoDestroyAuditEntryVisibility { """ - Fetches an object given its ID. + The repository is visible only to users in the same business. """ - node( - """ - ID of the object. - """ - id: ID! - ): Node + INTERNAL """ - Lookup nodes by a list of IDs. + The repository is visible only to those with explicit access. """ - nodes( - """ - The list of node IDs. - """ - ids: [ID!]! - ): [Node]! + PRIVATE """ - Lookup a organization by login. + The repository is visible to everyone. """ - organization( - """ - The organization's login. - """ - login: String! - ): Organization + PUBLIC +} +""" +Audit log entry for a repo.remove_member event. +""" +type RepoRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The client's rate limit information. + The action name """ - rateLimit( - """ - If true, calculate the cost for the query without evaluating it - """ - dryRun: Boolean = false - ): RateLimit + action: String! """ - Hack to workaround https://github.com/facebook/relay/issues/112 re-exposing the root query object + The user who initiated the action """ - relay: Query! + actor: AuditEntryActor """ - Lookup a given repository by the owner and repository name. + The IP address of the actor """ - repository( - """ - The name of the repository - """ - name: String! - - """ - The login field of a user or organization - """ - owner: String! - ): Repository + actorIp: String """ - Lookup a repository owner (ie. either a User or an Organization) by login. + A readable representation of the actor's location """ - repositoryOwner( - """ - The username to lookup the owner by. - """ - login: String! - ): RepositoryOwner + actorLocation: ActorLocation """ - Lookup resource by a URL. + The username of the user who initiated the action """ - resource( - """ - The URL. - """ - url: URI! - ): UniformResourceLocatable + actorLogin: String """ - Perform a search across resources. + The HTTP path for the actor. """ - search( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - The search string to look for. - """ - query: String! - - """ - The types of search items to search within. - """ - type: SearchType! - ): SearchResultItemConnection! + actorResourcePath: URI """ - GitHub Security Advisories + The HTTP URL for the actor. """ - securityAdvisories( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Filter advisories by identifier, e.g. GHSA or CVE. - """ - identifier: SecurityAdvisoryIdentifierFilter - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for the returned topics. - """ - orderBy: SecurityAdvisoryOrder = {field: UPDATED_AT, direction: DESC} - - """ - Filter advisories to those published since a time in the past. - """ - publishedSince: DateTime - - """ - Filter advisories to those updated since a time in the past. - """ - updatedSince: DateTime - ): SecurityAdvisoryConnection! + actorUrl: URI """ - Fetch a Security Advisory by its GHSA ID + The time the action was initiated """ - securityAdvisory( - """ - GitHub Security Advisory ID. - """ - ghsaId: String! - ): SecurityAdvisory + createdAt: PreciseDateTime! + id: ID! """ - Software Vulnerabilities documented by GitHub Security Advisories + The corresponding operation type for the action """ - securityVulnerabilities( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - An ecosystem to filter vulnerabilities by. - """ - ecosystem: SecurityAdvisoryEcosystem - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for the returned topics. - """ - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} - - """ - A package name to filter vulnerabilities by. - """ - package: String - - """ - A list of severities to filter vulnerabilities by. - """ - severities: [SecurityAdvisorySeverity!] - ): SecurityVulnerabilityConnection! + operationType: OperationType """ - Users and organizations who can be sponsored via GitHub Sponsors. + The Organization associated with the Audit Entry. """ - sponsorables( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: 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. - """ - dependencyEcosystem: SecurityAdvisoryEcosystem - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - 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 + organization: Organization - """ - Ordering options for users and organizations returned from the connection. - """ - orderBy: SponsorableOrder = {field: LOGIN, direction: ASC} + """ + The name of the Organization. + """ + organizationName: String - """ - Optional organization username for whose dependencies should be checked. - Used when onlyDependencies = true. Omit to check your own dependencies. If - you are not an administrator of the organization, only dependencies from its - public repositories will be considered. - """ - orgLoginForDependencies: String - ): SponsorableItemConnection! + """ + The HTTP path for the organization + """ + organizationResourcePath: URI """ - Look up a single Sponsors Listing + The HTTP URL for the organization """ - sponsorsListing( - """ - Select the Sponsors listing which matches this slug - """ - slug: String! - ): SponsorsListing @deprecated(reason: "`Query.sponsorsListing` will be removed. Use `Sponsorable.sponsorsListing` instead. Removal on 2020-04-01 UTC.") + organizationUrl: URI """ - Look up a topic by name. + The repository associated with the action """ - topic( - """ - The topic's name. - """ - name: String! - ): Topic + repository: Repository """ - Lookup a user by login. + The name of the repository """ - user( - """ - The user's login. - """ - login: String! - ): User + repositoryName: String """ - The currently authenticated user. + The HTTP path for the repository """ - viewer: User! -} + repositoryResourcePath: URI -""" -Represents the client's rate limit. -""" -type RateLimit { """ - The point cost for the current query counting against the rate limit. + The HTTP URL for the repository """ - cost: Int! + repositoryUrl: URI """ - The maximum number of points the client is permitted to consume in a 60 minute window. + The user affected by the action """ - limit: Int! + user: User """ - The maximum number of nodes this query may return + For actions involving two users, the actor is the initiator and the user is the affected user. """ - nodeCount: Int! + userLogin: String """ - The number of points remaining in the current rate limit window. + The HTTP path for the user. """ - remaining: Int! + userResourcePath: URI """ - The time at which the current rate limit window resets in UTC epoch seconds. + The HTTP URL for the user. """ - resetAt: DateTime! + userUrl: URI """ - The number of points used in the current rate limit window. + The visibility of the repository """ - used: Int! + visibility: RepoRemoveMemberAuditEntryVisibility } """ -Represents a subject that can be reacted on. +The privacy of a repository """ -interface Reactable { +enum RepoRemoveMemberAuditEntryVisibility { """ - Identifies the primary key from the database. + The repository is visible only to users in the same business. """ - databaseId: Int - id: ID! + INTERNAL """ - A list of reactions grouped by content left on the subject. + The repository is visible only to those with explicit access. """ - reactionGroups: [ReactionGroup!] + PRIVATE """ - A list of Reactions left on the Issue. + The repository is visible to everyone. """ - reactions( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Allows filtering Reactions by emoji. - """ - content: ReactionContent - - """ - Returns the first _n_ elements from the list. - """ - first: Int + PUBLIC +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Audit log entry for a repo.remove_topic event. +""" +type RepoRemoveTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { + """ + The action name + """ + action: String! - """ - Allows specifying the order in which reactions are returned. - """ - orderBy: ReactionOrder - ): ReactionConnection! + """ + The user who initiated the action + """ + actor: AuditEntryActor """ - Can user react to this subject + The IP address of the actor """ - viewerCanReact: Boolean! -} + actorIp: String -""" -The connection type for User. -""" -type ReactingUserConnection { """ - A list of edges. + A readable representation of the actor's location """ - edges: [ReactingUserEdge] + actorLocation: ActorLocation """ - A list of nodes. + The username of the user who initiated the action """ - nodes: [User] + actorLogin: String """ - Information to aid in pagination. + The HTTP path for the actor. """ - pageInfo: PageInfo! + actorResourcePath: URI """ - Identifies the total count of items in the connection. + The HTTP URL for the actor. """ - totalCount: Int! -} + actorUrl: URI -""" -Represents a user that's made a reaction. -""" -type ReactingUserEdge { """ - A cursor for use in pagination. + The time the action was initiated """ - cursor: String! - node: User! + createdAt: PreciseDateTime! + id: ID! """ - The moment when the user made the reaction. + The corresponding operation type for the action """ - reactedAt: DateTime! -} + operationType: OperationType -""" -An emoji reaction to a particular piece of content. -""" -type Reaction implements Node { """ - Identifies the emoji reaction. + The Organization associated with the Audit Entry. """ - content: ReactionContent! + organization: Organization """ - Identifies the date and time when the object was created. + The name of the Organization. """ - createdAt: DateTime! + organizationName: String """ - Identifies the primary key from the database. + The HTTP path for the organization """ - databaseId: Int - id: ID! + organizationResourcePath: URI """ - The reactable piece of content + The HTTP URL for the organization """ - reactable: Reactable! + organizationUrl: URI """ - Identifies the user who created this reaction. + The repository associated with the action """ - user: User -} + repository: Repository -""" -A list of reactions that have been left on the subject. -""" -type ReactionConnection { """ - A list of edges. + The name of the repository """ - edges: [ReactionEdge] + repositoryName: String """ - A list of nodes. + The HTTP path for the repository """ - nodes: [Reaction] + repositoryResourcePath: URI """ - Information to aid in pagination. + The HTTP URL for the repository """ - pageInfo: PageInfo! + repositoryUrl: URI """ - Identifies the total count of items in the connection. + The name of the topic added to the repository """ - totalCount: Int! + topic: Topic """ - Whether or not the authenticated user has left a reaction on the subject. + The name of the topic added to the repository """ - viewerHasReacted: Boolean! -} + topicName: String -""" -Emojis that can be attached to Issues, Pull Requests and Comments. -""" -enum ReactionContent { """ - Represents the `:confused:` emoji. + The user affected by the action """ - CONFUSED + user: User """ - Represents the `:eyes:` emoji. + For actions involving two users, the actor is the initiator and the user is the affected user. """ - EYES + userLogin: String """ - Represents the `:heart:` emoji. + The HTTP path for the user. """ - HEART + userResourcePath: URI """ - Represents the `:hooray:` emoji. + The HTTP URL for the user. """ - HOORAY + userUrl: URI +} +""" +The reasons a piece of content can be reported or minimized. +""" +enum ReportedContentClassifiers { """ - Represents the `:laugh:` emoji. + An abusive or harassing piece of content """ - LAUGH + ABUSE """ - Represents the `:rocket:` emoji. + A duplicated piece of content """ - ROCKET + DUPLICATE """ - Represents the `:-1:` emoji. + An irrelevant piece of content """ - THUMBS_DOWN + OFF_TOPIC """ - Represents the `:+1:` emoji. + An outdated piece of content """ - THUMBS_UP -} + OUTDATED -""" -An edge in a connection. -""" -type ReactionEdge { """ - A cursor for use in pagination. + The content has been resolved """ - cursor: String! + RESOLVED """ - The item at the end of the edge. + A spammy piece of content """ - node: Reaction + SPAM } """ -A group of emoji reactions to a particular piece of content. +A repository contains the content for a project. """ -type ReactionGroup { - """ - Identifies the emoji reaction. - """ - content: ReactionContent! - +type Repository implements Node & PackageOwner & ProjectOwner & ProjectV2Recent & RepositoryInfo & Starrable & Subscribable & UniformResourceLocatable { """ - Identifies when the reaction was created. + 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. """ - createdAt: DateTime + allowUpdateBranch: Boolean! """ - The subject that was reacted to. + Identifies the date and time when the repository was archived. """ - subject: Reactable! + archivedAt: DateTime """ - Users who have reacted to the reaction subject with the emotion represented by this reaction group + A list of users that can be assigned to issues in this repository. """ - users( + assignableUsers( """ Returns the elements in the list that come after the specified cursor. """ @@ -26658,87 +42019,71 @@ type ReactionGroup { Returns the last _n_ elements from the list. """ last: Int - ): ReactingUserConnection! - - """ - Whether or not the authenticated user has left a reaction on the subject. - """ - viewerHasReacted: Boolean! -} -""" -Ways in which lists of reactions can be ordered upon return. -""" -input ReactionOrder { - """ - The direction in which to order reactions by the specified field. - """ - direction: OrderDirection! + """ + Filters users with query on user name and login. + """ + query: String + ): UserConnection! """ - The field in which to order reactions by. + Whether or not Auto-merge can be enabled on pull requests in this repository. """ - field: ReactionOrderField! -} + autoMergeAllowed: Boolean! -""" -A list of fields that reactions can be ordered by. -""" -enum ReactionOrderField { """ - Allows ordering a list of reactions by when they were created. + A list of branch protection rules for this repository. """ - CREATED_AT -} + branchProtectionRules( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -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 + """ + 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! - id: ID! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - PullRequest referenced by event. - """ - pullRequest: PullRequest! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): BranchProtectionRuleConnection! """ - The HTTP path for this ready for review event. + Returns the code of conduct for this repository """ - resourcePath: URI! + codeOfConduct: CodeOfConduct """ - The HTTP URL for this ready for review event. + Information extracted from the repository's `CODEOWNERS` file. """ - url: URI! -} + codeowners( + """ + The ref name used to return the associated `CODEOWNERS` file. + """ + refName: String + ): RepositoryCodeowners -""" -Represents a Git reference. -""" -type Ref implements Node { """ - A list of pull requests with this ref as the head ref. + A list of collaborators associated with the repository. """ - associatedPullRequests( + collaborators( """ - Returns the elements in the list that come after the specified cursor. + Collaborators affiliation level with a repository. """ - after: String + affiliation: CollaboratorAffiliation """ - The base ref name to filter the pull requests by. + Returns the elements in the list that come after the specified cursor. """ - baseRefName: String + after: String """ Returns the elements in the list that come before the specified cursor. @@ -26750,374 +42095,348 @@ type Ref implements Node { """ first: Int - """ - The head ref name to filter the pull requests by. - """ - headRefName: String - - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] - """ Returns the last _n_ elements from the list. """ last: Int """ - Ordering options for pull requests returned from the connection. + The login of one specific collaborator. """ - orderBy: IssueOrder + login: String """ - A list of states to filter the pull requests by. + Filters users with query on user name and login """ - states: [PullRequestState!] - ): PullRequestConnection! - - """ - Branch protection rules for this ref - """ - branchProtectionRule: BranchProtectionRule - id: ID! + query: String + ): RepositoryCollaboratorConnection """ - The ref name. + A list of commit comments associated with the repository. """ - name: String! + commitComments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The ref's prefix, such as `refs/heads/` or `refs/tags/`. - """ - prefix: String! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Branch protection rules that are viewable by non-admins - """ - refUpdateRule: RefUpdateRule + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The repository the ref belongs to. - """ - repository: Repository! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): CommitCommentConnection! """ - The object the ref points to. Returns null when object does not exist. + Returns a list of contact links associated to the repository """ - target: GitObject -} + contactLinks: [RepositoryContactLink!] -""" -The connection type for Ref. -""" -type RefConnection { """ - A list of edges. + Returns the contributing guidelines for this repository. """ - edges: [RefEdge] + contributingGuidelines: ContributingGuidelines """ - A list of nodes. + Identifies the date and time when the object was created. """ - nodes: [Ref] + createdAt: DateTime! """ - Information to aid in pagination. + Identifies the primary key from the database. """ - pageInfo: PageInfo! + databaseId: Int """ - Identifies the total count of items in the connection. + The Ref associated with the repository's default branch. """ - totalCount: Int! -} + defaultBranchRef: Ref -""" -An edge in a connection. -""" -type RefEdge { """ - A cursor for use in pagination. + Whether or not branches are automatically deleted when merged in this repository. """ - cursor: String! + deleteBranchOnMerge: Boolean! """ - The item at the end of the edge. + A list of dependency manifests contained in the repository """ - node: Ref -} + dependencyGraphManifests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Ways in which lists of git refs can be ordered upon return. -""" -input RefOrder { - """ - The direction in which to order refs by the specified field. - """ - direction: OrderDirection! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The field in which to order refs by. - """ - field: RefOrderField! -} + """ + Cursor to paginate dependencies + """ + dependenciesAfter: String -""" -Properties by which ref connections can be ordered. -""" -enum RefOrderField { - """ - Order refs by their alphanumeric name - """ - ALPHABETICAL + """ + Number of dependencies to fetch + """ + dependenciesFirst: Int - """ - Order refs by underlying commit date if the ref prefix is refs/tags/ - """ - TAG_COMMIT_DATE -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -A ref update -""" -input RefUpdate @preview(toggledBy: "update-refs-preview") { - """ - The value this ref should be updated to. - """ - afterOid: GitObjectID! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The value this ref needs to point to before the update. - """ - beforeOid: GitObjectID + """ + Flag to scope to only manifests with dependencies + """ + withDependencies: Boolean + ): DependencyGraphManifestConnection @preview(toggledBy: "hawkgirl-preview") """ - Force a non fast-forward update. + A list of deploy keys that are on this repository. """ - force: Boolean = false + deployKeys( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The fully qualified name of the ref to be update. For example `refs/heads/branch-name` - """ - name: GitRefname! -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -A ref update rules for a viewer. -""" -type RefUpdateRule { - """ - Can this branch be deleted. - """ - allowsDeletions: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Are force pushes allowed on this branch. - """ - allowsForcePushes: Boolean! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeployKeyConnection! """ - Identifies the protection rule pattern. + Deployments associated with the repository """ - pattern: String! + deployments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Number of approving reviews required to update matching branches. - """ - requiredApprovingReviewCount: Int + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - List of required status check contexts that must pass for commits to be accepted to matching branches. - """ - requiredStatusCheckContexts: [String] + """ + Environments to list deployments for + """ + environments: [String!] - """ - Are reviews from code owners required to update matching branches. - """ - requiresCodeOwnerReviews: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Are merge commits prohibited from being pushed to this branch. - """ - requiresLinearHistory: Boolean! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Are commits required to be signed. - """ - requiresSignatures: Boolean! + """ + Ordering options for deployments returned from the connection. + """ + orderBy: DeploymentOrder = {field: CREATED_AT, direction: ASC} + ): DeploymentConnection! """ - Is the viewer allowed to dismiss reviews. + The description of the repository. """ - viewerAllowedToDismissReviews: Boolean! + description: String """ - Can the viewer push to the branch + The description of the repository rendered to HTML. """ - viewerCanPush: Boolean! -} + descriptionHTML: HTML! -""" -Represents a 'referenced' event on a given `ReferencedSubject`. -""" -type ReferencedEvent implements Node { """ - Identifies the actor who performed the event. + Returns a single discussion from the current repository by number. """ - actor: Actor + discussion( + """ + The number for the discussion to be returned. + """ + number: Int! + ): Discussion """ - Identifies the commit associated with the 'referenced' event. + A list of discussion categories that are available in the repository. """ - commit: Commit + discussionCategories( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Identifies the repository associated with the 'referenced' event. - """ - commitRepository: Repository! + """ + 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! - id: ID! + """ + Filter by categories that are assignable by the viewer. + """ + filterByAssignable: Boolean = false - """ - Reference originated in a different repository. - """ - isCrossRepository: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Checks if the commit message itself references the subject. Can be false in the case of a commit comment reference. - """ - isDirectReference: Boolean! + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DiscussionCategoryConnection! """ - Object referenced by event. + A discussion category by slug. """ - subject: ReferencedSubject! -} - -""" -Any referencable object -""" -union ReferencedSubject = Issue | PullRequest + discussionCategory( + """ + The slug of the discussion category to be returned. + """ + slug: String! + ): DiscussionCategory -""" -Autogenerated input type of RegenerateEnterpriseIdentityProviderRecoveryCodes -""" -input RegenerateEnterpriseIdentityProviderRecoveryCodesInput { """ - A unique identifier for the client performing the mutation. + A list of discussions that have been opened in the repository. """ - clientMutationId: String + discussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The ID of the enterprise on which to set an identity provider. - """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) -} + """ + Only show answered or unanswered discussions + """ + answered: Boolean = null -""" -Autogenerated return type of RegenerateEnterpriseIdentityProviderRecoveryCodes -""" -type RegenerateEnterpriseIdentityProviderRecoveryCodesPayload { - """ - 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 identity provider for the enterprise. - """ - identityProvider: EnterpriseIdentityProvider -} + """ + Only include discussions that belong to the category with this ID. + """ + categoryId: ID = null -""" -Autogenerated input type of RegenerateVerifiableDomainToken -""" -input RegenerateVerifiableDomainTokenInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The ID of the verifiable domain to regenerate the verification token of. - """ - id: ID! @possibleTypes(concreteTypes: ["VerifiableDomain"]) -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -Autogenerated return type of RegenerateVerifiableDomainToken -""" -type RegenerateVerifiableDomainTokenPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: UPDATED_AT, direction: DESC} - """ - The verification token that was generated. - """ - verificationToken: String -} + """ + A list of states to filter the discussions by. + """ + states: [DiscussionState!] = [] + ): DiscussionConnection! -""" -A release contains the content for a release. -""" -type Release implements Node & UniformResourceLocatable { """ - The author of the release + The number of kilobytes this repository occupies on disk. """ - author: User + diskUsage: Int """ - Identifies the date and time when the object was created. + Returns a single active environment from the current repository by name. """ - createdAt: DateTime! + environment( + """ + The name of the environment to be returned. + """ + name: String! + ): Environment """ - The description of the release. + A list of environments that are in this repository. """ - description: String + environments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The description of this release rendered to HTML. - """ - descriptionHTML: HTML - id: ID! + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Whether or not the release is a draft - """ - isDraft: Boolean! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Whether or not the release is the latest releast - """ - isLatest: Boolean! + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - Whether or not the release is a prerelease - """ - isPrerelease: Boolean! + """ + Ordering options for the environments + """ + orderBy: Environments = {field: NAME, direction: ASC} + ): EnvironmentConnection! """ - The title of the release. + Returns how many forks there are of this repository in the whole network. """ - name: String + forkCount: Int! """ - Identifies the date and time when the release was created. + Whether this repository allows forks. """ - publishedAt: DateTime + forkingAllowed: Boolean! """ - List of releases assets which are dependent on this release. + A list of direct forked repositories. """ - releaseAssets( + forks( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] + """ Returns the elements in the list that come after the specified cursor. """ @@ -27133,918 +42452,1211 @@ type Release implements Node & UniformResourceLocatable { """ first: Int + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean + + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean + """ Returns the last _n_ elements from the list. """ last: Int """ - A list of names to filter the assets by. + Ordering options for repositories returned from the connection """ - name: String - ): ReleaseAssetConnection! - - """ - The repository that the release belongs to. - """ - repository: Repository! + orderBy: RepositoryOrder - """ - The HTTP path for this issue - """ - resourcePath: 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] - """ - A description of the release, rendered to HTML without any links in it. - """ - shortDescriptionHTML( """ - How many characters to return. + If non-null, filters repositories according to privacy """ - limit: Int = 200 - ): HTML + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - The Git tag the release points to + The funding links for this repository """ - tag: Ref + fundingLinks: [FundingLink!]! """ - The tag commit for this release. + Indicates if the repository has the Discussions feature enabled. """ - tagCommit: Commit + hasDiscussionsEnabled: Boolean! """ - The name of the release's Git tag + Indicates if the repository has issues feature enabled. """ - tagName: String! + hasIssuesEnabled: Boolean! """ - Identifies the date and time when the object was last updated. + Indicates if the repository has the Projects feature enabled. """ - updatedAt: DateTime! + hasProjectsEnabled: Boolean! """ - The HTTP URL for this issue + Whether vulnerability alerts are enabled for the repository. """ - url: URI! -} + hasVulnerabilityAlertsEnabled: Boolean! -""" -A release asset contains the content for a release asset. -""" -type ReleaseAsset implements Node { """ - The asset's content-type + Indicates if the repository has wiki feature enabled. """ - contentType: String! + hasWikiEnabled: Boolean! """ - Identifies the date and time when the object was created. + The repository's URL. """ - createdAt: DateTime! + homepageUrl: URI + id: ID! """ - The number of times this asset was downloaded + The interaction ability settings for this repository. """ - downloadCount: Int! + interactionAbility: RepositoryInteractionAbility """ - Identifies the URL where you can download the release asset via the browser. + Indicates if the repository is unmaintained. """ - downloadUrl: URI! - id: ID! + isArchived: Boolean! """ - Identifies the title of the release asset. + Returns true if blank issue creation is allowed """ - name: String! + isBlankIssuesEnabled: Boolean! """ - Release that the asset is associated with + Returns whether or not this repository disabled. """ - release: Release + isDisabled: Boolean! """ - The size (in bytes) of the asset + Returns whether or not this repository is empty. """ - size: Int! + isEmpty: Boolean! """ - Identifies the date and time when the object was last updated. + Identifies if the repository is a fork. """ - updatedAt: DateTime! + isFork: Boolean! """ - The user that performed the upload + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. """ - uploadedBy: User! + isInOrganization: Boolean! """ - Identifies the URL of the release asset. + Indicates if the repository has been locked or not. """ - url: URI! -} + isLocked: Boolean! -""" -The connection type for ReleaseAsset. -""" -type ReleaseAssetConnection { """ - A list of edges. + Identifies if the repository is a mirror. """ - edges: [ReleaseAssetEdge] + isMirror: Boolean! """ - A list of nodes. + Identifies if the repository is private or internal. """ - nodes: [ReleaseAsset] + isPrivate: Boolean! """ - Information to aid in pagination. + Returns true if this repository has a security policy """ - pageInfo: PageInfo! + isSecurityPolicyEnabled: Boolean """ - Identifies the total count of items in the connection. + Identifies if the repository is a template that can be used to generate new repositories. """ - totalCount: Int! -} + isTemplate: Boolean! -""" -An edge in a connection. -""" -type ReleaseAssetEdge { """ - A cursor for use in pagination. + Is this repository a user configuration repository? """ - cursor: String! + isUserConfigurationRepository: Boolean! """ - The item at the end of the edge. + Returns a single issue from the current repository by number. """ - node: ReleaseAsset -} + issue( + """ + The number for the issue to be returned. + """ + number: Int! + ): Issue -""" -The connection type for Release. -""" -type ReleaseConnection { """ - A list of edges. + Returns a single issue-like object from the current repository by number. """ - edges: [ReleaseEdge] + issueOrPullRequest( + """ + The number for the issue to be returned. + """ + number: Int! + ): IssueOrPullRequest """ - A list of nodes. + Returns a list of issue templates associated to the repository """ - nodes: [Release] + issueTemplates: [IssueTemplate!] """ - Information to aid in pagination. + A list of issues that have been opened in the repository. """ - pageInfo: PageInfo! + issues( + """ + 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 ReleaseEdge { - """ - A cursor for use in pagination. - """ - cursor: String! + """ + Filtering options for issues returned from the connection. + """ + filterBy: IssueFilters - """ - 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 direction in which to order releases by the specified field. - """ - direction: OrderDirection! + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] - """ - The field in which to order releases by. - """ - field: ReleaseOrderField! -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -Properties by which release connections can be ordered. -""" -enum ReleaseOrderField { - """ - Order releases by creation time - """ - CREATED_AT + """ + Ordering options for issues returned from the connection. + """ + orderBy: IssueOrder - """ - Order releases alphabetically by name - """ - NAME -} + """ + A list of states to filter the issues by. + """ + states: [IssueState!] + ): IssueConnection! -""" -Autogenerated input type of RemoveAssigneesFromAssignable -""" -input RemoveAssigneesFromAssignableInput { """ - The id of the assignable object to remove assignees from. + Returns a single label by name """ - assignableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Assignable") + label( + """ + Label name + """ + name: String! + ): Label """ - The id of users to remove as assignees. + A list of labels associated with the repository. """ - assigneeIds: [ID!]! @possibleTypes(concreteTypes: ["User"]) + labels( + """ + 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 + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for labels returned from the connection. + """ + orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} + + """ + If provided, searches labels by name and description. + """ + query: String + ): LabelConnection -""" -Autogenerated return type of RemoveAssigneesFromAssignable -""" -type RemoveAssigneesFromAssignablePayload { """ - The item that was unassigned. + A list containing a breakdown of the language composition of the repository. """ - assignable: Assignable + 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 + + """ + Order for connection + """ + orderBy: LanguageOrder + ): LanguageConnection """ - A unique identifier for the client performing the mutation. + Get the latest release for the repository if one exists. """ - clientMutationId: String -} + latestRelease: Release -""" -Autogenerated input type of RemoveEnterpriseAdmin -""" -input RemoveEnterpriseAdminInput { """ - A unique identifier for the client performing the mutation. + The license associated with the repository """ - clientMutationId: String + licenseInfo: License """ - The Enterprise ID from which to remove the administrator. + The reason the repository has been locked. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + lockReason: RepositoryLockReason """ - The login of the user to remove as an administrator. + A list of Users that can be mentioned in the context of the repository. """ - login: String! -} + mentionableUsers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filters users with query on user name and login + """ + query: String + ): UserConnection! -""" -Autogenerated return type of RemoveEnterpriseAdmin -""" -type RemoveEnterpriseAdminPayload { """ - The user who was removed as an administrator. + Whether or not PRs are merged with a merge commit on this repository. """ - admin: User + mergeCommitAllowed: Boolean! """ - A unique identifier for the client performing the mutation. + How the default commit message will be generated when merging a pull request. """ - clientMutationId: String + mergeCommitMessage: MergeCommitMessage! """ - The updated enterprise. + How the default commit title will be generated when merging a pull request. """ - enterprise: Enterprise + mergeCommitTitle: MergeCommitTitle! """ - A message confirming the result of removing an administrator. + The merge queue for a specified branch, otherwise the default branch if not provided. """ - message: String + mergeQueue( + """ + The name of the branch to get the merge queue for. Case sensitive. + """ + branch: String + ): MergeQueue """ - The viewer performing the mutation. + Returns a single milestone from the current repository by number. """ - viewer: User -} + milestone( + """ + The number for the milestone to be returned. + """ + number: Int! + ): Milestone -""" -Autogenerated input type of RemoveEnterpriseIdentityProvider -""" -input RemoveEnterpriseIdentityProviderInput { """ - A unique identifier for the client performing the mutation. + A list of milestones associated with the repository. """ - clientMutationId: String + milestones( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for milestones. + """ + orderBy: MilestoneOrder + + """ + Filters milestones with a query on the title + """ + query: String + + """ + Filter by the state of the milestones. + """ + states: [MilestoneState!] + ): MilestoneConnection """ - The ID of the enterprise from which to remove the identity provider. + The repository's original mirror URL. """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) -} + mirrorUrl: URI -""" -Autogenerated return type of RemoveEnterpriseIdentityProvider -""" -type RemoveEnterpriseIdentityProviderPayload { """ - A unique identifier for the client performing the mutation. + The name of the repository. """ - clientMutationId: String + name: String! """ - The identity provider that was removed from the enterprise. + The repository's name with owner. """ - identityProvider: EnterpriseIdentityProvider -} + nameWithOwner: String! -""" -Autogenerated input type of RemoveEnterpriseOrganization -""" -input RemoveEnterpriseOrganizationInput { """ - A unique identifier for the client performing the mutation. + A Git object in the repository """ - clientMutationId: String + object( + """ + A Git revision expression suitable for rev-parse + """ + expression: String - """ - The ID of the enterprise from which the organization should be removed. - """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + """ + The Git object ID + """ + oid: GitObjectID + ): GitObject """ - The ID of the organization to remove from the enterprise. + The image used to represent this repository in Open Graph data. """ - organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) -} + openGraphImageUrl: URI! -""" -Autogenerated return type of RemoveEnterpriseOrganization -""" -type RemoveEnterpriseOrganizationPayload { """ - A unique identifier for the client performing the mutation. + The User owner of the repository. """ - clientMutationId: String + owner: RepositoryOwner! """ - The updated enterprise. + A list of packages under the owner. """ - enterprise: Enterprise + packages( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The organization that was removed from the enterprise. - """ - organization: Organization + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - The viewer performing the mutation. - """ - viewer: User -} + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Autogenerated input type of RemoveEnterpriseSupportEntitlement -""" -input RemoveEnterpriseSupportEntitlementInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the last _n_ elements from the list. + """ + last: Int - """ - The ID of the Enterprise which the admin belongs to. - """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + """ + Find packages by their names. + """ + names: [String] - """ - The login of a member who will lose the support entitlement. - """ - login: String! -} + """ + Ordering of the returned packages. + """ + orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} -""" -Autogenerated return type of RemoveEnterpriseSupportEntitlement -""" -type RemoveEnterpriseSupportEntitlementPayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Filter registry package by type. + """ + packageType: PackageType - """ - A message confirming the result of removing the support entitlement. - """ - message: String -} + """ + Find packages in a repository by ID. + """ + repositoryId: ID + ): PackageConnection! -""" -Autogenerated input type of RemoveLabelsFromLabelable -""" -input RemoveLabelsFromLabelableInput { """ - A unique identifier for the client performing the mutation. + The repository parent, if this is a fork. """ - clientMutationId: String + parent: Repository """ - The ids of labels to remove. + A list of discussions that have been pinned in this repository. """ - labelIds: [ID!]! @possibleTypes(concreteTypes: ["Label"]) + pinnedDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - The id of the Labelable to remove labels from. - """ - labelableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Labelable") -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -Autogenerated return type of RemoveLabelsFromLabelable -""" -type RemoveLabelsFromLabelablePayload { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PinnedDiscussionConnection! """ - The Labelable the labels were removed from. + A list of pinned issues for this repository. """ - labelable: Labelable -} + pinnedIssues( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): PinnedIssueConnection -""" -Autogenerated input type of RemoveOutsideCollaborator -""" -input RemoveOutsideCollaboratorInput { """ - A unique identifier for the client performing the mutation. + The primary language of the repository's code. """ - clientMutationId: String + primaryLanguage: Language """ - The ID of the organization to remove the outside collaborator from. + Find project by number. """ - organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + project( + """ + The project number to find. + """ + number: Int! + ): Project """ - The ID of the outside collaborator to remove. + Finds and returns the Project according to the provided Project number. """ - userId: ID! @possibleTypes(concreteTypes: ["User"]) -} + projectV2( + """ + The Project number. + """ + number: Int! + ): ProjectV2 -""" -Autogenerated return type of RemoveOutsideCollaborator -""" -type RemoveOutsideCollaboratorPayload { """ - A unique identifier for the client performing the mutation. + A list of projects under the owner. """ - clientMutationId: String + projects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for projects returned from the connection + """ + orderBy: ProjectOrder + + """ + Query to search projects by, currently only searching by name. + """ + search: String + + """ + A list of states to filter the projects by. + """ + states: [ProjectState!] + ): ProjectConnection! """ - The user that was removed as an outside collaborator. + The HTTP path listing the repository's projects """ - removedUser: User -} + projectsResourcePath: URI! -""" -Autogenerated input type of RemoveReaction -""" -input RemoveReactionInput { """ - A unique identifier for the client performing the mutation. + The HTTP URL listing the repository's projects """ - clientMutationId: String + projectsUrl: URI! """ - The name of the emoji reaction to remove. + List of projects linked to this repository. """ - content: ReactionContent! + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for linked to the repo. + """ + query: String + ): ProjectV2Connection! """ - The Node ID of the subject to modify. + Returns a single pull request from the current repository by number. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "Issue", "IssueComment", "PullRequest", "PullRequestReview", "PullRequestReviewComment", "TeamDiscussion", "TeamDiscussionComment"], abstractType: "Reactable") -} + pullRequest( + """ + The number for the pull request to be returned. + """ + number: Int! + ): PullRequest -""" -Autogenerated return type of RemoveReaction -""" -type RemoveReactionPayload { """ - A unique identifier for the client performing the mutation. + Returns a list of pull request templates associated to the repository """ - clientMutationId: String + pullRequestTemplates: [PullRequestTemplate!] """ - The reaction object. + A list of pull requests that have been opened in the repository. """ - reaction: Reaction + pullRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + The base ref name to filter the pull requests by. + """ + baseRefName: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + The head ref name to filter the pull requests by. + """ + headRefName: String + + """ + A list of label names to filter the pull requests by. + """ + labels: [String!] + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for pull requests returned from the connection. + """ + orderBy: IssueOrder + + """ + A list of states to filter the pull requests by. + """ + states: [PullRequestState!] + ): PullRequestConnection! """ - The reactable subject. + Identifies the date and time when the repository was last pushed to. """ - subject: Reactable -} + pushedAt: DateTime -""" -Autogenerated input type of RemoveStar -""" -input RemoveStarInput { """ - A unique identifier for the client performing the mutation. + Whether or not rebase-merging is enabled on this repository. """ - clientMutationId: String + rebaseMergeAllowed: Boolean! """ - The Starrable ID to unstar. + Recent projects that this user has modified in the context of the owner. """ - starrableId: ID! @possibleTypes(concreteTypes: ["Gist", "Repository", "Topic"], abstractType: "Starrable") -} + 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! -""" -Autogenerated return type of RemoveStar -""" -type RemoveStarPayload { """ - A unique identifier for the client performing the mutation. + Fetch a given ref from the repository """ - clientMutationId: String + ref( + """ + The ref to retrieve. Fully qualified matches are checked in order + (`refs/heads/master`) before falling back onto checks for short name matches (`master`). + """ + qualifiedName: String! + ): Ref """ - The starrable. + Fetch a list of refs from the repository """ - starrable: Starrable -} + refs( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + DEPRECATED: use orderBy. The ordering direction. + """ + direction: OrderDirection + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for refs returned from the connection. + """ + orderBy: RefOrder + + """ + Filters refs with query on name + """ + query: String + + """ + A ref name prefix like `refs/heads/`, `refs/tags/`, etc. + """ + refPrefix: String! + ): RefConnection -""" -Represents a 'removed_from_project' event on a given issue or pull request. -""" -type RemovedFromProjectEvent implements Node { """ - Identifies the actor who performed the event. + Lookup a single release given various criteria. """ - actor: Actor + release( + """ + The name of the Tag the Release was created from + """ + tagName: String! + ): Release """ - Identifies the date and time when the object was created. + List of releases which are dependent on this repository. """ - createdAt: DateTime! + releases( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Order for connection + """ + orderBy: ReleaseOrder + ): ReleaseConnection! """ - Identifies the primary key from the database. + A list of applied repository-topic associations for this repository. """ - databaseId: Int - id: ID! + repositoryTopics( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String - """ - Project referenced by event. - """ - project: Project @preview(toggledBy: "starfox-preview") + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - Column name referenced by this project event. - """ - projectColumnName: String! @preview(toggledBy: "starfox-preview") -} + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): RepositoryTopicConnection! -""" -Represents a 'renamed' event on a given issue or pull request -""" -type RenamedTitleEvent implements Node { """ - Identifies the actor who performed the event. + The HTTP path for this repository """ - actor: Actor + resourcePath: URI! """ - Identifies the date and time when the object was created. + Returns a single ruleset from the current repository by ID. """ - createdAt: DateTime! + ruleset( + """ + The ID of the ruleset to be returned. + """ + databaseId: Int! - """ - Identifies the current title of the issue or pull request. - """ - currentTitle: String! - id: ID! + """ + Include rulesets configured at higher levels that apply to this repository + """ + includeParents: Boolean = true + ): RepositoryRuleset """ - Identifies the previous title of the issue or pull request. + A list of rulesets for this repository. """ - previousTitle: String! + rulesets( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String - """ - Subject that was renamed. - """ - subject: RenamedTitleSubject! -} + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String -""" -An object which has a renamable title -""" -union RenamedTitleSubject = Issue | PullRequest + """ + Returns the first _n_ elements from the list. + """ + first: Int -""" -Autogenerated input type of ReopenIssue -""" -input ReopenIssueInput { - """ - A unique identifier for the client performing the mutation. - """ - clientMutationId: String + """ + Return rulesets configured at higher levels that apply to this repository + """ + includeParents: Boolean = true - """ - ID of the issue to be opened. - """ - issueId: ID! @possibleTypes(concreteTypes: ["Issue"]) -} + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): RepositoryRulesetConnection -""" -Autogenerated return type of ReopenIssue -""" -type ReopenIssuePayload { """ - A unique identifier for the client performing the mutation. + The security policy URL. """ - clientMutationId: String + securityPolicyUrl: URI """ - The issue that was opened. + A description of the repository, rendered to HTML without any links in it. """ - issue: Issue -} + shortDescriptionHTML( + """ + How many characters to return. + """ + limit: Int = 200 + ): HTML! -""" -Autogenerated input type of ReopenPullRequest -""" -input ReopenPullRequestInput { """ - A unique identifier for the client performing the mutation. + Whether or not squash-merging is enabled on this repository. """ - clientMutationId: String + squashMergeAllowed: Boolean! """ - ID of the pull request to be reopened. + How the default commit message will be generated when squash merging a pull request. """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) -} + squashMergeCommitMessage: SquashMergeCommitMessage! -""" -Autogenerated return type of ReopenPullRequest -""" -type ReopenPullRequestPayload { """ - A unique identifier for the client performing the mutation. + How the default commit title will be generated when squash merging a pull request. """ - clientMutationId: String + squashMergeCommitTitle: SquashMergeCommitTitle! """ - The pull request that was reopened. + Whether a squash merge commit can use the pull request title as default. """ - pullRequest: PullRequest -} + squashPrTitleUsedAsDefault: Boolean! + @deprecated( + reason: "`squashPrTitleUsedAsDefault` will be removed. Use `Repository.squashMergeCommitTitle` instead. Removal on 2023-04-01 UTC." + ) -""" -Represents a 'reopened' event on any `Closable`. -""" -type ReopenedEvent implements Node { """ - Identifies the actor who performed the event. + The SSH URL to clone this repository """ - actor: Actor + sshUrl: GitSSHRemote! """ - Object that was reopened. + Returns a count of how many stargazers there are on this object """ - closable: Closable! + stargazerCount: Int! """ - Identifies the date and time when the object was created. + A list of users who have starred this starrable. """ - createdAt: DateTime! - id: ID! -} + stargazers( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String -""" -Audit log entry for a repo.access event. -""" -type RepoAccessAuditEntry implements AuditEntry & Node & 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 + """ + Order for connection + """ + orderBy: StarOrder + ): StargazerConnection! """ - The username of the user who initiated the action + Returns a list of all submodules in this repository parsed from the + .gitmodules file as of the default branch's HEAD commit. """ - actorLogin: String + submodules( + """ + 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 + ): SubmoduleConnection! """ - The corresponding operation type for the action + Temporary authentication token for cloning this repository. """ - operationType: OperationType + tempCloneToken: String """ - The Organization associated with the Audit Entry. + The repository from which this repository was generated, if any. """ - organization: Organization + templateRepository: Repository """ - The name of the Organization. + Identifies the date and time when the object was last updated. """ - organizationName: String + updatedAt: DateTime! """ - The HTTP path for the organization + The HTTP URL for this repository """ - organizationResourcePath: URI + url: URI! """ - The HTTP URL for the organization + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. """ - organizationUrl: URI + usesCustomOpenGraphImage: Boolean! """ - The repository associated with the action + Indicates whether the viewer has admin permissions on this repository. """ - repository: Repository + viewerCanAdminister: Boolean! """ - The name of the repository + Can the current viewer create new projects on this owner. """ - repositoryName: String + viewerCanCreateProjects: Boolean! """ - The HTTP path for the repository + Check if the viewer is able to change their subscription status for the repository. """ - repositoryResourcePath: URI + viewerCanSubscribe: Boolean! """ - The HTTP URL for the repository + Indicates whether the viewer can update the topics of this repository. """ - repositoryUrl: URI + viewerCanUpdateTopics: Boolean! """ - The user affected by the action + The last commit email for the viewer. """ - user: User + 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. + Returns a boolean indicating whether the viewing user has starred this starrable. """ - userResourcePath: URI + viewerHasStarred: Boolean! """ - The HTTP URL for the user. + The users permission level on the repository. Will return null if authenticated as an GitHub App. """ - userUrl: URI + viewerPermission: RepositoryPermission """ - The visibility of the repository + A list of emails this viewer can commit with. """ - visibility: RepoAccessAuditEntryVisibility -} + viewerPossibleCommitEmails: [String!] -""" -The privacy of a repository -""" -enum RepoAccessAuditEntryVisibility { """ - The repository is visible only to users in the same business. + Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. """ - INTERNAL + viewerSubscription: SubscriptionState """ - The repository is visible only to those with explicit access. + Indicates the repository's visibility level. """ - PRIVATE + visibility: RepositoryVisibility! """ - The repository is visible to everyone. + Returns a single vulnerability alert from the current repository by number. """ - PUBLIC -} + vulnerabilityAlert( + """ + The number for the vulnerability alert to be returned. + """ + number: Int! + ): RepositoryVulnerabilityAlert -""" -Audit log entry for a repo.add_member event. -""" -type RepoAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + A list of vulnerability alerts that are on this repository. """ - action: String! + vulnerabilityAlerts( + """ + 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 + """ + Filter by the scope of the alert's dependency + """ + dependencyScopes: [RepositoryVulnerabilityAlertDependencyScope!] - """ - 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 + """ + Filter by the state of the alert + """ + states: [RepositoryVulnerabilityAlertState!] + ): RepositoryVulnerabilityAlertConnection """ - The HTTP URL for the actor. + A list of users watching the repository. """ - actorUrl: URI + watchers( + """ + 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 + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): UserConnection! """ - The Organization associated with the Audit Entry. + Whether contributors are required to sign off on web-based commits in this repository. """ - organization: Organization + webCommitSignoffRequired: Boolean! +} +""" +The affiliation of a user to a repository +""" +enum RepositoryAffiliation { """ - The name of the Organization. + Repositories that the user has been added to as a collaborator. """ - organizationName: String + COLLABORATOR """ - The HTTP path for the organization + Repositories that the user has access to through being a member of an + organization. This includes every repository on every team that the user is on. """ - organizationResourcePath: URI + ORGANIZATION_MEMBER """ - The HTTP URL for the organization + Repositories that are owned by the authenticated user. """ - organizationUrl: URI + OWNER +} +""" +Metadata for an audit entry with action repo.* +""" +interface RepositoryAuditEntryData { """ The repository associated with the action """ @@ -28064,1343 +43676,1727 @@ type RepoAddMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEnt The HTTP URL for the repository """ repositoryUrl: URI +} +""" +Information extracted from a repository's `CODEOWNERS` file. +""" +type RepositoryCodeowners { """ - The user affected by the action + Any problems that were encountered while parsing the `CODEOWNERS` file. """ - user: User + errors: [RepositoryCodeownersError!]! +} +""" +An error in a `CODEOWNERS` file. +""" +type RepositoryCodeownersError { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The column number where the error occurs. """ - userLogin: String + column: Int! """ - The HTTP path for the user. + A short string describing the type of error. """ - userResourcePath: URI + kind: String! """ - The HTTP URL for the user. + The line number where the error occurs. """ - userUrl: URI + line: Int! """ - The visibility of the repository + A complete description of the error, combining information from other fields. """ - visibility: RepoAddMemberAuditEntryVisibility -} + message: String! -""" -The privacy of a repository -""" -enum RepoAddMemberAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The path to the file when the error occurs. """ - INTERNAL + path: String! """ - The repository is visible only to those with explicit access. + The content of the line where the error occurs. """ - PRIVATE + source: String! """ - The repository is visible to everyone. + A suggestion of how to fix the error. """ - PUBLIC + suggestion: String } """ -Audit log entry for a repo.add_topic event. +The connection type for User. """ -type RepoAddTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { - """ - The action name - """ - action: String! - - """ - The user who initiated the action - """ - actor: AuditEntryActor - +type RepositoryCollaboratorConnection { """ - The IP address of the actor + A list of edges. """ - actorIp: String + edges: [RepositoryCollaboratorEdge] """ - A readable representation of the actor's location + A list of nodes. """ - actorLocation: ActorLocation + nodes: [User] """ - The username of the user who initiated the action + Information to aid in pagination. """ - actorLogin: String + pageInfo: PageInfo! """ - The HTTP path for the actor. + Identifies the total count of items in the connection. """ - actorResourcePath: URI + totalCount: Int! +} +""" +Represents a user who is a collaborator of a repository. +""" +type RepositoryCollaboratorEdge { """ - The HTTP URL for the actor. + A cursor for use in pagination. """ - actorUrl: URI + cursor: String! + node: User! """ - The time the action was initiated + The permission the user has on the repository. """ - createdAt: PreciseDateTime! - id: ID! + permission: RepositoryPermission! """ - The corresponding operation type for the action + A list of sources for the user's access to the repository. """ - operationType: OperationType + permissionSources: [PermissionSource!] +} +""" +A list of repositories owned by the subject. +""" +type RepositoryConnection { """ - The Organization associated with the Audit Entry. + A list of edges. """ - organization: Organization + edges: [RepositoryEdge] """ - The name of the Organization. + A list of nodes. """ - organizationName: String + nodes: [Repository] """ - The HTTP path for the organization + Information to aid in pagination. """ - organizationResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the organization + Identifies the total count of items in the connection. """ - organizationUrl: URI + totalCount: Int! """ - The repository associated with the action + The total size in kilobytes of all repositories in the connection. """ - repository: Repository + totalDiskUsage: Int! +} +""" +A repository contact link. +""" +type RepositoryContactLink { """ - The name of the repository + The contact link purpose. """ - repositoryName: String + about: String! """ - The HTTP path for the repository + The contact link name. """ - repositoryResourcePath: URI + name: String! """ - The HTTP URL for the repository + The contact link URL. """ - repositoryUrl: URI + url: URI! +} +""" +The reason a repository is listed as 'contributed'. +""" +enum RepositoryContributionType { """ - The name of the topic added to the repository + Created a commit """ - topic: Topic + COMMIT """ - The name of the topic added to the repository + Created an issue """ - topicName: String + ISSUE """ - The user affected by the action + Created a pull request """ - user: User + PULL_REQUEST """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Reviewed a pull request """ - userLogin: String + PULL_REQUEST_REVIEW """ - The HTTP path for the user. + Created the repository """ - userResourcePath: URI + REPOSITORY +} +""" +Represents an author of discussions in repositories. +""" +interface RepositoryDiscussionAuthor { """ - The HTTP URL for the user. + Discussions this user has started. """ - userUrl: URI + repositoryDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter discussions to only those in a specific repository. + """ + repositoryId: ID + + """ + A list of states to filter the discussions by. + """ + states: [DiscussionState!] = [] + ): DiscussionConnection! } """ -Audit log entry for a repo.archived event. +Represents an author of discussion comments in repositories. """ -type RepoArchivedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +interface RepositoryDiscussionCommentAuthor { """ - The action name + Discussion comments this user has authored. """ - action: String! + repositoryDiscussionComments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false + + """ + Filter discussion comments to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionCommentConnection! +} + +""" +An edge in a connection. +""" +type RepositoryEdge { """ - The user who initiated the action + A cursor for use in pagination. """ - actor: AuditEntryActor + cursor: String! """ - The IP address of the actor + The item at the end of the edge. """ - actorIp: String + node: Repository +} +""" +Parameters to be used for the repository_id condition +""" +type RepositoryIdConditionTarget { """ - A readable representation of the actor's location + One of these repo IDs must match the repo. """ - actorLocation: ActorLocation + repositoryIds: [ID!]! +} +""" +Parameters to be used for the repository_id condition +""" +input RepositoryIdConditionTargetInput { """ - The username of the user who initiated the action + One of these repo IDs must match the repo. """ - actorLogin: String + repositoryIds: [ID!]! +} +""" +A subset of repository info. +""" +interface RepositoryInfo { """ - The HTTP path for the actor. + Identifies the date and time when the repository was archived. """ - actorResourcePath: URI + archivedAt: DateTime """ - The HTTP URL for the actor. + Identifies the date and time when the object was created. """ - actorUrl: URI + createdAt: DateTime! """ - The time the action was initiated + The description of the repository. """ - createdAt: PreciseDateTime! - id: ID! + description: String """ - The corresponding operation type for the action + The description of the repository rendered to HTML. """ - operationType: OperationType + descriptionHTML: HTML! """ - The Organization associated with the Audit Entry. + Returns how many forks there are of this repository in the whole network. """ - organization: Organization + forkCount: Int! """ - The name of the Organization. + Indicates if the repository has the Discussions feature enabled. """ - organizationName: String + hasDiscussionsEnabled: Boolean! """ - The HTTP path for the organization + Indicates if the repository has issues feature enabled. """ - organizationResourcePath: URI + hasIssuesEnabled: Boolean! """ - The HTTP URL for the organization + Indicates if the repository has the Projects feature enabled. """ - organizationUrl: URI + hasProjectsEnabled: Boolean! """ - The repository associated with the action + Indicates if the repository has wiki feature enabled. """ - repository: Repository + hasWikiEnabled: Boolean! """ - The name of the repository + The repository's URL. """ - repositoryName: String + homepageUrl: URI """ - The HTTP path for the repository + Indicates if the repository is unmaintained. """ - repositoryResourcePath: URI + isArchived: Boolean! """ - The HTTP URL for the repository + Identifies if the repository is a fork. """ - repositoryUrl: URI + isFork: Boolean! """ - The user affected by the action + Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. """ - user: User + isInOrganization: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Indicates if the repository has been locked or not. """ - userLogin: String + isLocked: Boolean! """ - The HTTP path for the user. + Identifies if the repository is a mirror. """ - userResourcePath: URI + isMirror: Boolean! """ - The HTTP URL for the user. + Identifies if the repository is private or internal. """ - userUrl: URI + isPrivate: Boolean! """ - The visibility of the repository + Identifies if the repository is a template that can be used to generate new repositories. """ - visibility: RepoArchivedAuditEntryVisibility -} + isTemplate: Boolean! -""" -The privacy of a repository -""" -enum RepoArchivedAuditEntryVisibility { """ - The repository is visible only to users in the same business. + The license associated with the repository """ - INTERNAL + licenseInfo: License """ - The repository is visible only to those with explicit access. + The reason the repository has been locked. """ - PRIVATE + lockReason: RepositoryLockReason """ - The repository is visible to everyone. + The repository's original mirror URL. """ - PUBLIC -} + mirrorUrl: URI -""" -Audit log entry for a repo.change_merge_setting event. -""" -type RepoChangeMergeSettingAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + The name of the repository. """ - action: String! + name: String! """ - The user who initiated the action + The repository's name with owner. """ - actor: AuditEntryActor + nameWithOwner: String! """ - The IP address of the actor + The image used to represent this repository in Open Graph data. """ - actorIp: String + openGraphImageUrl: URI! """ - A readable representation of the actor's location + The User owner of the repository. """ - actorLocation: ActorLocation + owner: RepositoryOwner! """ - The username of the user who initiated the action + Identifies the date and time when the repository was last pushed to. """ - actorLogin: String + pushedAt: DateTime """ - The HTTP path for the actor. + The HTTP path for this repository """ - actorResourcePath: URI + resourcePath: URI! """ - The HTTP URL for the actor. + A description of the repository, rendered to HTML without any links in it. """ - actorUrl: URI + shortDescriptionHTML( + """ + How many characters to return. + """ + limit: Int = 200 + ): HTML! """ - The time the action was initiated + Identifies the date and time when the object was last updated. """ - createdAt: PreciseDateTime! - id: ID! + updatedAt: DateTime! """ - Whether the change was to enable (true) or disable (false) the merge type + The HTTP URL for this repository """ - isEnabled: Boolean + url: URI! """ - The merge method affected by the change + Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. """ - mergeType: RepoChangeMergeSettingAuditEntryMergeType + usesCustomOpenGraphImage: Boolean! """ - The corresponding operation type for the action + Indicates the repository's visibility level. """ - operationType: OperationType + visibility: RepositoryVisibility! +} +""" +Repository interaction limit that applies to this object. +""" +type RepositoryInteractionAbility { """ - The Organization associated with the Audit Entry. + The time the currently active limit expires. """ - organization: Organization + expiresAt: DateTime """ - The name of the Organization. + The current limit that is enabled on this object. """ - organizationName: String + limit: RepositoryInteractionLimit! """ - The HTTP path for the organization + The origin of the currently active interaction limit. """ - organizationResourcePath: URI + origin: RepositoryInteractionLimitOrigin! +} +""" +A repository interaction limit. +""" +enum RepositoryInteractionLimit { """ - The HTTP URL for the organization + Users that are not collaborators will not be able to interact with the repository. """ - organizationUrl: URI + COLLABORATORS_ONLY """ - The repository associated with the action + Users that have not previously committed to a repository’s default branch will be unable to interact with the repository. """ - repository: Repository + CONTRIBUTORS_ONLY """ - The name of the repository + Users that have recently created their account will be unable to interact with the repository. """ - repositoryName: String + EXISTING_USERS """ - The HTTP path for the repository + No interaction limits are enabled. """ - repositoryResourcePath: URI + NO_LIMIT +} +""" +The length for a repository interaction limit to be enabled for. +""" +enum RepositoryInteractionLimitExpiry { """ - The HTTP URL for the repository + The interaction limit will expire after 1 day. """ - repositoryUrl: URI + ONE_DAY """ - The user affected by the action + The interaction limit will expire after 1 month. """ - user: User + ONE_MONTH """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The interaction limit will expire after 1 week. """ - userLogin: String + ONE_WEEK """ - The HTTP path for the user. + The interaction limit will expire after 6 months. """ - userResourcePath: URI + SIX_MONTHS """ - The HTTP URL for the user. + The interaction limit will expire after 3 days. """ - userUrl: URI + THREE_DAYS } """ -The merge options available for pull requests to this repository. +Indicates where an interaction limit is configured. """ -enum RepoChangeMergeSettingAuditEntryMergeType { +enum RepositoryInteractionLimitOrigin { """ - The pull request is added to the base branch in a merge commit. + A limit that is configured at the organization level. """ - MERGE + ORGANIZATION """ - Commits from the pull request are added onto the base branch individually without a merge commit. + A limit that is configured at the repository level. """ - REBASE + REPOSITORY """ - The pull request's commits are squashed into a single commit before they are merged to the base branch. + A limit that is configured at the user-wide level. """ - SQUASH + USER } """ -Audit log entry for a repo.config.disable_anonymous_git_access event. +An invitation for a user to be added to a repository. """ -type RepoConfigDisableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryInvitation implements Node { """ - The action name + The email address that received the invitation. """ - action: String! + email: String + id: ID! """ - The user who initiated the action + The user who received the invitation. """ - actor: AuditEntryActor + invitee: User """ - The IP address of the actor + The user who created the invitation. """ - actorIp: String + inviter: User! """ - A readable representation of the actor's location + The permalink for this repository invitation. """ - actorLocation: ActorLocation + permalink: URI! """ - The username of the user who initiated the action + The permission granted on this repository by this invitation. """ - actorLogin: String + permission: RepositoryPermission! """ - The HTTP path for the actor. + The Repository the user is invited to. """ - actorResourcePath: URI + repository: RepositoryInfo +} +""" +A list of repository invitations. +""" +type RepositoryInvitationConnection { """ - The HTTP URL for the actor. + A list of edges. """ - actorUrl: URI + edges: [RepositoryInvitationEdge] """ - The time the action was initiated + A list of nodes. """ - createdAt: PreciseDateTime! - id: ID! + nodes: [RepositoryInvitation] """ - The corresponding operation type for the action + Information to aid in pagination. """ - operationType: OperationType + pageInfo: PageInfo! """ - The Organization associated with the Audit Entry. + Identifies the total count of items in the connection. """ - organization: Organization + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryInvitationEdge { """ - The name of the Organization. + A cursor for use in pagination. """ - organizationName: String + cursor: String! """ - The HTTP path for the organization + The item at the end of the edge. """ - organizationResourcePath: URI + node: RepositoryInvitation +} +""" +Ordering options for repository invitation connections. +""" +input RepositoryInvitationOrder { """ - The HTTP URL for the organization + The ordering direction. """ - organizationUrl: URI + direction: OrderDirection! """ - The repository associated with the action + The field to order repository invitations by. """ - repository: Repository + field: RepositoryInvitationOrderField! +} +""" +Properties by which repository invitation connections can be ordered. +""" +enum RepositoryInvitationOrderField { """ - The name of the repository + Order repository invitations by creation time """ - repositoryName: String + CREATED_AT +} +""" +The possible reasons a given repository could be in a locked state. +""" +enum RepositoryLockReason { """ - The HTTP path for the repository + The repository is locked due to a billing related reason. """ - repositoryResourcePath: URI + BILLING """ - The HTTP URL for the repository + The repository is locked due to a migration. """ - repositoryUrl: URI + MIGRATING """ - The user affected by the action + The repository is locked due to a move. """ - user: User + MOVING """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The repository is locked due to a rename. """ - userLogin: String + RENAME """ - The HTTP path for the user. + The repository is locked due to a trade controls related reason. """ - userResourcePath: URI + TRADE_RESTRICTION """ - The HTTP URL for the user. + The repository is locked due to an ownership transfer. """ - userUrl: URI + TRANSFERRING_OWNERSHIP } """ -Audit log entry for a repo.config.disable_collaborators_only event. +A GitHub Enterprise Importer (GEI) repository migration. """ -type RepoConfigDisableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { - """ - The action name +type RepositoryMigration implements Migration & Node { """ - action: String! - - """ - The user who initiated the action + The migration flag to continue on error. """ - actor: AuditEntryActor + continueOnError: Boolean! """ - The IP address of the actor + Identifies the date and time when the object was created. """ - actorIp: String + createdAt: DateTime! """ - A readable representation of the actor's location + Identifies the primary key from the database. """ - actorLocation: ActorLocation + databaseId: String """ - The username of the user who initiated the action + The reason the migration failed. """ - actorLogin: String + failureReason: String + id: ID! """ - The HTTP path for the actor. + The URL for the migration log (expires 1 day after migration completes). """ - actorResourcePath: URI + migrationLogUrl: URI """ - The HTTP URL for the actor. + The migration source. """ - actorUrl: URI + migrationSource: MigrationSource! """ - The time the action was initiated + The target repository name. """ - createdAt: PreciseDateTime! - id: ID! + repositoryName: String! """ - The corresponding operation type for the action + The migration source URL, for example `https://github.com` or `https://monalisa.ghe.com`. """ - operationType: OperationType + sourceUrl: URI! """ - The Organization associated with the Audit Entry. + The migration state. """ - organization: Organization + state: MigrationState! """ - The name of the Organization. + The number of warnings encountered for this migration. To review the warnings, + check the [Migration Log](https://docs.github.com/en/migrations/using-github-enterprise-importer/completing-your-migration-with-github-enterprise-importer/accessing-your-migration-logs-for-github-enterprise-importer). """ - organizationName: String + warningsCount: Int! +} +""" +The connection type for RepositoryMigration. +""" +type RepositoryMigrationConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [RepositoryMigrationEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [RepositoryMigration] """ - The repository associated with the action + Information to aid in pagination. """ - repository: Repository + pageInfo: PageInfo! """ - The name of the repository + Identifies the total count of items in the connection. """ - repositoryName: String + totalCount: Int! +} +""" +Represents a repository migration. +""" +type RepositoryMigrationEdge { """ - The HTTP path for the repository + A cursor for use in pagination. """ - repositoryResourcePath: URI + cursor: String! """ - The HTTP URL for the repository + The item at the end of the edge. """ - repositoryUrl: URI + node: RepositoryMigration +} +""" +Ordering options for repository migrations. +""" +input RepositoryMigrationOrder { """ - The user affected by the action + The ordering direction. """ - user: User + direction: RepositoryMigrationOrderDirection! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The field to order repository migrations by. """ - userLogin: String + field: RepositoryMigrationOrderField! +} +""" +Possible directions in which to order a list of repository migrations when provided an `orderBy` argument. +""" +enum RepositoryMigrationOrderDirection { """ - The HTTP path for the user. + Specifies an ascending order for a given `orderBy` argument. """ - userResourcePath: URI + ASC """ - The HTTP URL for the user. + Specifies a descending order for a given `orderBy` argument. """ - userUrl: URI + DESC } """ -Audit log entry for a repo.config.disable_contributors_only event. +Properties by which repository migrations can be ordered. """ -type RepoConfigDisableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +enum RepositoryMigrationOrderField { """ - The action name + Order mannequins why when they were created. """ - action: String! + CREATED_AT +} +""" +Parameters to be used for the repository_name condition +""" +type RepositoryNameConditionTarget { """ - The user who initiated the action + Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match. """ - actor: AuditEntryActor + exclude: [String!]! """ - The IP address of the actor + 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. """ - actorIp: String + include: [String!]! """ - A readable representation of the actor's location + Target changes that match these patterns will be prevented except by those with bypass permissions. """ - actorLocation: ActorLocation + protected: Boolean! +} +""" +Parameters to be used for the repository_name condition +""" +input RepositoryNameConditionTargetInput { """ - The username of the user who initiated the action + Array of repository names or patterns to exclude. The condition will not pass if any of these patterns match. """ - actorLogin: String + exclude: [String!]! """ - The HTTP path for the actor. + 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. """ - actorResourcePath: URI + include: [String!]! """ - The HTTP URL for the actor. + Target changes that match these patterns will be prevented except by those with bypass permissions. """ - actorUrl: URI + protected: Boolean +} +""" +Represents a object that belongs to a repository. +""" +interface RepositoryNode { """ - The time the action was initiated + The repository associated with this node. """ - createdAt: PreciseDateTime! - id: ID! + repository: Repository! +} +""" +Ordering options for repository connections +""" +input RepositoryOrder { """ - The corresponding operation type for the action + The ordering direction. """ - operationType: OperationType + direction: OrderDirection! """ - The Organization associated with the Audit Entry. + The field to order repositories by. """ - organization: Organization + field: RepositoryOrderField! +} +""" +Properties by which repository connections can be ordered. +""" +enum RepositoryOrderField { """ - The name of the Organization. + Order repositories by creation time """ - organizationName: String + CREATED_AT """ - The HTTP path for the organization + Order repositories by name """ - organizationResourcePath: URI + NAME """ - The HTTP URL for the organization + Order repositories by push time """ - organizationUrl: URI + PUSHED_AT """ - The repository associated with the action + Order repositories by number of stargazers """ - repository: Repository + STARGAZERS """ - The name of the repository + Order repositories by update time """ - repositoryName: String + UPDATED_AT +} +""" +Represents an owner of a Repository. +""" +interface RepositoryOwner { """ - The HTTP path for the repository + A URL pointing to the owner's public avatar. """ - repositoryResourcePath: URI + avatarUrl( + """ + The size of the resulting square image. + """ + size: Int + ): URI! + id: ID! """ - The HTTP URL for the repository + The username used to login. """ - repositoryUrl: URI + login: String! """ - The user affected by the action + A list of repositories that the user owns. """ - user: User + repositories( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean + + """ + If non-null, filters repositories according to whether they are archived and not maintained + """ + isArchived: Boolean + + """ + If non-null, filters repositories according to whether they are forks of another repository + """ + isFork: Boolean + + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder + + """ + Array of owner's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + organization or user being viewed owns. + """ + ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + ): RepositoryConnection! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Find Repository. """ - userLogin: String + repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + + """ + Name of Repository to find. + """ + name: String! + ): Repository """ - The HTTP path for the user. + The HTTP URL for the owner. """ - userResourcePath: URI + resourcePath: URI! """ - The HTTP URL for the user. + The HTTP URL for the owner. """ - userUrl: URI + url: URI! } """ -Audit log entry for a repo.config.disable_sockpuppet_disallowed event. +The access level to a repository """ -type RepoConfigDisableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +enum RepositoryPermission { """ - The action name + Can read, clone, and push to this repository. Can also manage issues, pull + requests, and repository settings, including adding collaborators """ - action: String! + ADMIN """ - The user who initiated the action + Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings """ - actor: AuditEntryActor + MAINTAIN """ - The IP address of the actor + Can read and clone this repository. Can also open and comment on issues and pull requests """ - actorIp: String + READ """ - A readable representation of the actor's location + Can read and clone this repository. Can also manage issues and pull requests """ - actorLocation: ActorLocation + TRIAGE """ - The username of the user who initiated the action + Can read, clone, and push to this repository. Can also manage issues and pull requests """ - actorLogin: String + WRITE +} +""" +The privacy of a repository +""" +enum RepositoryPrivacy { """ - The HTTP path for the actor. + Private """ - actorResourcePath: URI + PRIVATE """ - The HTTP URL for the actor. + Public """ - actorUrl: URI + PUBLIC +} - """ - The time the action was initiated - """ - createdAt: PreciseDateTime! +""" +A repository rule. +""" +type RepositoryRule implements Node { id: ID! """ - The corresponding operation type for the action + The parameters for this rule. """ - operationType: OperationType + parameters: RuleParameters """ - The Organization associated with the Audit Entry. + The repository ruleset associated with this rule configuration """ - organization: Organization + repositoryRuleset: RepositoryRuleset """ - The name of the Organization. + The type of rule. """ - organizationName: String + type: RepositoryRuleType! +} +""" +Set of conditions that determine if a ruleset will evaluate +""" +type RepositoryRuleConditions { """ - The HTTP path for the organization + Configuration for the ref_name condition """ - organizationResourcePath: URI + refName: RefNameConditionTarget """ - The HTTP URL for the organization + Configuration for the repository_id condition """ - organizationUrl: URI + repositoryId: RepositoryIdConditionTarget """ - The repository associated with the action + Configuration for the repository_name condition """ - repository: Repository + repositoryName: RepositoryNameConditionTarget +} +""" +Specifies the conditions required for a ruleset to evaluate +""" +input RepositoryRuleConditionsInput { """ - The name of the repository + Configuration for the ref_name condition """ - repositoryName: String + refName: RefNameConditionTargetInput """ - The HTTP path for the repository + Configuration for the repository_id condition """ - repositoryResourcePath: URI + repositoryId: RepositoryIdConditionTargetInput """ - The HTTP URL for the repository + Configuration for the repository_name condition """ - repositoryUrl: URI + repositoryName: RepositoryNameConditionTargetInput +} +""" +The connection type for RepositoryRule. +""" +type RepositoryRuleConnection { """ - The user affected by the action + A list of edges. """ - user: User + edges: [RepositoryRuleEdge] """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A list of nodes. """ - userLogin: String + nodes: [RepositoryRule] """ - The HTTP path for the user. + Information to aid in pagination. """ - userResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the user. + Identifies the total count of items in the connection. """ - userUrl: URI + totalCount: Int! } """ -Audit log entry for a repo.config.enable_anonymous_git_access event. +An edge in a connection. """ -type RepoConfigEnableAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryRuleEdge { """ - The action name + A cursor for use in pagination. """ - action: String! + cursor: String! """ - The user who initiated the action + The item at the end of the edge. """ - actor: AuditEntryActor + node: RepositoryRule +} +""" +Specifies the attributes for a new or updated rule. +""" +input RepositoryRuleInput { """ - The IP address of the actor + Optional ID of this rule when updating """ - actorIp: String + id: ID @possibleTypes(concreteTypes: ["RepositoryRule"]) """ - A readable representation of the actor's location + The parameters for the rule. """ - actorLocation: ActorLocation + parameters: RuleParametersInput """ - The username of the user who initiated the action + The type of rule to create. """ - actorLogin: String + type: RepositoryRuleType! +} +""" +The rule types supported in rulesets +""" +enum RepositoryRuleType { """ - The HTTP path for the actor. + Authorization """ - actorResourcePath: URI + AUTHORIZATION """ - The HTTP URL for the actor. + Branch name pattern """ - actorUrl: URI + BRANCH_NAME_PATTERN """ - The time the action was initiated + Committer email pattern """ - createdAt: PreciseDateTime! - id: ID! + COMMITTER_EMAIL_PATTERN """ - The corresponding operation type for the action + Commit author email pattern """ - operationType: OperationType + COMMIT_AUTHOR_EMAIL_PATTERN """ - The Organization associated with the Audit Entry. + Commit message pattern """ - organization: Organization + COMMIT_MESSAGE_PATTERN """ - The name of the Organization. + Only allow users with bypass permission to create matching refs. """ - organizationName: String + CREATION """ - The HTTP path for the organization + Only allow users with bypass permissions to delete matching refs. """ - organizationResourcePath: URI + DELETION """ - The HTTP URL for the organization + File path pattern """ - organizationUrl: URI + FILE_PATH_PATTERN """ - The repository associated with the action + Branch is read-only. Users cannot push to the branch. """ - repository: Repository + LOCK_BRANCH """ - The name of the repository + Max ref updates """ - repositoryName: String + MAX_REF_UPDATES """ - The HTTP path for the repository + Merges must be performed via a merge queue. """ - repositoryResourcePath: URI + MERGE_QUEUE """ - The HTTP URL for the repository + Merge queue locked ref """ - repositoryUrl: URI + MERGE_QUEUE_LOCKED_REF """ - The user affected by the action + Prevent users with push access from force pushing to refs. """ - user: User + NON_FAST_FORWARD """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Require all commits be made to a non-target branch and submitted via a pull request before they can be merged. """ - userLogin: String + PULL_REQUEST """ - The HTTP path for the user. + Choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule. """ - userResourcePath: URI + REQUIRED_DEPLOYMENTS """ - The HTTP URL for the user. + Prevent merge commits from being pushed to matching refs. """ - userUrl: URI -} + REQUIRED_LINEAR_HISTORY -""" -Audit log entry for a repo.config.enable_collaborators_only event. -""" -type RepoConfigEnableCollaboratorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + When enabled, all conversations on code must be resolved before a pull request + can be merged into a branch that matches this rule. """ - action: String! + REQUIRED_REVIEW_THREAD_RESOLUTION """ - The user who initiated the action + Commits pushed to matching refs must have verified signatures. """ - actor: AuditEntryActor + REQUIRED_SIGNATURES """ - The IP address of the actor + Choose which status checks must pass before branches can be merged into a + branch that matches this rule. When enabled, commits must first be pushed to + another branch, then merged or pushed directly to a ref that matches this rule + after status checks have passed. """ - actorIp: String + REQUIRED_STATUS_CHECKS """ - A readable representation of the actor's location + Require all commits be made to a non-target branch and submitted via a pull + request and required workflow checks to pass before they can be merged. """ - actorLocation: ActorLocation + REQUIRED_WORKFLOW_STATUS_CHECKS """ - The username of the user who initiated the action + Commits pushed to matching refs must have verified signatures. """ - actorLogin: String + RULESET_REQUIRED_SIGNATURES """ - The HTTP path for the actor. + Secret scanning """ - actorResourcePath: URI + SECRET_SCANNING """ - The HTTP URL for the actor. + Tag """ - actorUrl: URI + TAG """ - The time the action was initiated + Tag name pattern """ - createdAt: PreciseDateTime! - id: ID! + TAG_NAME_PATTERN """ - The corresponding operation type for the action + Only allow users with bypass permission to update matching refs. """ - operationType: OperationType + UPDATE """ - The Organization associated with the Audit Entry. + Require all changes made to a targeted branch to pass the specified workflows before they can be merged. """ - organization: Organization + WORKFLOWS """ - The name of the Organization. + Workflow files cannot be modified. """ - organizationName: String + WORKFLOW_UPDATES +} +""" +A repository ruleset. +""" +type RepositoryRuleset implements Node { """ - The HTTP path for the organization + The actors that can bypass this ruleset """ - organizationResourcePath: URI + bypassActors( + """ + 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 + ): RepositoryRulesetBypassActorConnection """ - The HTTP path for the repository + The set of conditions that must evaluate to true for this ruleset to apply """ - repositoryResourcePath: URI + conditions: RepositoryRuleConditions! """ - The HTTP URL for the repository + Identifies the date and time when the object was created. """ - repositoryUrl: URI + createdAt: DateTime! """ - The user affected by the action + Identifies the primary key from the database. """ - user: User + databaseId: Int """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The enforcement level of this ruleset """ - userLogin: String + enforcement: RuleEnforcement! + id: ID! """ - The HTTP path for the user. + Name of the ruleset. """ - userResourcePath: URI + name: String! """ - The HTTP URL for the user. + List of rules. """ - userUrl: URI -} + rules( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + The type of rule. + """ + type: RepositoryRuleType + ): RepositoryRuleConnection -""" -Audit log entry for a repo.config.enable_contributors_only event. -""" -type RepoConfigEnableContributorsOnlyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + Source of ruleset. """ - action: String! + source: RuleSource! """ - The user who initiated the action + Target of the ruleset. """ - actor: AuditEntryActor + target: RepositoryRulesetTarget """ - The IP address of the actor + Identifies the date and time when the object was last updated. """ - actorIp: String + updatedAt: DateTime! +} +""" +A team or app that has the ability to bypass a rules defined on a ruleset +""" +type RepositoryRulesetBypassActor implements Node { """ - A readable representation of the actor's location + The actor that can bypass rules. """ - actorLocation: ActorLocation + actor: BypassActor """ - The username of the user who initiated the action + The mode for the bypass actor """ - actorLogin: String + bypassMode: RepositoryRulesetBypassActorBypassMode + id: ID! """ - The HTTP path for the actor. + This actor represents the ability for an organization admin to bypass """ - actorResourcePath: URI + organizationAdmin: Boolean! """ - The HTTP URL for the actor. + If the actor is a repository role, the repository role's ID that can bypass """ - actorUrl: URI + repositoryRoleDatabaseId: Int """ - The time the action was initiated + If the actor is a repository role, the repository role's name that can bypass """ - createdAt: PreciseDateTime! - id: ID! + repositoryRoleName: String """ - The corresponding operation type for the action + Identifies the ruleset associated with the allowed actor """ - operationType: OperationType + repositoryRuleset: RepositoryRuleset +} +""" +The bypass mode for a specific actor on a ruleset. +""" +enum RepositoryRulesetBypassActorBypassMode { """ - The Organization associated with the Audit Entry. + The actor can always bypass rules """ - organization: Organization + ALWAYS """ - The name of the Organization. + The actor can only bypass rules via a pull request """ - organizationName: String + PULL_REQUEST +} +""" +The connection type for RepositoryRulesetBypassActor. +""" +type RepositoryRulesetBypassActorConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [RepositoryRulesetBypassActorEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [RepositoryRulesetBypassActor] """ - The repository associated with the action + Information to aid in pagination. """ - repository: Repository + pageInfo: PageInfo! """ - The name of the repository + Identifies the total count of items in the connection. """ - repositoryName: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryRulesetBypassActorEdge { """ - The HTTP path for the repository + A cursor for use in pagination. """ - repositoryResourcePath: URI + cursor: String! """ - The HTTP URL for the repository + The item at the end of the edge. """ - repositoryUrl: URI + node: RepositoryRulesetBypassActor +} +""" +Specifies the attributes for a new or updated ruleset bypass actor. Only one of +`actor_id`, `repository_role_database_id`, or `organization_admin` should be specified. +""" +input RepositoryRulesetBypassActorInput { """ - The user affected by the action + For Team and Integration bypasses, the Team or Integration ID """ - user: User + actorId: ID """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The bypass mode for this actor. """ - userLogin: String + bypassMode: RepositoryRulesetBypassActorBypassMode! """ - The HTTP path for the user. + For org admin bupasses, true """ - userResourcePath: URI + organizationAdmin: Boolean """ - The HTTP URL for the user. + For role bypasses, the role database ID """ - userUrl: URI + repositoryRoleDatabaseId: Int } """ -Audit log entry for a repo.config.enable_sockpuppet_disallowed event. -""" -type RepoConfigEnableSockpuppetDisallowedAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { - """ - The action name - """ - action: String! - +The connection type for RepositoryRuleset. +""" +type RepositoryRulesetConnection { """ - The user who initiated the action + A list of edges. """ - actor: AuditEntryActor + edges: [RepositoryRulesetEdge] """ - The IP address of the actor + A list of nodes. """ - actorIp: String + nodes: [RepositoryRuleset] """ - A readable representation of the actor's location + Information to aid in pagination. """ - actorLocation: ActorLocation + pageInfo: PageInfo! """ - The username of the user who initiated the action + Identifies the total count of items in the connection. """ - actorLogin: String + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryRulesetEdge { """ - The HTTP path for the actor. + A cursor for use in pagination. """ - actorResourcePath: URI + cursor: String! """ - The HTTP URL for the actor. + The item at the end of the edge. """ - actorUrl: URI + node: RepositoryRuleset +} +""" +The targets supported for rulesets +""" +enum RepositoryRulesetTarget { """ - The time the action was initiated + Branch """ - createdAt: PreciseDateTime! - id: ID! + BRANCH """ - The corresponding operation type for the action + Tag """ - operationType: OperationType + TAG +} + +""" +A repository-topic connects a repository to a topic. +""" +type RepositoryTopic implements Node & UniformResourceLocatable { + id: ID! """ - The Organization associated with the Audit Entry. + The HTTP path for this repository-topic. """ - organization: Organization + resourcePath: URI! """ - The name of the Organization. + The topic. """ - organizationName: String + topic: Topic! """ - The HTTP path for the organization + The HTTP URL for this repository-topic. """ - organizationResourcePath: URI + url: URI! +} +""" +The connection type for RepositoryTopic. +""" +type RepositoryTopicConnection { """ - The HTTP URL for the organization + A list of edges. """ - organizationUrl: URI + edges: [RepositoryTopicEdge] """ - The repository associated with the action + A list of nodes. """ - repository: Repository + nodes: [RepositoryTopic] """ - The name of the repository + Information to aid in pagination. """ - repositoryName: String + pageInfo: PageInfo! """ - The HTTP path for the repository + Identifies the total count of items in the connection. """ - repositoryResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type RepositoryTopicEdge { """ - The HTTP URL for the repository + A cursor for use in pagination. """ - repositoryUrl: URI + cursor: String! """ - The user affected by the action + The item at the end of the edge. """ - user: User + node: RepositoryTopic +} +""" +The repository's visibility level. +""" +enum RepositoryVisibility { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The repository is visible only to users in the same business. """ - userLogin: String + INTERNAL """ - The HTTP path for the user. + The repository is visible only to those with explicit access. """ - userResourcePath: URI + PRIVATE """ - The HTTP URL for the user. + The repository is visible to everyone. """ - userUrl: URI + PUBLIC } """ -Audit log entry for a repo.config.lock_anonymous_git_access event. +Audit log entry for a repository_visibility_change.disable event. """ -type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVisibilityChangeDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ The action name """ @@ -29440,6 +45436,21 @@ type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & O The time the action was initiated """ createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI id: ID! """ @@ -29467,26 +45478,6 @@ type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & O """ organizationUrl: URI - """ - The repository associated with the action - """ - repository: Repository - - """ - The name of the repository - """ - repositoryName: String - - """ - The HTTP path for the repository - """ - repositoryResourcePath: URI - - """ - The HTTP URL for the repository - """ - repositoryUrl: URI - """ The user affected by the action """ @@ -29509,9 +45500,9 @@ type RepoConfigLockAnonymousGitAccessAuditEntry implements AuditEntry & Node & O } """ -Audit log entry for a repo.config.unlock_anonymous_git_access event. +Audit log entry for a repository_visibility_change.enable event. """ -type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RepositoryVisibilityChangeEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { """ The action name """ @@ -29551,6 +45542,21 @@ type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & The time the action was initiated """ createdAt: PreciseDateTime! + + """ + The HTTP path for this enterprise. + """ + enterpriseResourcePath: URI + + """ + The slug of the enterprise. + """ + enterpriseSlug: String + + """ + The HTTP URL for this enterprise. + """ + enterpriseUrl: URI id: ID! """ @@ -29579,900 +45585,910 @@ type RepoConfigUnlockAnonymousGitAccessAuditEntry implements AuditEntry & Node & organizationUrl: URI """ - The repository associated with the action + The user affected by the action """ - repository: Repository + user: User """ - The name of the repository + For actions involving two users, the actor is the initiator and the user is the affected user. """ - repositoryName: String + userLogin: String """ - The HTTP path for the repository + The HTTP path for the user. """ - repositoryResourcePath: URI + userResourcePath: URI """ - The HTTP URL for the repository + The HTTP URL for the user. """ - repositoryUrl: URI + userUrl: URI +} +""" +A Dependabot alert for a repository with a dependency affected by a security vulnerability. +""" +type RepositoryVulnerabilityAlert implements Node & RepositoryNode { """ - The user affected by the action + When was the alert auto-dismissed? """ - user: User + autoDismissedAt: DateTime """ - For actions involving two users, the actor is the initiator and the user is the affected user. + When was the alert created? """ - userLogin: String + createdAt: DateTime! """ - The HTTP path for the user. + The associated Dependabot update """ - userResourcePath: URI + dependabotUpdate: DependabotUpdate """ - The HTTP URL for the user. + The scope of an alert's dependency """ - userUrl: URI -} + dependencyScope: RepositoryVulnerabilityAlertDependencyScope -""" -Audit log entry for a repo.create event. -""" -type RepoCreateAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { """ - The action name + Comment explaining the reason the alert was dismissed """ - action: String! + dismissComment: String """ - The user who initiated the action + The reason the alert was dismissed """ - actor: AuditEntryActor + dismissReason: String """ - The IP address of the actor + When was the alert dismissed? """ - actorIp: String + dismissedAt: DateTime """ - A readable representation of the actor's location + The user who dismissed the alert """ - actorLocation: ActorLocation + dismisser: User """ - The username of the user who initiated the action + When was the alert fixed? """ - actorLogin: String + fixedAt: DateTime + id: ID! """ - The HTTP path for the actor. + Identifies the alert number. """ - actorResourcePath: URI + number: Int! """ - The HTTP URL for the actor. + The associated repository """ - actorUrl: URI + repository: Repository! """ - The time the action was initiated + The associated security advisory """ - createdAt: PreciseDateTime! + securityAdvisory: SecurityAdvisory """ - The name of the parent repository for this forked repository. + The associated security vulnerability """ - forkParentName: String + securityVulnerability: SecurityVulnerability """ - The name of the root repository for this network. + Identifies the state of the alert. """ - forkSourceName: String - id: ID! + state: RepositoryVulnerabilityAlertState! """ - The corresponding operation type for the action + The vulnerable manifest filename """ - operationType: OperationType + vulnerableManifestFilename: String! """ - The Organization associated with the Audit Entry. + The vulnerable manifest path """ - organization: Organization + vulnerableManifestPath: String! """ - The name of the Organization. + The vulnerable requirements """ - organizationName: String + vulnerableRequirements: String +} +""" +The connection type for RepositoryVulnerabilityAlert. +""" +type RepositoryVulnerabilityAlertConnection { """ - The HTTP path for the organization + A list of edges. """ - organizationResourcePath: URI + edges: [RepositoryVulnerabilityAlertEdge] """ - The HTTP URL for the organization + A list of nodes. """ - organizationUrl: URI + nodes: [RepositoryVulnerabilityAlert] """ - The repository associated with the action + Information to aid in pagination. """ - repository: Repository + pageInfo: PageInfo! """ - The name of the repository + Identifies the total count of items in the connection. """ - repositoryName: String + totalCount: Int! +} +""" +The possible scopes of an alert's dependency. +""" +enum RepositoryVulnerabilityAlertDependencyScope { """ - The HTTP path for the repository + A dependency that is only used in development """ - repositoryResourcePath: URI + DEVELOPMENT """ - The HTTP URL for the repository + A dependency that is leveraged during application runtime """ - repositoryUrl: URI + RUNTIME +} +""" +An edge in a connection. +""" +type RepositoryVulnerabilityAlertEdge { """ - The user affected by the action + A cursor for use in pagination. """ - user: User + cursor: String! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The item at the end of the edge. """ - userLogin: String + node: RepositoryVulnerabilityAlert +} + +""" +The possible states of an alert +""" +enum RepositoryVulnerabilityAlertState { + """ + An alert that has been automatically closed by Dependabot. + """ + AUTO_DISMISSED """ - The HTTP path for the user. + An alert that has been manually closed by a user. """ - userResourcePath: URI + DISMISSED """ - The HTTP URL for the user. + An alert that has been resolved by a code change. """ - userUrl: URI + FIXED """ - The visibility of the repository + An alert that is still open. """ - visibility: RepoCreateAuditEntryVisibility + OPEN } """ -The privacy of a repository +Autogenerated input type of RequestReviews """ -enum RepoCreateAuditEntryVisibility { +input RequestReviewsInput { """ - The repository is visible only to users in the same business. + A unique identifier for the client performing the mutation. """ - INTERNAL + clientMutationId: String """ - The repository is visible only to those with explicit access. + The Node ID of the pull request to modify. """ - PRIVATE + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) """ - The repository is visible to everyone. + The Node IDs of the team to request. """ - PUBLIC + teamIds: [ID!] @possibleTypes(concreteTypes: ["Team"]) + + """ + Add users to the set rather than replace. + """ + union: Boolean = false + + """ + The Node IDs of the user to request. + """ + userIds: [ID!] @possibleTypes(concreteTypes: ["User"]) } """ -Audit log entry for a repo.destroy event. +Autogenerated return type of RequestReviews """ -type RepoDestroyAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +type RequestReviewsPayload { """ - The action name + Identifies the actor who performed the event. """ - action: String! + actor: Actor """ - The user who initiated the action + A unique identifier for the client performing the mutation. """ - actor: AuditEntryActor + clientMutationId: String """ - The IP address of the actor + The pull request that is getting requests. """ - actorIp: String + pullRequest: PullRequest """ - A readable representation of the actor's location + The edge from the pull request to the requested reviewers. """ - actorLocation: ActorLocation + requestedReviewersEdge: UserEdge +} +""" +The possible states that can be requested when creating a check run. +""" +enum RequestableCheckStatusState { """ - The username of the user who initiated the action + The check suite or run has been completed. """ - actorLogin: String + COMPLETED """ - The HTTP path for the actor. + The check suite or run is in progress. """ - actorResourcePath: URI + IN_PROGRESS """ - The HTTP URL for the actor. + The check suite or run is in pending state. """ - actorUrl: URI + PENDING """ - The time the action was initiated + The check suite or run has been queued. """ - createdAt: PreciseDateTime! - id: ID! + QUEUED """ - The corresponding operation type for the action + The check suite or run is in waiting state. """ - operationType: OperationType + WAITING +} + +""" +Types that can be requested reviewers. +""" +union RequestedReviewer = Bot | Mannequin | Team | User +""" +The connection type for RequestedReviewer. +""" +type RequestedReviewerConnection { """ - The Organization associated with the Audit Entry. + A list of edges. """ - organization: Organization + edges: [RequestedReviewerEdge] """ - The name of the Organization. + A list of nodes. """ - organizationName: String + nodes: [RequestedReviewer] """ - The HTTP path for the organization + Information to aid in pagination. """ - organizationResourcePath: URI + pageInfo: PageInfo! """ - The HTTP URL for the organization + Identifies the total count of items in the connection. """ - organizationUrl: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type RequestedReviewerEdge { """ - The repository associated with the action + A cursor for use in pagination. """ - repository: Repository + cursor: String! """ - The name of the repository + The item at the end of the edge. """ - repositoryName: String + node: RequestedReviewer +} +""" +Represents a type that can be required by a pull request for merging. +""" +interface RequirableByPullRequest { """ - The HTTP path for the repository + Whether this is required to pass before merging for a specific pull request. """ - repositoryResourcePath: URI + isRequired( + """ + The id of the pull request this is required for + """ + pullRequestId: ID + + """ + The number of the pull request this is required for + """ + pullRequestNumber: Int + ): Boolean! +} +""" +Choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule. +""" +type RequiredDeploymentsParameters { """ - The HTTP URL for the repository + The environments that must be successfully deployed to before branches can be merged. """ - repositoryUrl: URI + requiredDeploymentEnvironments: [String!]! +} +""" +Choose which environments must be successfully deployed to before refs can be merged into a branch that matches this rule. +""" +input RequiredDeploymentsParametersInput { """ - The user affected by the action + The environments that must be successfully deployed to before branches can be merged. """ - user: User + requiredDeploymentEnvironments: [String!]! +} +""" +Represents a required status check for a protected branch, but not any specific run of that check. +""" +type RequiredStatusCheckDescription { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The App that must provide this status in order for it to be accepted. """ - userLogin: String + app: App """ - The HTTP path for the user. + The name of this status. """ - userResourcePath: URI + context: String! +} +""" +Specifies the attributes for a new or updated required status check. +""" +input RequiredStatusCheckInput { """ - The HTTP URL for the user. + 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. """ - userUrl: URI + appId: ID """ - The visibility of the repository + Status check context that must pass for commits to be accepted to the matching branch. """ - visibility: RepoDestroyAuditEntryVisibility + context: String! } """ -The privacy of a repository +Choose which status checks must pass before branches can be merged into a branch +that matches this rule. When enabled, commits must first be pushed to another +branch, then merged or pushed directly to a ref that matches this rule after +status checks have passed. """ -enum RepoDestroyAuditEntryVisibility { +type RequiredStatusChecksParameters { """ - The repository is visible only to users in the same business. + Status checks that are required. """ - INTERNAL + requiredStatusChecks: [StatusCheckConfiguration!]! """ - The repository is visible only to those with explicit access. + 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. """ - PRIVATE + strictRequiredStatusChecksPolicy: Boolean! +} + +""" +Choose which status checks must pass before branches can be merged into a branch +that matches this rule. When enabled, commits must first be pushed to another +branch, then merged or pushed directly to a ref that matches this rule after +status checks have passed. +""" +input RequiredStatusChecksParametersInput { + """ + Status checks that are required. + """ + requiredStatusChecks: [StatusCheckConfigurationInput!]! """ - The repository is visible to everyone. + 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. """ - PUBLIC + strictRequiredStatusChecksPolicy: Boolean! } """ -Audit log entry for a repo.remove_member event. +Autogenerated input type of RerequestCheckSuite """ -type RepoRemoveMemberAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData { +input RerequestCheckSuiteInput { """ - The action name + The Node ID of the check suite. """ - action: String! + checkSuiteId: ID! @possibleTypes(concreteTypes: ["CheckSuite"]) """ - The user who initiated the action + A unique identifier for the client performing the mutation. """ - actor: AuditEntryActor + clientMutationId: String """ - The IP address of the actor + The Node ID of the repository. """ - actorIp: String + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of RerequestCheckSuite +""" +type RerequestCheckSuitePayload { + """ + The requested check suite. + """ + checkSuite: CheckSuite """ - A readable representation of the actor's location + A unique identifier for the client performing the mutation. """ - actorLocation: ActorLocation + clientMutationId: String +} +""" +Autogenerated input type of ResolveReviewThread +""" +input ResolveReviewThreadInput { """ - The username of the user who initiated the action + A unique identifier for the client performing the mutation. """ - actorLogin: String + clientMutationId: String """ - The HTTP path for the actor. + The ID of the thread to resolve """ - actorResourcePath: URI + threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) +} +""" +Autogenerated return type of ResolveReviewThread +""" +type ResolveReviewThreadPayload { """ - The HTTP URL for the actor. + A unique identifier for the client performing the mutation. """ - actorUrl: URI + clientMutationId: String """ - The time the action was initiated + The thread to resolve. """ - createdAt: PreciseDateTime! - id: ID! + thread: PullRequestReviewThread +} +""" +Represents a private contribution a user made on GitHub. +""" +type RestrictedContribution implements Contribution { """ - The corresponding operation type for the action + 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. """ - operationType: OperationType + isRestricted: Boolean! """ - The Organization associated with the Audit Entry. + When this contribution was made. """ - organization: Organization + occurredAt: DateTime! """ - The name of the Organization. + The HTTP path for this contribution. """ - organizationName: String + resourcePath: URI! """ - The HTTP path for the organization + The HTTP URL for this contribution. """ - organizationResourcePath: URI + url: URI! """ - The HTTP URL for the organization + The user who made this contribution. """ - organizationUrl: URI + user: User! +} +""" +Autogenerated input type of RetireSponsorsTier +""" +input RetireSponsorsTierInput { """ - The repository associated with the action + A unique identifier for the client performing the mutation. """ - repository: Repository + clientMutationId: String """ - The name of the repository + The ID of the published tier to retire. """ - repositoryName: String + tierId: ID! @possibleTypes(concreteTypes: ["SponsorsTier"]) +} +""" +Autogenerated return type of RetireSponsorsTier +""" +type RetireSponsorsTierPayload { """ - The HTTP path for the repository + A unique identifier for the client performing the mutation. """ - repositoryResourcePath: URI + clientMutationId: String """ - The HTTP URL for the repository + The tier that was retired. """ - repositoryUrl: URI + sponsorsTier: SponsorsTier +} +""" +Autogenerated input type of RevertPullRequest +""" +input RevertPullRequestInput { """ - The user affected by the action + The description of the revert pull request. """ - user: User + body: String """ - For actions involving two users, the actor is the initiator and the user is the affected user. + A unique identifier for the client performing the mutation. """ - userLogin: String + clientMutationId: String """ - The HTTP path for the user. + Indicates whether the revert pull request should be a draft. """ - userResourcePath: URI + draft: Boolean = false """ - The HTTP URL for the user. + The ID of the pull request to revert. """ - userUrl: URI + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) """ - The visibility of the repository + The title of the revert pull request. """ - visibility: RepoRemoveMemberAuditEntryVisibility + title: String } """ -The privacy of a repository +Autogenerated return type of RevertPullRequest """ -enum RepoRemoveMemberAuditEntryVisibility { +type RevertPullRequestPayload { """ - The repository is visible only to users in the same business. + A unique identifier for the client performing the mutation. """ - INTERNAL + clientMutationId: String """ - The repository is visible only to those with explicit access. + The pull request that was reverted. """ - PRIVATE + pullRequest: PullRequest """ - The repository is visible to everyone. + The new pull request that reverts the input pull request. """ - PUBLIC + revertPullRequest: PullRequest } """ -Audit log entry for a repo.remove_topic event. +A user, team, or app who has the ability to dismiss a review on a protected branch. """ -type RepoRemoveTopicAuditEntry implements AuditEntry & Node & OrganizationAuditEntryData & RepositoryAuditEntryData & TopicAuditEntryData { +type ReviewDismissalAllowance implements Node { """ - The action name + The actor that can dismiss. """ - action: String! + actor: ReviewDismissalAllowanceActor """ - The user who initiated the action + Identifies the branch protection rule associated with the allowed user, team, or app. """ - actor: AuditEntryActor + branchProtectionRule: BranchProtectionRule + id: ID! +} + +""" +Types that can be an actor. +""" +union ReviewDismissalAllowanceActor = App | Team | User +""" +The connection type for ReviewDismissalAllowance. +""" +type ReviewDismissalAllowanceConnection { """ - The IP address of the actor + A list of edges. """ - actorIp: String + edges: [ReviewDismissalAllowanceEdge] """ - A readable representation of the actor's location + A list of nodes. """ - actorLocation: ActorLocation + nodes: [ReviewDismissalAllowance] """ - The username of the user who initiated the action + Information to aid in pagination. """ - actorLogin: String + pageInfo: PageInfo! """ - The HTTP path for the actor. + Identifies the total count of items in the connection. """ - actorResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type ReviewDismissalAllowanceEdge { """ - The HTTP URL for the actor. + A cursor for use in pagination. """ - actorUrl: URI + cursor: String! """ - The time the action was initiated + The item at the end of the edge. """ - createdAt: PreciseDateTime! - id: ID! + node: ReviewDismissalAllowance +} +""" +Represents a 'review_dismissed' event on a given issue or pull request. +""" +type ReviewDismissedEvent implements Node & UniformResourceLocatable { """ - The corresponding operation type for the action + Identifies the actor who performed the event. """ - operationType: OperationType + actor: Actor """ - The Organization associated with the Audit Entry. + Identifies the date and time when the object was created. """ - organization: Organization + createdAt: DateTime! """ - The name of the Organization. + Identifies the primary key from the database. """ - organizationName: String + databaseId: Int """ - The HTTP path for the organization + Identifies the optional message associated with the 'review_dismissed' event. """ - organizationResourcePath: URI + dismissalMessage: String """ - The HTTP URL for the organization + Identifies the optional message associated with the event, rendered to HTML. """ - organizationUrl: URI + dismissalMessageHTML: String + id: ID! """ - The repository associated with the action + Identifies the previous state of the review with the 'review_dismissed' event. """ - repository: Repository + previousReviewState: PullRequestReviewState! """ - The name of the repository + PullRequest referenced by event. """ - repositoryName: String + pullRequest: PullRequest! """ - The HTTP path for the repository + Identifies the commit which caused the review to become stale. """ - repositoryResourcePath: URI + pullRequestCommit: PullRequestCommit """ - The HTTP URL for the repository + The HTTP path for this review dismissed event. """ - repositoryUrl: URI + resourcePath: URI! """ - The name of the topic added to the repository + Identifies the review associated with the 'review_dismissed' event. """ - topic: Topic + review: PullRequestReview """ - The name of the topic added to the repository + The HTTP URL for this review dismissed event. """ - topicName: String + url: URI! +} +""" +A request for a user to review a pull request. +""" +type ReviewRequest implements Node { """ - The user affected by the action + Whether this request was created for a code owner """ - user: User + asCodeOwner: Boolean! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + Identifies the primary key from the database. """ - userLogin: String + databaseId: Int + id: ID! """ - The HTTP path for the user. + Identifies the pull request associated with this review request. """ - userResourcePath: URI + pullRequest: PullRequest! """ - The HTTP URL for the user. + The reviewer that is requested. """ - userUrl: URI + requestedReviewer: RequestedReviewer } """ -The reasons a piece of content can be reported or minimized. +The connection type for ReviewRequest. """ -enum ReportedContentClassifiers { +type ReviewRequestConnection { """ - An abusive or harassing piece of content + A list of edges. """ - ABUSE + edges: [ReviewRequestEdge] """ - A duplicated piece of content + A list of nodes. """ - DUPLICATE + nodes: [ReviewRequest] """ - An irrelevant piece of content + Information to aid in pagination. """ - OFF_TOPIC + pageInfo: PageInfo! """ - An outdated piece of content + Identifies the total count of items in the connection. """ - OUTDATED + totalCount: Int! +} +""" +An edge in a connection. +""" +type ReviewRequestEdge { """ - The content has been resolved + A cursor for use in pagination. """ - RESOLVED + cursor: String! """ - A spammy piece of content + The item at the end of the edge. """ - SPAM + node: ReviewRequest } """ -A repository contains the content for a project. +Represents an 'review_request_removed' event on a given pull request. """ -type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & Starrable & Subscribable & UniformResourceLocatable { - """ - A list of users that can be assigned to issues in this repository. - """ - assignableUsers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Filters users with query on user name and login - """ - query: String - ): UserConnection! - +type ReviewRequestRemovedEvent implements Node { """ - A list of branch protection rules for this repository. + Identifies the actor who performed the event. """ - branchProtectionRules( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): BranchProtectionRuleConnection! + actor: Actor """ - Returns the code of conduct for this repository + Identifies the date and time when the object was created. """ - codeOfConduct: CodeOfConduct + createdAt: DateTime! + id: ID! """ - A list of collaborators associated with the repository. + PullRequest referenced by event. """ - collaborators( - """ - Collaborators affiliation level with a repository. - """ - affiliation: CollaboratorAffiliation - - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Filters users with query on user name and login - """ - query: String - ): RepositoryCollaboratorConnection + pullRequest: PullRequest! """ - A list of commit comments associated with the repository. + Identifies the reviewer whose review request was removed. """ - 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! + requestedReviewer: RequestedReviewer +} +""" +Represents an 'review_requested' event on a given pull request. +""" +type ReviewRequestedEvent implements Node { """ - Returns a list of contact links associated to the repository + Identifies the actor who performed the event. """ - contactLinks: [RepositoryContactLink!] + actor: Actor """ Identifies the date and time when the object was created. """ createdAt: DateTime! + id: ID! """ - Identifies the primary key from the database. - """ - databaseId: Int - - """ - The Ref associated with the repository's default branch. - """ - defaultBranchRef: Ref - - """ - Whether or not branches are automatically deleted when merged in this repository. + PullRequest referenced by event. """ - deleteBranchOnMerge: Boolean! + pullRequest: PullRequest! """ - A list of dependency manifests contained in the repository + Identifies the reviewer whose review was requested. """ - dependencyGraphManifests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Cursor to paginate dependencies - """ - dependenciesAfter: String - - """ - Number of dependencies to fetch - """ - dependenciesFirst: Int - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Flag to scope to only manifests with dependencies - """ - withDependencies: Boolean - ): DependencyGraphManifestConnection @preview(toggledBy: "hawkgirl-preview") + requestedReviewer: RequestedReviewer +} +""" +A hovercard context with a message describing the current code review state of the pull +request. +""" +type ReviewStatusHovercardContext implements HovercardContext { """ - A list of deploy keys that are on this repository. + A string describing this context """ - deployKeys( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): DeployKeyConnection! + message: String! """ - Deployments associated with the repository + An octicon to accompany this context """ - deployments( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Environments to list deployments for - """ - environments: [String!] - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for deployments returned from the connection. - """ - orderBy: DeploymentOrder = {field: CREATED_AT, direction: ASC} - ): DeploymentConnection! + octicon: String! """ - The description of the repository. + The current status of the pull request with respect to code review. """ - description: String + reviewDecision: PullRequestReviewDecision +} +""" +Autogenerated input type of RevokeEnterpriseOrganizationsMigratorRole +""" +input RevokeEnterpriseOrganizationsMigratorRoleInput { """ - The description of the repository rendered to HTML. + A unique identifier for the client performing the mutation. """ - descriptionHTML: HTML! + clientMutationId: String """ - The number of kilobytes this repository occupies on disk. + The ID of the enterprise to which all organizations managed by it will be granted the migrator role. """ - diskUsage: Int + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - Returns how many forks there are of this repository in the whole network. + The login of the user to revoke the migrator role """ - forkCount: Int! + login: String! +} +""" +Autogenerated return type of RevokeEnterpriseOrganizationsMigratorRole +""" +type RevokeEnterpriseOrganizationsMigratorRolePayload { """ - A list of direct forked repositories. - """ - forks( - """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. - """ - affiliations: [RepositoryAffiliation] + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + """ + 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. """ @@ -30488,504 +46504,445 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & """ first: Int - """ - If non-null, filters repositories according to whether they have been locked - """ - isLocked: Boolean - """ Returns the last _n_ elements from the list. """ last: Int + ): OrganizationConnection +} - """ - Ordering options for repositories returned from the connection - """ - orderBy: RepositoryOrder - - """ - Array of owner's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - organization or user being viewed owns. - """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] - - """ - If non-null, filters repositories according to privacy - """ - privacy: RepositoryPrivacy - ): RepositoryConnection! - +""" +Autogenerated input type of RevokeMigratorRole +""" +input RevokeMigratorRoleInput { """ - The funding links for this repository + The user login or Team slug to revoke the migrator role from. """ - fundingLinks: [FundingLink!]! + actor: String! """ - Indicates if the repository has issues feature enabled. + Specifies the type of the actor, can be either USER or TEAM. """ - hasIssuesEnabled: Boolean! + actorType: ActorType! """ - Indicates if the repository has the Projects feature enabled. + A unique identifier for the client performing the mutation. """ - hasProjectsEnabled: Boolean! + clientMutationId: String """ - Indicates if the repository has wiki feature enabled. + The ID of the organization that the user/team belongs to. """ - hasWikiEnabled: Boolean! + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} +""" +Autogenerated return type of RevokeMigratorRole +""" +type RevokeMigratorRolePayload { """ - The repository's URL. + A unique identifier for the client performing the mutation. """ - homepageUrl: URI - id: ID! + clientMutationId: String """ - The interaction ability settings for this repository. + Did the operation succeed? """ - interactionAbility: RepositoryInteractionAbility + success: Boolean +} +""" +Possible roles a user may have in relation to an organization. +""" +enum RoleInOrganization { """ - Indicates if the repository is unmaintained. + A user who is a direct member of the organization. """ - isArchived: Boolean! + DIRECT_MEMBER """ - Returns true if blank issue creation is allowed + A user with full administrative access to the organization. """ - isBlankIssuesEnabled: Boolean! + OWNER """ - Returns whether or not this repository disabled. + A user who is unaffiliated with the organization. """ - isDisabled: Boolean! + UNAFFILIATED +} +""" +The level of enforcement for a rule or ruleset. +""" +enum RuleEnforcement { """ - Returns whether or not this repository is empty. + Rules will be enforced """ - isEmpty: Boolean! + ACTIVE """ - Identifies if the repository is a fork. + Do not evaluate or enforce rules """ - isFork: Boolean! + DISABLED """ - Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. + Allow admins to test rules before enforcing them. Admins can view insights on + the Rule Insights page (`evaluate` is only available with GitHub Enterprise). """ - isInOrganization: Boolean! + EVALUATE +} + +""" +Types which can be parameters for `RepositoryRule` objects. +""" +union RuleParameters = + BranchNamePatternParameters + | CommitAuthorEmailPatternParameters + | CommitMessagePatternParameters + | CommitterEmailPatternParameters + | PullRequestParameters + | RequiredDeploymentsParameters + | RequiredStatusChecksParameters + | TagNamePatternParameters + | UpdateParameters + | WorkflowsParameters +""" +Specifies the parameters for a `RepositoryRule` object. Only one of the fields should be specified. +""" +input RuleParametersInput { """ - Indicates if the repository has been locked or not. + Parameters used for the `branch_name_pattern` rule type """ - isLocked: Boolean! + branchNamePattern: BranchNamePatternParametersInput """ - Identifies if the repository is a mirror. + Parameters used for the `commit_author_email_pattern` rule type """ - isMirror: Boolean! + commitAuthorEmailPattern: CommitAuthorEmailPatternParametersInput """ - Identifies if the repository is private or internal. + Parameters used for the `commit_message_pattern` rule type """ - isPrivate: Boolean! + commitMessagePattern: CommitMessagePatternParametersInput """ - Returns true if this repository has a security policy + Parameters used for the `committer_email_pattern` rule type """ - isSecurityPolicyEnabled: Boolean + committerEmailPattern: CommitterEmailPatternParametersInput """ - Identifies if the repository is a template that can be used to generate new repositories. + Parameters used for the `pull_request` rule type """ - isTemplate: Boolean! + pullRequest: PullRequestParametersInput """ - Is this repository a user configuration repository? + Parameters used for the `required_deployments` rule type """ - isUserConfigurationRepository: Boolean! + requiredDeployments: RequiredDeploymentsParametersInput """ - Returns a single issue from the current repository by number. + Parameters used for the `required_status_checks` rule type """ - issue( - """ - The number for the issue to be returned. - """ - number: Int! - ): Issue + requiredStatusChecks: RequiredStatusChecksParametersInput """ - Returns a single issue-like object from the current repository by number. + Parameters used for the `tag_name_pattern` rule type """ - issueOrPullRequest( - """ - The number for the issue to be returned. - """ - number: Int! - ): IssueOrPullRequest + tagNamePattern: TagNamePatternParametersInput """ - Returns a list of issue templates associated to the repository + Parameters used for the `update` rule type """ - issueTemplates: [IssueTemplate!] + update: UpdateParametersInput """ - A list of issues that have been opened in the repository. + Parameters used for the `workflows` rule type """ - issues( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Filtering options for issues returned from the connection. - """ - filterBy: IssueFilters - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for issues returned from the connection. - """ - orderBy: IssueOrder + workflows: WorkflowsParametersInput +} - """ - A list of states to filter the issues by. - """ - states: [IssueState!] - ): IssueConnection! +""" +Types which can have `RepositoryRule` objects. +""" +union RuleSource = Organization | Repository +""" +The possible digest algorithms used to sign SAML requests for an identity provider. +""" +enum SamlDigestAlgorithm { """ - Returns a single label by name + SHA1 """ - label( - """ - Label name - """ - name: String! - ): Label + SHA1 """ - A list of labels associated with the repository. + SHA256 """ - labels( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for labels returned from the connection. - """ - orderBy: LabelOrder = {field: CREATED_AT, direction: ASC} - - """ - If provided, searches labels by name and description. - """ - query: String - ): LabelConnection + SHA256 """ - A list containing a breakdown of the language composition of the repository. + SHA384 """ - 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 + SHA384 - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + SHA512 + """ + SHA512 +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +The possible signature algorithms used to sign SAML requests for a Identity Provider. +""" +enum SamlSignatureAlgorithm { + """ + RSA-SHA1 + """ + RSA_SHA1 - """ - Order for connection - """ - orderBy: LanguageOrder - ): LanguageConnection + """ + RSA-SHA256 + """ + RSA_SHA256 """ - Get the latest release for the repository if one exists. + RSA-SHA384 """ - latestRelease: Release + RSA_SHA384 """ - The license associated with the repository + RSA-SHA512 """ - licenseInfo: License + RSA_SHA512 +} +""" +A Saved Reply is text a user can use to reply quickly. +""" +type SavedReply implements Node { """ - The reason the repository has been locked. + The body of the saved reply. """ - lockReason: RepositoryLockReason + body: String! """ - A list of Users that can be mentioned in the context of the repository. + The saved reply body rendered to HTML. """ - mentionableUsers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + bodyHTML: HTML! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Identifies the primary key from the database. + """ + databaseId: Int + id: ID! - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + The title of the saved reply. + """ + title: String! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The user that saved this reply. + """ + user: Actor +} - """ - Filters users with query on user name and login - """ - query: String - ): UserConnection! +""" +The connection type for SavedReply. +""" +type SavedReplyConnection { + """ + A list of edges. + """ + edges: [SavedReplyEdge] """ - Whether or not PRs are merged with a merge commit on this repository. + A list of nodes. """ - mergeCommitAllowed: Boolean! + nodes: [SavedReply] """ - Returns a single milestone from the current repository by number. + Information to aid in pagination. """ - milestone( - """ - The number for the milestone to be returned. - """ - number: Int! - ): Milestone + pageInfo: PageInfo! """ - A list of milestones associated with the repository. + Identifies the total count of items in the connection. """ - milestones( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + totalCount: Int! +} - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String +""" +An edge in a connection. +""" +type SavedReplyEdge { + """ + 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: SavedReply +} - """ - Returns the last _n_ elements from the list. - """ - last: Int +""" +Ordering options for saved reply connections. +""" +input SavedReplyOrder { + """ + The ordering direction. + """ + direction: OrderDirection! - """ - Ordering options for milestones. - """ - orderBy: MilestoneOrder + """ + The field to order saved replies by. + """ + field: SavedReplyOrderField! +} - """ - Filters milestones with a query on the title - """ - query: String +""" +Properties by which saved reply connections can be ordered. +""" +enum SavedReplyOrderField { + """ + Order saved reply by when they were updated. + """ + UPDATED_AT +} - """ - Filter by the state of the milestones. - """ - states: [MilestoneState!] - ): MilestoneConnection +""" +The results of a search. +""" +union SearchResultItem = App | Discussion | Issue | MarketplaceListing | Organization | PullRequest | Repository | User +""" +A list of results that matched against a search query. Regardless of the number +of matches, a maximum of 1,000 results will be available across all types, +potentially split across many pages. +""" +type SearchResultItemConnection { """ - The repository's original mirror URL. + 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. """ - mirrorUrl: URI + codeCount: Int! """ - The name of the repository. + 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. """ - name: String! + discussionCount: Int! """ - The repository's name with owner. + A list of edges. """ - nameWithOwner: String! + edges: [SearchResultItemEdge] """ - A Git object in 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. """ - object( - """ - A Git revision expression suitable for rev-parse - """ - expression: String - - """ - The Git object ID - """ - oid: GitObjectID - ): GitObject + issueCount: Int! """ - The image used to represent this repository in Open Graph data. + A list of nodes. """ - openGraphImageUrl: URI! + nodes: [SearchResultItem] """ - The User owner of the repository. + Information to aid in pagination. """ - owner: RepositoryOwner! + pageInfo: PageInfo! """ - A list of packages under the owner. + 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. """ - 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 + repositoryCount: Int! - """ - Find packages by their names. - """ - names: [String] + """ + 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. + """ + userCount: Int! - """ - Ordering of the returned packages. - """ - orderBy: PackageOrder = {field: CREATED_AT, direction: DESC} + """ + 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. + """ + wikiCount: Int! +} - """ - Filter registry package by type. - """ - packageType: PackageType +""" +An edge in a connection. +""" +type SearchResultItemEdge { + """ + A cursor for use in pagination. + """ + cursor: String! - """ - Find packages in a repository by ID. - """ - repositoryId: ID - ): PackageConnection! + """ + The item at the end of the edge. + """ + node: SearchResultItem """ - The repository parent, if this is a fork. + Text matches on the result found. """ - parent: Repository + textMatches: [TextMatch] +} +""" +Represents the individual results of a search. +""" +enum SearchType { """ - A list of pinned issues for this repository. + Returns matching discussions in repositories. """ - pinnedIssues( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + DISCUSSION - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Returns results matching issues in repositories. + """ + ISSUE - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Returns results matching repositories. + """ + REPOSITORY - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): PinnedIssueConnection + """ + Returns results matching users and organizations on GitHub. + """ + USER +} +""" +A GitHub Security Advisory +""" +type SecurityAdvisory implements Node { """ - The primary language of the repository's code. + The classification of the advisory """ - primaryLanguage: Language + classification: SecurityAdvisoryClassification! """ - Find project by number. + The CVSS associated with this advisory """ - project( - """ - The project number to find. - """ - number: Int! - ): Project + cvss: CVSS! """ - A list of projects under the owner. + CWEs associated with this Advisory """ - projects( + cwes( """ Returns the elements in the list that come after the specified cursor. """ @@ -31005,118 +46962,73 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & Returns the last _n_ elements from the list. """ last: Int - - """ - Ordering options for projects returned from the connection - """ - orderBy: ProjectOrder - - """ - Query to search projects by, currently only searching by name. - """ - search: String - - """ - A list of states to filter the projects by. - """ - states: [ProjectState!] - ): ProjectConnection! + ): CWEConnection! """ - The HTTP path listing the repository's projects + Identifies the primary key from the database. """ - projectsResourcePath: URI! + databaseId: Int """ - The HTTP URL listing the repository's projects + This is a long plaintext description of the advisory """ - projectsUrl: URI! + description: String! """ - Returns a single pull request from the current repository by number. + The GitHub Security Advisory ID """ - pullRequest( - """ - The number for the pull request to be returned. - """ - number: Int! - ): PullRequest + ghsaId: String! + id: ID! """ - A list of pull requests that have been opened in the repository. + A list of identifiers for this advisory """ - pullRequests( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - The base ref name to filter the pull requests by. - """ - baseRefName: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int + identifiers: [SecurityAdvisoryIdentifier!]! - """ - The head ref name to filter the pull requests by. - """ - headRefName: String + """ + The permalink for the advisory's dependabot alerts page + """ + notificationsPermalink: URI - """ - A list of label names to filter the pull requests by. - """ - labels: [String!] + """ + The organization that originated the advisory + """ + origin: String! - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + The permalink for the advisory + """ + permalink: URI - """ - Ordering options for pull requests returned from the connection. - """ - orderBy: IssueOrder + """ + When the advisory was published + """ + publishedAt: DateTime! - """ - A list of states to filter the pull requests by. - """ - states: [PullRequestState!] - ): PullRequestConnection! + """ + A list of references for this advisory + """ + references: [SecurityAdvisoryReference!]! """ - Identifies when the repository was last pushed to. + The severity of the advisory """ - pushedAt: DateTime + severity: SecurityAdvisorySeverity! """ - Whether or not rebase-merging is enabled on this repository. + A short plaintext summary of the advisory """ - rebaseMergeAllowed: Boolean! + summary: String! """ - Fetch a given ref from the repository + When the advisory was last updated """ - 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 + updatedAt: DateTime! """ - Fetch a list of refs from the repository + Vulnerabilities associated with this Advisory """ - refs( + vulnerabilities( """ Returns the elements in the list that come after the specified cursor. """ @@ -31128,9 +47040,14 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & before: String """ - DEPRECATED: use orderBy. The ordering direction. + A list of advisory classifications to filter vulnerabilities by. """ - direction: OrderDirection + classifications: [SecurityAdvisoryClassification!] + + """ + An ecosystem to filter vulnerabilities by. + """ + ecosystem: SecurityAdvisoryEcosystem """ Returns the first _n_ elements from the list. @@ -31143,408 +47060,336 @@ type Repository implements Node & PackageOwner & ProjectOwner & RepositoryInfo & last: Int """ - Ordering options for refs returned from the connection. + Ordering options for the returned topics. """ - orderBy: RefOrder + orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} """ - Filters refs with query on name + A package name to filter vulnerabilities by. """ - query: String + package: String """ - A ref name prefix like `refs/heads/`, `refs/tags/`, etc. + A list of severities to filter vulnerabilities by. """ - refPrefix: String! - ): RefConnection + severities: [SecurityAdvisorySeverity!] + ): SecurityVulnerabilityConnection! """ - Lookup a single release given various criteria. + When the advisory was withdrawn, if it has been withdrawn """ - release( - """ - The name of the Tag the Release was created from - """ - tagName: String! - ): Release + withdrawnAt: DateTime +} +""" +Classification of the advisory. +""" +enum SecurityAdvisoryClassification { """ - List of releases which are dependent on this repository. + Classification of general advisories. """ - releases( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Order for connection - """ - orderBy: ReleaseOrder - ): ReleaseConnection! + GENERAL """ - A list of applied repository-topic associations for this repository. + Classification of malware advisories. """ - repositoryTopics( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): RepositoryTopicConnection! + MALWARE +} +""" +The connection type for SecurityAdvisory. +""" +type SecurityAdvisoryConnection { """ - The HTTP path for this repository + A list of edges. """ - resourcePath: URI! + edges: [SecurityAdvisoryEdge] """ - The security policy URL. + A list of nodes. """ - securityPolicyUrl: URI + nodes: [SecurityAdvisory] """ - A description of the repository, rendered to HTML without any links in it. + Information to aid in pagination. """ - shortDescriptionHTML( - """ - How many characters to return. - """ - limit: Int = 200 - ): HTML! + pageInfo: PageInfo! """ - Whether or not squash-merging is enabled on this repository. + Identifies the total count of items in the connection. """ - squashMergeAllowed: Boolean! + totalCount: Int! +} +""" +The possible ecosystems of a security vulnerability's package. +""" +enum SecurityAdvisoryEcosystem { """ - The SSH URL to clone this repository + GitHub Actions """ - sshUrl: GitSSHRemote! + ACTIONS """ - Returns a count of how many stargazers there are on this object + PHP packages hosted at packagist.org """ - stargazerCount: Int! + COMPOSER """ - A list of users who have starred this starrable. + Erlang/Elixir packages hosted at hex.pm """ - 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! + ERLANG """ - Returns a list of all submodules in this repository parsed from the - .gitmodules file as of the default branch's HEAD commit. + Go modules """ - submodules( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): SubmoduleConnection! + GO """ - Temporary authentication token for cloning this repository. + Java artifacts hosted at the Maven central repository """ - tempCloneToken: String + MAVEN """ - The repository from which this repository was generated, if any. + JavaScript packages hosted at npmjs.com """ - templateRepository: Repository + NPM """ - Identifies the date and time when the object was last updated. + .NET packages hosted at the NuGet Gallery """ - updatedAt: DateTime! + NUGET """ - The HTTP URL for this repository + Python packages hosted at PyPI.org """ - url: URI! + PIP """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + Dart packages hosted at pub.dev """ - usesCustomOpenGraphImage: Boolean! + PUB """ - Indicates whether the viewer has admin permissions on this repository. + Ruby gems hosted at RubyGems.org """ - viewerCanAdminister: Boolean! + RUBYGEMS """ - Can the current viewer create new projects on this owner. + Rust crates """ - viewerCanCreateProjects: Boolean! + RUST """ - Check if the viewer is able to change their subscription status for the repository. + Swift packages """ - viewerCanSubscribe: Boolean! + SWIFT +} +""" +An edge in a connection. +""" +type SecurityAdvisoryEdge { """ - Indicates whether the viewer can update the topics of this repository. + A cursor for use in pagination. """ - viewerCanUpdateTopics: Boolean! + cursor: String! """ - The last commit email for the viewer. + The item at the end of the edge. """ - viewerDefaultCommitEmail: String + node: SecurityAdvisory +} +""" +A GitHub Security Advisory Identifier +""" +type SecurityAdvisoryIdentifier { """ - The last used merge method by the viewer or the default for the repository. + The identifier type, e.g. GHSA, CVE """ - viewerDefaultMergeMethod: PullRequestMergeMethod! + type: String! """ - Returns a boolean indicating whether the viewing user has starred this starrable. + The identifier """ - viewerHasStarred: Boolean! + value: String! +} +""" +An advisory identifier to filter results on. +""" +input SecurityAdvisoryIdentifierFilter { """ - The users permission level on the repository. Will return null if authenticated as an GitHub App. + The identifier type. """ - viewerPermission: RepositoryPermission + type: SecurityAdvisoryIdentifierType! """ - A list of emails this viewer can commit with. + The identifier string. Supports exact or partial matching. """ - viewerPossibleCommitEmails: [String!] + value: String! +} +""" +Identifier formats available for advisories. +""" +enum SecurityAdvisoryIdentifierType { """ - Identifies if the viewer is watching, not watching, or ignoring the subscribable entity. + Common Vulnerabilities and Exposures Identifier. """ - viewerSubscription: SubscriptionState + CVE """ - A list of vulnerability alerts that are on this repository. + GitHub Security Advisory ID. """ - vulnerabilityAlerts( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): RepositoryVulnerabilityAlertConnection + GHSA +} +""" +Ordering options for security advisory connections +""" +input SecurityAdvisoryOrder { """ - A list of users watching the repository. + The ordering direction. """ - watchers( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + direction: OrderDirection! - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + The field to order security advisories by. + """ + field: SecurityAdvisoryOrderField! +} - """ - Returns the first _n_ elements from the list. - """ - first: Int +""" +Properties by which security advisory connections can be ordered. +""" +enum SecurityAdvisoryOrderField { + """ + Order advisories by publication time + """ + PUBLISHED_AT - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): UserConnection! + """ + Order advisories by update time + """ + UPDATED_AT } """ -The affiliation of a user to a repository +An individual package """ -enum RepositoryAffiliation { +type SecurityAdvisoryPackage { """ - Repositories that the user has been added to as a collaborator. + The ecosystem the package belongs to, e.g. RUBYGEMS, NPM """ - COLLABORATOR + ecosystem: SecurityAdvisoryEcosystem! """ - 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. + The package name """ - ORGANIZATION_MEMBER + name: String! +} + +""" +An individual package version +""" +type SecurityAdvisoryPackageVersion { + """ + The package name or version + """ + identifier: String! +} +""" +A GitHub Security Advisory Reference +""" +type SecurityAdvisoryReference { """ - Repositories that are owned by the authenticated user. + A publicly accessible reference """ - OWNER + url: URI! } """ -Metadata for an audit entry with action repo.* +Severity of the vulnerability. """ -interface RepositoryAuditEntryData { +enum SecurityAdvisorySeverity { """ - The repository associated with the action + Critical. """ - repository: Repository + CRITICAL """ - The name of the repository + High. """ - repositoryName: String + HIGH """ - The HTTP path for the repository + Low. """ - repositoryResourcePath: URI + LOW """ - The HTTP URL for the repository + Moderate. """ - repositoryUrl: URI + MODERATE } """ -The connection type for User. +An individual vulnerability within an Advisory """ -type RepositoryCollaboratorConnection { - """ - A list of edges. - """ - edges: [RepositoryCollaboratorEdge] - +type SecurityVulnerability { """ - A list of nodes. + The Advisory associated with this Vulnerability """ - nodes: [User] + advisory: SecurityAdvisory! """ - Information to aid in pagination. + The first version containing a fix for the vulnerability """ - pageInfo: PageInfo! + firstPatchedVersion: SecurityAdvisoryPackageVersion """ - Identifies the total count of items in the connection. + A description of the vulnerable package """ - totalCount: Int! -} + package: SecurityAdvisoryPackage! -""" -Represents a user who is a collaborator of a repository. -""" -type RepositoryCollaboratorEdge { """ - A cursor for use in pagination. + The severity of the vulnerability within this package """ - cursor: String! - node: User! + severity: SecurityAdvisorySeverity! """ - The permission the user has on the repository. + When the vulnerability was last updated """ - permission: RepositoryPermission! + updatedAt: DateTime! """ - A list of sources for the user's access to the repository. + 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 """ - permissionSources: [PermissionSource!] + vulnerableVersionRange: String! } """ -A list of repositories owned by the subject. +The connection type for SecurityVulnerability. """ -type RepositoryConnection { +type SecurityVulnerabilityConnection { """ A list of edges. """ - edges: [RepositoryEdge] + edges: [SecurityVulnerabilityEdge] """ A list of nodes. """ - nodes: [Repository] + nodes: [SecurityVulnerability] """ Information to aid in pagination. @@ -31555,372 +47400,402 @@ type RepositoryConnection { Identifies the total count of items in the connection. """ totalCount: Int! +} +""" +An edge in a connection. +""" +type SecurityVulnerabilityEdge { """ - The total size in kilobytes of all repositories in the connection. + A cursor for use in pagination. """ - totalDiskUsage: Int! + cursor: String! + + """ + The item at the end of the edge. + """ + node: SecurityVulnerability } """ -A repository contact link. +Ordering options for security vulnerability connections """ -type RepositoryContactLink { +input SecurityVulnerabilityOrder { """ - The contact link purpose. + The ordering direction. """ - about: String! + direction: OrderDirection! """ - The contact link name. + The field to order security vulnerabilities by. """ - name: String! + field: SecurityVulnerabilityOrderField! +} +""" +Properties by which security vulnerability connections can be ordered. +""" +enum SecurityVulnerabilityOrderField { """ - The contact link URL. + Order vulnerability by update time """ - url: URI! + UPDATED_AT } """ -The reason a repository is listed as 'contributed'. +Autogenerated input type of SetEnterpriseIdentityProvider """ -enum RepositoryContributionType { +input SetEnterpriseIdentityProviderInput { """ - Created a commit + A unique identifier for the client performing the mutation. """ - COMMIT + clientMutationId: String """ - Created an issue + The digest algorithm used to sign SAML requests for the identity provider. """ - ISSUE + digestMethod: SamlDigestAlgorithm! """ - Created a pull request + The ID of the enterprise on which to set an identity provider. """ - PULL_REQUEST + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - Reviewed a pull request + The x509 certificate used by the identity provider to sign assertions and responses. """ - PULL_REQUEST_REVIEW + idpCertificate: String! """ - Created the repository + The Issuer Entity ID for the SAML identity provider """ - REPOSITORY -} + issuer: String -""" -An edge in a connection. -""" -type RepositoryEdge { """ - A cursor for use in pagination. + The signature algorithm used to sign SAML requests for the identity provider. """ - cursor: String! + signatureMethod: SamlSignatureAlgorithm! """ - The item at the end of the edge. + The URL endpoint for the identity provider's SAML SSO. """ - node: Repository + ssoUrl: URI! } """ -A subset of repository info. +Autogenerated return type of SetEnterpriseIdentityProvider """ -interface RepositoryInfo { - """ - Identifies the date and time when the object was created. - """ - createdAt: DateTime! - +type SetEnterpriseIdentityProviderPayload { """ - The description of the repository. + A unique identifier for the client performing the mutation. """ - description: String + clientMutationId: String """ - The description of the repository rendered to HTML. + The identity provider for the enterprise. """ - descriptionHTML: HTML! + identityProvider: EnterpriseIdentityProvider +} +""" +Autogenerated input type of SetOrganizationInteractionLimit +""" +input SetOrganizationInteractionLimitInput { """ - Returns how many forks there are of this repository in the whole network. + A unique identifier for the client performing the mutation. """ - forkCount: Int! + clientMutationId: String """ - Indicates if the repository has issues feature enabled. + When this limit should expire. """ - hasIssuesEnabled: Boolean! + expiry: RepositoryInteractionLimitExpiry """ - Indicates if the repository has the Projects feature enabled. + The limit to set. """ - hasProjectsEnabled: Boolean! + limit: RepositoryInteractionLimit! """ - Indicates if the repository has wiki feature enabled. + The ID of the organization to set a limit for. """ - hasWikiEnabled: Boolean! + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} +""" +Autogenerated return type of SetOrganizationInteractionLimit +""" +type SetOrganizationInteractionLimitPayload { """ - The repository's URL. + A unique identifier for the client performing the mutation. """ - homepageUrl: URI + clientMutationId: String """ - Indicates if the repository is unmaintained. + The organization that the interaction limit was set for. """ - isArchived: Boolean! + organization: Organization +} +""" +Autogenerated input type of SetRepositoryInteractionLimit +""" +input SetRepositoryInteractionLimitInput { """ - Identifies if the repository is a fork. + A unique identifier for the client performing the mutation. """ - isFork: Boolean! + clientMutationId: String """ - Indicates if a repository is either owned by an organization, or is a private fork of an organization repository. + When this limit should expire. """ - isInOrganization: Boolean! + expiry: RepositoryInteractionLimitExpiry """ - Indicates if the repository has been locked or not. + The limit to set. """ - isLocked: Boolean! + limit: RepositoryInteractionLimit! """ - Identifies if the repository is a mirror. + The ID of the repository to set a limit for. """ - isMirror: Boolean! + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} +""" +Autogenerated return type of SetRepositoryInteractionLimit +""" +type SetRepositoryInteractionLimitPayload { """ - Identifies if the repository is private or internal. + A unique identifier for the client performing the mutation. """ - isPrivate: Boolean! + clientMutationId: String """ - Identifies if the repository is a template that can be used to generate new repositories. + The repository that the interaction limit was set for. """ - isTemplate: Boolean! + repository: Repository +} +""" +Autogenerated input type of SetUserInteractionLimit +""" +input SetUserInteractionLimitInput { """ - The license associated with the repository + A unique identifier for the client performing the mutation. """ - licenseInfo: License + clientMutationId: String """ - The reason the repository has been locked. + When this limit should expire. """ - lockReason: RepositoryLockReason + expiry: RepositoryInteractionLimitExpiry """ - The repository's original mirror URL. + The limit to set. """ - mirrorUrl: URI + limit: RepositoryInteractionLimit! """ - The name of the repository. + The ID of the user to set a limit for. """ - name: String! + userId: ID! @possibleTypes(concreteTypes: ["User"]) +} +""" +Autogenerated return type of SetUserInteractionLimit +""" +type SetUserInteractionLimitPayload { """ - The repository's name with owner. + A unique identifier for the client performing the mutation. """ - nameWithOwner: String! + clientMutationId: String """ - The image used to represent this repository in Open Graph data. + The user that the interaction limit was set for. """ - openGraphImageUrl: URI! + user: User +} +""" +Represents an S/MIME signature on a Commit or Tag. +""" +type SmimeSignature implements GitSignature { """ - The User owner of the repository. + Email used to sign this object. """ - owner: RepositoryOwner! + email: String! """ - Identifies when the repository was last pushed to. + True if the signature is valid and verified by GitHub. """ - pushedAt: DateTime + isValid: Boolean! """ - The HTTP path for this repository + Payload for GPG signing object. Raw ODB object without the signature header. """ - resourcePath: URI! + payload: String! """ - A description of the repository, rendered to HTML without any links in it. + ASCII-armored signature header from object. """ - shortDescriptionHTML( - """ - How many characters to return. - """ - limit: Int = 200 - ): HTML! + signature: String! """ - Identifies the date and time when the object was last updated. + GitHub user corresponding to the email signing this commit. """ - updatedAt: DateTime! + signer: User """ - The HTTP URL for this repository + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. """ - url: URI! + state: GitSignatureState! """ - Whether this repository has a custom image to use with Open Graph as opposed to being represented by the owner's avatar. + True if the signature was made with GitHub's signing key. """ - usesCustomOpenGraphImage: Boolean! + wasSignedByGitHub: Boolean! } """ -Repository interaction limit that applies to this object. +Social media profile associated with a user. """ -type RepositoryInteractionAbility { +type SocialAccount { """ - The time the currently active limit expires. + Name of the social media account as it appears on the profile. """ - expiresAt: DateTime + displayName: String! """ - The current limit that is enabled on this object. + Software or company that hosts the social media account. """ - limit: RepositoryInteractionLimit! + provider: SocialAccountProvider! """ - The origin of the currently active interaction limit. + URL of the social media account. """ - origin: RepositoryInteractionLimitOrigin! + url: URI! } """ -A repository interaction limit. +The connection type for SocialAccount. """ -enum RepositoryInteractionLimit { +type SocialAccountConnection { """ - Users that are not collaborators will not be able to interact with the repository. + A list of edges. """ - COLLABORATORS_ONLY + edges: [SocialAccountEdge] """ - Users that have not previously committed to a repositorys default branch will be unable to interact with the repository. + A list of nodes. """ - CONTRIBUTORS_ONLY + nodes: [SocialAccount] """ - Users that have recently created their account will be unable to interact with the repository. + Information to aid in pagination. """ - EXISTING_USERS + pageInfo: PageInfo! """ - No interaction limits are enabled. + Identifies the total count of items in the connection. """ - NO_LIMIT + totalCount: Int! } """ -The length for a repository interaction limit to be enabled for. +An edge in a connection. """ -enum RepositoryInteractionLimitExpiry { +type SocialAccountEdge { """ - The interaction limit will expire after 1 day. - """ - ONE_DAY - - """ - The interaction limit will expire after 1 month. + A cursor for use in pagination. """ - ONE_MONTH + cursor: String! """ - The interaction limit will expire after 1 week. + The item at the end of the edge. """ - ONE_WEEK + node: SocialAccount +} +""" +Software or company that hosts social media accounts. +""" +enum SocialAccountProvider { """ - The interaction limit will expire after 6 months. + Social media and networking website. """ - SIX_MONTHS + FACEBOOK """ - The interaction limit will expire after 3 days. + Catch-all for social media providers that do not yet have specific handling. """ - THREE_DAYS -} + GENERIC -""" -Indicates where an interaction limit is configured. -""" -enum RepositoryInteractionLimitOrigin { """ - A limit that is configured at the organization level. + Fork of Mastodon with a greater focus on local posting. """ - ORGANIZATION + HOMETOWN """ - A limit that is configured at the repository level. + Social media website with a focus on photo and video sharing. """ - REPOSITORY + INSTAGRAM """ - A limit that is configured at the user-wide level. + Professional networking website. """ - USER -} + LINKEDIN -""" -An invitation for a user to be added to a repository. -""" -type RepositoryInvitation implements Node { """ - The email address that received the invitation. + Open-source federated microblogging service. """ - email: String - id: ID! + MASTODON """ - The user who received the invitation. + JavaScript package registry. """ - invitee: User + NPM """ - The user who created the invitation. + Social news aggregation and discussion website. """ - inviter: User! + REDDIT """ - The permalink for this repository invitation. + Live-streaming service. """ - permalink: URI! + TWITCH """ - The permission granted on this repository by this invitation. + Microblogging website. """ - permission: RepositoryPermission! + TWITTER """ - The Repository the user is invited to. + Online video platform. """ - repository: RepositoryInfo + YOUTUBE } """ -The connection type for RepositoryInvitation. +Entities that can sponsor others via GitHub Sponsors """ -type RepositoryInvitationConnection { +union Sponsor = Organization | User + +""" +The connection type for Sponsor. +""" +type SponsorConnection { """ A list of edges. """ - edges: [RepositoryInvitationEdge] + edges: [SponsorEdge] """ A list of nodes. """ - nodes: [RepositoryInvitation] + nodes: [Sponsor] """ Information to aid in pagination. @@ -31934,9 +47809,9 @@ type RepositoryInvitationConnection { } """ -An edge in a connection. +Represents a user or organization who is sponsoring someone in GitHub Sponsors. """ -type RepositoryInvitationEdge { +type SponsorEdge { """ A cursor for use in pagination. """ @@ -31945,149 +47820,269 @@ type RepositoryInvitationEdge { """ The item at the end of the edge. """ - node: RepositoryInvitation + node: Sponsor } """ -Ordering options for repository invitation connections. +Ordering options for connections to get sponsor entities for GitHub Sponsors. """ -input RepositoryInvitationOrder { +input SponsorOrder { """ The ordering direction. """ direction: OrderDirection! """ - The field to order repository invitations by. + The field to order sponsor entities by. """ - field: RepositoryInvitationOrderField! + field: SponsorOrderField! } """ -Properties by which repository invitation connections can be ordered. +Properties by which sponsor connections can be ordered. """ -enum RepositoryInvitationOrderField { +enum SponsorOrderField { """ - Order repository invitations by creation time + Order sponsorable entities by login (username). """ - CREATED_AT + LOGIN """ - Order repository invitations by invitee login + Order sponsors by their relevance to the viewer. """ - INVITEE_LOGIN @deprecated(reason: "`INVITEE_LOGIN` is no longer a valid field value. Repository invitations can now be associated with an email, not only an invitee. Removal on 2020-10-01 UTC.") + RELEVANCE } """ -The possible reasons a given repository could be in a locked state. +Entities that can sponsor or be sponsored through GitHub Sponsors. """ -enum RepositoryLockReason { +interface Sponsorable { """ - The repository is locked due to a billing related reason. + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). """ - BILLING + estimatedNextSponsorsPayoutInCents: Int! """ - The repository is locked due to a migration. + True if this user/organization has a GitHub Sponsors listing. """ - MIGRATING + hasSponsorsListing: Boolean! """ - The repository is locked due to a move. + Whether the given account is sponsoring this user/organization. """ - MOVING + isSponsoredBy( + """ + The target account's login. + """ + accountLogin: String! + ): Boolean! """ - The repository is locked due to a rename. + True if the viewer is sponsored by this user/organization. """ - RENAME -} + isSponsoringViewer: Boolean! -""" -Represents a object that belongs to a repository. -""" -interface RepositoryNode { """ - The repository associated with this node. + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). """ - repository: Repository! -} + monthlyEstimatedSponsorsIncomeInCents: Int! -""" -Ordering options for repository connections -""" -input RepositoryOrder { """ - The ordering direction. + List of users and organizations this entity is sponsoring. """ - direction: OrderDirection! + sponsoring( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the 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! """ - The field to order repositories by. + List of sponsors for this user or organization. """ - field: RepositoryOrderField! -} + sponsors( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for sponsors returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + + """ + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. + """ + tierId: ID + ): SponsorConnection! -""" -Properties by which repository connections can be ordered. -""" -enum RepositoryOrderField { """ - Order repositories by creation time + Events involving this sponsorable, such as new sponsorships. """ - CREATED_AT + sponsorsActivities( + """ + Filter activities to only the specified actions. + """ + actions: [SponsorsActivityAction!] = [] + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Whether to include those events where this sponsorable acted as the sponsor. + Defaults to only including events where this sponsorable was the recipient + of a sponsorship. + """ + includeAsSponsor: Boolean = false + + """ + Whether or not to include private activities in the result set. Defaults to including public and private activities. + """ + includePrivate: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for activity returned from the connection. + """ + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} + + """ + Filter activities returned to only those that occurred in the most recent + specified time period. Set to ALL to avoid filtering by when the activity + occurred. Will be ignored if `since` or `until` is given. + """ + period: SponsorsActivityPeriod = MONTH + + """ + Filter activities to those that occurred on or after this time. + """ + since: DateTime + + """ + Filter activities to those that occurred before this time. + """ + until: DateTime + ): SponsorsActivityConnection! """ - Order repositories by name + The GitHub Sponsors listing for this user or organization. """ - NAME + sponsorsListing: SponsorsListing """ - Order repositories by push time + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. """ - PUSHED_AT + sponsorshipForViewerAsSponsor( + """ + Whether to return the sponsorship only if it's still active. Pass false to + get the viewer's sponsorship back even if it has been cancelled. + """ + activeOnly: Boolean = true + ): Sponsorship """ - Order repositories by number of stargazers + The sponsorship from this user/organization to the viewer; that is, the sponsorship you're receiving. """ - STARGAZERS + 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 """ - Order repositories by update time + List of sponsorship updates sent from this sponsorable to sponsors. """ - UPDATED_AT -} + sponsorshipNewsletters( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: 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. + Returns the elements in the list that come before the specified cursor. """ - size: Int - ): URI! - id: ID! + before: String - """ - The username used to login. - """ - login: String! + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for sponsorship updates returned from the connection. + """ + orderBy: SponsorshipNewsletterOrder = {field: CREATED_AT, direction: DESC} + ): SponsorshipNewsletterConnection! """ - A list of repositories that the user owns. + The sponsorships where this user or organization is the maintainer receiving the funds. """ - repositories( + sponsorshipsAsMaintainer( """ - Array of viewer's affiliation options for repositories returned from the - connection. For example, OWNER will include only repositories that the - current viewer owns. + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. """ - affiliations: [RepositoryAffiliation] + activeOnly: Boolean = true """ Returns the elements in the list that come after the specified cursor. @@ -32105,14 +48100,9 @@ interface RepositoryOwner { first: Int """ - If non-null, filters repositories according to whether they are forks of another repository - """ - isFork: Boolean - - """ - If non-null, filters repositories according to whether they have been locked + Whether or not to include private sponsorships in the result set """ - isLocked: Boolean + includePrivate: Boolean = false """ Returns the last _n_ elements from the list. @@ -32120,125 +48110,106 @@ interface RepositoryOwner { last: Int """ - Ordering options for repositories returned from the connection + Ordering options for sponsorships returned from this connection. If left + blank, the sponsorships will be ordered based on relevancy to the viewer. """ - orderBy: RepositoryOrder + orderBy: SponsorshipOrder + ): SponsorshipConnection! + """ + The sponsorships where this user or organization is the funder. + """ + sponsorshipsAsSponsor( """ - 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. + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. """ - ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + activeOnly: Boolean = true """ - If non-null, filters repositories according to privacy + Returns the elements in the list that come after the specified cursor. """ - privacy: RepositoryPrivacy - ): RepositoryConnection! + after: String - """ - Find Repository. - """ - repository( """ - Name of Repository to find. + Returns the elements in the list that come before the specified cursor. """ - name: String! - ): Repository + before: String - """ - The HTTP URL for the owner. - """ - resourcePath: URI! + """ + Returns the first _n_ elements from the list. + """ + first: Int - """ - The HTTP URL for the owner. - """ - url: URI! -} + """ + Returns the last _n_ elements from the list. + """ + last: Int -""" -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 + """ + 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!] - """ - Can read, clone, and push to this repository. They can also manage issues, pull requests, and some repository settings - """ - MAINTAIN + """ + 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! """ - Can read and clone this repository. Can also open and comment on issues and pull requests + 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. """ - READ + totalSponsorshipAmountAsSponsorInCents( + """ + Filter payments to those that occurred on or after this time. + """ + since: DateTime - """ - Can read and clone this repository. Can also manage issues and pull requests - """ - TRIAGE + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] - """ - Can read, clone, and push to this repository. Can also manage issues and pull requests - """ - WRITE -} + """ + Filter payments to those that occurred before this time. + """ + until: DateTime + ): Int -""" -The privacy of a repository -""" -enum RepositoryPrivacy { """ - Private + Whether or not the viewer is able to sponsor this user/organization. """ - PRIVATE + viewerCanSponsor: Boolean! """ - Public + True if the viewer is sponsoring this user/organization. """ - PUBLIC + viewerIsSponsoring: Boolean! } """ -A repository-topic connects a repository to a topic. +Entities that can be sponsored via GitHub Sponsors """ -type RepositoryTopic implements Node & UniformResourceLocatable { - id: ID! - - """ - The HTTP path for this repository-topic. - """ - resourcePath: URI! - - """ - The topic. - """ - topic: Topic! - - """ - The HTTP URL for this repository-topic. - """ - url: URI! -} +union SponsorableItem = Organization | User """ -The connection type for RepositoryTopic. +The connection type for SponsorableItem. """ -type RepositoryTopicConnection { +type SponsorableItemConnection { """ A list of edges. """ - edges: [RepositoryTopicEdge] + edges: [SponsorableItemEdge] """ A list of nodes. """ - nodes: [RepositoryTopic] + nodes: [SponsorableItem] """ Information to aid in pagination. @@ -32254,7 +48225,7 @@ type RepositoryTopicConnection { """ An edge in a connection. """ -type RepositoryTopicEdge { +type SponsorableItemEdge { """ A cursor for use in pagination. """ @@ -32263,1899 +48234,1438 @@ type RepositoryTopicEdge { """ The item at the end of the edge. """ - node: RepositoryTopic + node: SponsorableItem } """ -The repository's visibility level. +Ordering options for connections to get sponsorable entities for GitHub Sponsors. """ -enum RepositoryVisibility { - """ - The repository is visible only to users in the same business. - """ - INTERNAL - +input SponsorableOrder { """ - The repository is visible only to those with explicit access. + The ordering direction. """ - PRIVATE + direction: OrderDirection! """ - The repository is visible to everyone. + The field to order sponsorable entities by. """ - PUBLIC + field: SponsorableOrderField! } """ -Audit log entry for a repository_visibility_change.disable event. +Properties by which sponsorable connections can be ordered. """ -type RepositoryVisibilityChangeDisableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - - """ - The user who initiated the action - """ - actor: AuditEntryActor - - """ - The IP address of the actor - """ - actorIp: String - - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation - - """ - The username of the user who initiated the action - """ - actorLogin: String - - """ - The HTTP path for the actor. - """ - actorResourcePath: URI - - """ - The HTTP URL for the actor. - """ - actorUrl: URI - - """ - The time the action was initiated - """ - createdAt: PreciseDateTime! - +enum SponsorableOrderField { """ - The HTTP path for this enterprise. + Order sponsorable entities by login (username). """ - enterpriseResourcePath: URI + LOGIN +} +""" +An event related to sponsorship activity. +""" +type SponsorsActivity implements Node { """ - The slug of the enterprise. + What action this activity indicates took place. """ - enterpriseSlug: String + action: SponsorsActivityAction! """ - The HTTP URL for this enterprise. + The sponsor's current privacy level. """ - enterpriseUrl: URI + currentPrivacyLevel: SponsorshipPrivacy 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 + The tier that the sponsorship used to use, for tier change events. """ - organizationResourcePath: URI + previousSponsorsTier: SponsorsTier """ - The HTTP URL for the organization + The user or organization who triggered this activity and was/is sponsoring the sponsorable. """ - organizationUrl: URI + sponsor: Sponsor """ - The user affected by the action + The user or organization that is being sponsored, the maintainer. """ - user: User + sponsorable: Sponsorable! """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The associated sponsorship tier. """ - userLogin: String + sponsorsTier: SponsorsTier """ - The HTTP path for the user. + The timestamp of this event. """ - userResourcePath: URI + timestamp: DateTime """ - The HTTP URL for the user. + Was this sponsorship made alongside other sponsorships at the same time from the same sponsor? """ - userUrl: URI + viaBulkSponsorship: Boolean! } """ -Audit log entry for a repository_visibility_change.enable event. +The possible actions that GitHub Sponsors activities can represent. """ -type RepositoryVisibilityChangeEnableAuditEntry implements AuditEntry & EnterpriseAuditEntryData & Node & OrganizationAuditEntryData { - """ - The action name - """ - action: String! - - """ - The user who initiated the action - """ - actor: AuditEntryActor - - """ - The IP address of the actor - """ - actorIp: String - - """ - A readable representation of the actor's location - """ - actorLocation: ActorLocation - - """ - The username of the user who initiated the action - """ - actorLogin: String - +enum SponsorsActivityAction { """ - The HTTP path for the actor. + The activity was cancelling a sponsorship. """ - actorResourcePath: URI + CANCELLED_SPONSORSHIP """ - The HTTP URL for the actor. + The activity was starting a sponsorship. """ - actorUrl: URI + NEW_SPONSORSHIP """ - The time the action was initiated + The activity was scheduling a downgrade or cancellation. """ - createdAt: PreciseDateTime! + PENDING_CHANGE """ - The HTTP path for this enterprise. + The activity was funds being refunded to the sponsor or GitHub. """ - enterpriseResourcePath: URI + REFUND """ - The slug of the enterprise. + The activity was disabling matching for a previously matched sponsorship. """ - enterpriseSlug: String + SPONSOR_MATCH_DISABLED """ - The HTTP URL for this enterprise. + The activity was changing the sponsorship tier, either directly by the sponsor or by a scheduled/pending change. """ - enterpriseUrl: URI - id: ID! + TIER_CHANGE +} +""" +The connection type for SponsorsActivity. +""" +type SponsorsActivityConnection { """ - The corresponding operation type for the action + A list of edges. """ - operationType: OperationType + edges: [SponsorsActivityEdge] """ - The Organization associated with the Audit Entry. + A list of nodes. """ - organization: Organization + nodes: [SponsorsActivity] """ - The name of the Organization. + Information to aid in pagination. """ - organizationName: String + pageInfo: PageInfo! """ - The HTTP path for the organization + Identifies the total count of items in the connection. """ - organizationResourcePath: URI + totalCount: Int! +} +""" +An edge in a connection. +""" +type SponsorsActivityEdge { """ - The HTTP URL for the organization + A cursor for use in pagination. """ - organizationUrl: URI + cursor: String! """ - The user affected by the action + The item at the end of the edge. """ - user: User + node: SponsorsActivity +} +""" +Ordering options for GitHub Sponsors activity connections. +""" +input SponsorsActivityOrder { """ - For actions involving two users, the actor is the initiator and the user is the affected user. + The ordering direction. """ - userLogin: String + direction: OrderDirection! """ - The HTTP path for the user. + The field to order activity by. """ - userResourcePath: URI + field: SponsorsActivityOrderField! +} +""" +Properties by which GitHub Sponsors activity connections can be ordered. +""" +enum SponsorsActivityOrderField { """ - The HTTP URL for the user. + Order activities by when they happened. """ - userUrl: URI + TIMESTAMP } """ -A alert for a repository with an affected vulnerability. +The possible time periods for which Sponsors activities can be requested. """ -type RepositoryVulnerabilityAlert implements Node & RepositoryNode { +enum SponsorsActivityPeriod { """ - When was the alert created? + Don't restrict the activity to any date range, include all activity. """ - createdAt: DateTime! + ALL """ - The reason the alert was dismissed + The previous calendar day. """ - dismissReason: String + DAY """ - When was the alert dismissed? + The previous thirty days. """ - dismissedAt: DateTime + MONTH """ - The user who dismissed the alert + The previous seven days. """ - dismisser: User - id: ID! + WEEK +} +""" +Represents countries or regions for billing and residence for a GitHub Sponsors profile. +""" +enum SponsorsCountryOrRegionCode { """ - The associated repository + Andorra """ - repository: Repository! + AD """ - The associated security advisory + United Arab Emirates """ - securityAdvisory: SecurityAdvisory + AE """ - The associated security vulnerability + Afghanistan """ - securityVulnerability: SecurityVulnerability + AF """ - The vulnerable manifest filename + Antigua and Barbuda """ - vulnerableManifestFilename: String! + AG """ - The vulnerable manifest path + Anguilla """ - vulnerableManifestPath: String! + AI """ - The vulnerable requirements + Albania """ - vulnerableRequirements: String -} + AL -""" -The connection type for RepositoryVulnerabilityAlert. -""" -type RepositoryVulnerabilityAlertConnection { """ - A list of edges. + Armenia """ - edges: [RepositoryVulnerabilityAlertEdge] + AM """ - A list of nodes. + Angola """ - nodes: [RepositoryVulnerabilityAlert] + AO """ - Information to aid in pagination. + Antarctica """ - pageInfo: PageInfo! + AQ """ - Identifies the total count of items in the connection. + Argentina """ - totalCount: Int! -} + AR -""" -An edge in a connection. -""" -type RepositoryVulnerabilityAlertEdge { """ - A cursor for use in pagination. + American Samoa """ - cursor: String! + AS """ - The item at the end of the edge. + Austria """ - node: RepositoryVulnerabilityAlert -} + AT -""" -Autogenerated input type of RequestReviews -""" -input RequestReviewsInput { """ - A unique identifier for the client performing the mutation. + Australia """ - clientMutationId: String + AU """ - The Node ID of the pull request to modify. + Aruba """ - pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + AW """ - The Node IDs of the team to request. + Åland """ - teamIds: [ID!] @possibleTypes(concreteTypes: ["Team"]) + AX """ - Add users to the set rather than replace. + Azerbaijan """ - union: Boolean + AZ """ - The Node IDs of the user to request. + Bosnia and Herzegovina """ - userIds: [ID!] @possibleTypes(concreteTypes: ["User"]) -} + BA -""" -Autogenerated return type of RequestReviews -""" -type RequestReviewsPayload { """ - Identifies the actor who performed the event. + Barbados """ - actor: Actor + BB """ - A unique identifier for the client performing the mutation. + Bangladesh """ - clientMutationId: String + BD """ - The pull request that is getting requests. + Belgium """ - pullRequest: PullRequest + BE """ - The edge from the pull request to the requested reviewers. + Burkina Faso """ - requestedReviewersEdge: UserEdge -} + BF -""" -The possible states that can be requested when creating a check run. -""" -enum RequestableCheckStatusState { """ - The check suite or run has been completed. + Bulgaria """ - COMPLETED + BG """ - The check suite or run is in progress. + Bahrain """ - IN_PROGRESS + BH """ - The check suite or run has been queued. + Burundi """ - QUEUED + BI """ - The check suite or run is in waiting state. + Benin """ - WAITING -} - -""" -Types that can be requested reviewers. -""" -union RequestedReviewer = Mannequin | Team | User + BJ -""" -Represents a type that can be required by a pull request for merging. -""" -interface RequirableByPullRequest { """ - Whether this is required to pass before merging for a specific pull request. + Saint Barthélemy """ - isRequired( - """ - The id of the pull request this is required for - """ - pullRequestId: ID + BL - """ - The number of the pull request this is required for - """ - pullRequestNumber: Int - ): Boolean! -} - -""" -Autogenerated input type of RerequestCheckSuite -""" -input RerequestCheckSuiteInput { """ - The Node ID of the check suite. + Bermuda """ - checkSuiteId: ID! @possibleTypes(concreteTypes: ["CheckSuite"]) + BM """ - A unique identifier for the client performing the mutation. + Brunei Darussalam """ - clientMutationId: String + BN """ - The Node ID of the repository. + Bolivia """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) -} + BO -""" -Autogenerated return type of RerequestCheckSuite -""" -type RerequestCheckSuitePayload { """ - The requested check suite. + Bonaire, Sint Eustatius and Saba """ - checkSuite: CheckSuite + BQ """ - A unique identifier for the client performing the mutation. + Brazil """ - clientMutationId: String -} + BR -""" -Autogenerated input type of ResolveReviewThread -""" -input ResolveReviewThreadInput { """ - A unique identifier for the client performing the mutation. + Bahamas """ - clientMutationId: String + BS """ - The ID of the thread to resolve + Bhutan """ - threadId: ID! @possibleTypes(concreteTypes: ["PullRequestReviewThread"]) -} + BT -""" -Autogenerated return type of ResolveReviewThread -""" -type ResolveReviewThreadPayload { """ - A unique identifier for the client performing the mutation. + Bouvet Island """ - clientMutationId: String + BV """ - The thread to resolve. + Botswana """ - thread: PullRequestReviewThread -} + BW -""" -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. + Belarus """ - isRestricted: Boolean! + BY """ - When this contribution was made. + Belize """ - occurredAt: DateTime! + BZ """ - The HTTP path for this contribution. + Canada """ - resourcePath: URI! + CA """ - The HTTP URL for this contribution. + Cocos (Keeling) Islands """ - url: URI! + CC """ - The user who made this contribution. + Congo (Kinshasa) """ - user: User! -} + CD -""" -A team or user who has the ability to dismiss a review on a protected branch. -""" -type ReviewDismissalAllowance implements Node { """ - The actor that can dismiss. + Central African Republic """ - actor: ReviewDismissalAllowanceActor + CF """ - Identifies the branch protection rule associated with the allowed user or team. + Congo (Brazzaville) """ - branchProtectionRule: BranchProtectionRule - id: ID! -} + CG -""" -Types that can be an actor. -""" -union ReviewDismissalAllowanceActor = Team | User + """ + Switzerland + """ + CH -""" -The connection type for ReviewDismissalAllowance. -""" -type ReviewDismissalAllowanceConnection { """ - A list of edges. + Côte d'Ivoire """ - edges: [ReviewDismissalAllowanceEdge] + CI """ - A list of nodes. + Cook Islands """ - nodes: [ReviewDismissalAllowance] + CK """ - Information to aid in pagination. + Chile """ - pageInfo: PageInfo! + CL """ - Identifies the total count of items in the connection. + Cameroon """ - totalCount: Int! -} + CM -""" -An edge in a connection. -""" -type ReviewDismissalAllowanceEdge { """ - A cursor for use in pagination. + China """ - cursor: String! + CN """ - The item at the end of the edge. + Colombia """ - node: ReviewDismissalAllowance -} + CO -""" -Represents a 'review_dismissed' event on a given issue or pull request. -""" -type ReviewDismissedEvent implements Node & UniformResourceLocatable { """ - Identifies the actor who performed the event. + Costa Rica """ - actor: Actor + CR """ - Identifies the date and time when the object was created. + Cape Verde """ - createdAt: DateTime! + CV """ - Identifies the primary key from the database. + Curaçao """ - databaseId: Int + CW """ - Identifies the optional message associated with the 'review_dismissed' event. + Christmas Island """ - dismissalMessage: String + CX """ - Identifies the optional message associated with the event, rendered to HTML. + Cyprus """ - dismissalMessageHTML: String - id: ID! + CY """ - Identifies the previous state of the review with the 'review_dismissed' event. + Czech Republic """ - previousReviewState: PullRequestReviewState! + CZ """ - PullRequest referenced by event. + Germany """ - pullRequest: PullRequest! + DE """ - Identifies the commit which caused the review to become stale. + Djibouti """ - pullRequestCommit: PullRequestCommit + DJ """ - The HTTP path for this review dismissed event. + Denmark """ - resourcePath: URI! + DK """ - Identifies the review associated with the 'review_dismissed' event. + Dominica """ - review: PullRequestReview + DM """ - The HTTP URL for this review dismissed event. + Dominican Republic """ - url: URI! -} + DO -""" -A request for a user to review a pull request. -""" -type ReviewRequest implements Node { """ - Whether this request was created for a code owner + Algeria """ - asCodeOwner: Boolean! + DZ """ - Identifies the primary key from the database. + Ecuador """ - databaseId: Int - id: ID! + EC """ - Identifies the pull request associated with this review request. + Estonia """ - pullRequest: PullRequest! + EE """ - The reviewer that is requested. + Egypt """ - requestedReviewer: RequestedReviewer -} + EG -""" -The connection type for ReviewRequest. -""" -type ReviewRequestConnection { """ - A list of edges. + Western Sahara """ - edges: [ReviewRequestEdge] + EH """ - A list of nodes. + Eritrea """ - nodes: [ReviewRequest] + ER """ - Information to aid in pagination. + Spain """ - pageInfo: PageInfo! + ES """ - Identifies the total count of items in the connection. + Ethiopia """ - totalCount: Int! -} + ET -""" -An edge in a connection. -""" -type ReviewRequestEdge { """ - A cursor for use in pagination. + Finland """ - cursor: String! + FI """ - The item at the end of the edge. + Fiji """ - node: ReviewRequest -} + FJ -""" -Represents an 'review_request_removed' event on a given pull request. -""" -type ReviewRequestRemovedEvent implements Node { """ - Identifies the actor who performed the event. + Falkland Islands """ - actor: Actor + FK """ - Identifies the date and time when the object was created. + Micronesia """ - createdAt: DateTime! - id: ID! + FM """ - PullRequest referenced by event. + Faroe Islands """ - pullRequest: PullRequest! + FO """ - Identifies the reviewer whose review request was removed. + France """ - requestedReviewer: RequestedReviewer -} + FR -""" -Represents an 'review_requested' event on a given pull request. -""" -type ReviewRequestedEvent implements Node { """ - Identifies the actor who performed the event. + Gabon """ - actor: Actor + GA """ - Identifies the date and time when the object was created. + United Kingdom """ - createdAt: DateTime! - id: ID! + GB """ - PullRequest referenced by event. + Grenada """ - pullRequest: PullRequest! + GD """ - Identifies the reviewer whose review was requested. + Georgia """ - requestedReviewer: RequestedReviewer -} + GE -""" -A hovercard context with a message describing the current code review state of the pull -request. -""" -type ReviewStatusHovercardContext implements HovercardContext { """ - A string describing this context + French Guiana """ - message: String! + GF """ - An octicon to accompany this context + Guernsey """ - octicon: String! + GG """ - The current status of the pull request with respect to code review. + Ghana """ - reviewDecision: PullRequestReviewDecision -} + GH -""" -The possible digest algorithms used to sign SAML requests for an identity provider. -""" -enum SamlDigestAlgorithm { """ - SHA1 + Gibraltar """ - SHA1 + GI """ - SHA256 + Greenland """ - SHA256 + GL """ - SHA384 + Gambia """ - SHA384 + GM """ - SHA512 + Guinea """ - SHA512 -} + GN -""" -The possible signature algorithms used to sign SAML requests for a Identity Provider. -""" -enum SamlSignatureAlgorithm { """ - RSA-SHA1 + Guadeloupe """ - RSA_SHA1 + GP """ - RSA-SHA256 + Equatorial Guinea """ - RSA_SHA256 + GQ """ - RSA-SHA384 + Greece """ - RSA_SHA384 + GR """ - RSA-SHA512 + South Georgia and South Sandwich Islands """ - RSA_SHA512 -} + GS -""" -A Saved Reply is text a user can use to reply quickly. -""" -type SavedReply implements Node { """ - The body of the saved reply. + Guatemala """ - body: String! + GT """ - The saved reply body rendered to HTML. + Guam """ - bodyHTML: HTML! + GU """ - Identifies the primary key from the database. + Guinea-Bissau """ - databaseId: Int - id: ID! + GW """ - The title of the saved reply. + Guyana """ - title: String! + GY """ - The user that saved this reply. + Hong Kong """ - user: Actor -} + HK -""" -The connection type for SavedReply. -""" -type SavedReplyConnection { """ - A list of edges. + Heard and McDonald Islands """ - edges: [SavedReplyEdge] + HM """ - A list of nodes. + Honduras """ - nodes: [SavedReply] + HN """ - Information to aid in pagination. + Croatia """ - pageInfo: PageInfo! + HR """ - Identifies the total count of items in the connection. + Haiti """ - totalCount: Int! -} + HT -""" -An edge in a connection. -""" -type SavedReplyEdge { """ - A cursor for use in pagination. + Hungary """ - cursor: String! + HU """ - The item at the end of the edge. + Indonesia """ - node: SavedReply -} + ID -""" -Ordering options for saved reply connections. -""" -input SavedReplyOrder { """ - The ordering direction. + Ireland """ - direction: OrderDirection! + IE """ - The field to order saved replies by. + Israel """ - field: SavedReplyOrderField! -} + IL -""" -Properties by which saved reply connections can be ordered. -""" -enum SavedReplyOrderField { """ - Order saved reply by when they were updated. + Isle of Man """ - UPDATED_AT -} + IM -""" -The results of a search. -""" -union SearchResultItem = App | Issue | MarketplaceListing | Organization | PullRequest | Repository | User + """ + India + """ + IN -""" -A list of results that matched against a search query. -""" -type SearchResultItemConnection { """ - The number of pieces of code that matched the search query. + British Indian Ocean Territory """ - codeCount: Int! + IO """ - A list of edges. + Iraq """ - edges: [SearchResultItemEdge] + IQ """ - The number of issues that matched the search query. + Iran """ - issueCount: Int! + IR """ - A list of nodes. + Iceland """ - nodes: [SearchResultItem] + IS """ - Information to aid in pagination. + Italy """ - pageInfo: PageInfo! + IT """ - The number of repositories that matched the search query. + Jersey """ - repositoryCount: Int! + JE """ - The number of users that matched the search query. + Jamaica """ - userCount: Int! + JM """ - The number of wiki pages that matched the search query. + Jordan """ - wikiCount: Int! -} + JO -""" -An edge in a connection. -""" -type SearchResultItemEdge { """ - A cursor for use in pagination. + Japan """ - cursor: String! + JP """ - The item at the end of the edge. + Kenya """ - node: SearchResultItem + KE """ - Text matches on the result found. + Kyrgyzstan """ - textMatches: [TextMatch] -} + KG -""" -Represents the individual results of a search. -""" -enum SearchType { """ - Returns results matching issues in repositories. + Cambodia """ - ISSUE + KH """ - Returns results matching repositories. + Kiribati """ - REPOSITORY + KI """ - Returns results matching users and organizations on GitHub. + Comoros """ - USER -} + KM -""" -A GitHub Security Advisory -""" -type SecurityAdvisory implements Node { """ - The CVSS associated with this advisory + Saint Kitts and Nevis """ - cvss: CVSS! + KN """ - CWEs associated with this Advisory + Korea, South """ - cwes( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + KR - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Kuwait + """ + KW - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Cayman Islands + """ + KY - """ - Returns the last _n_ elements from the list. - """ - last: Int - ): CWEConnection! + """ + Kazakhstan + """ + KZ """ - Identifies the primary key from the database. + Laos """ - databaseId: Int + LA """ - This is a long plaintext description of the advisory + Lebanon """ - description: String! + LB """ - The GitHub Security Advisory ID + Saint Lucia """ - ghsaId: String! - id: ID! + LC """ - A list of identifiers for this advisory + Liechtenstein """ - identifiers: [SecurityAdvisoryIdentifier!]! + LI """ - The permalink for the advisory's dependabot alerts page + Sri Lanka """ - notificationsPermalink: URI + LK """ - The organization that originated the advisory + Liberia """ - origin: String! + LR """ - The permalink for the advisory + Lesotho """ - permalink: URI + LS """ - When the advisory was published + Lithuania """ - publishedAt: DateTime! + LT """ - A list of references for this advisory + Luxembourg """ - references: [SecurityAdvisoryReference!]! + LU """ - The severity of the advisory + Latvia """ - severity: SecurityAdvisorySeverity! + LV """ - A short plaintext summary of the advisory + Libya """ - summary: String! + LY """ - When the advisory was last updated + Morocco """ - updatedAt: DateTime! + MA """ - Vulnerabilities associated with this Advisory + Monaco """ - vulnerabilities( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + MC - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Moldova + """ + MD - """ - An ecosystem to filter vulnerabilities by. - """ - ecosystem: SecurityAdvisoryEcosystem + """ + Montenegro + """ + ME - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Saint Martin (French part) + """ + MF - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Madagascar + """ + MG - """ - Ordering options for the returned topics. - """ - orderBy: SecurityVulnerabilityOrder = {field: UPDATED_AT, direction: DESC} + """ + Marshall Islands + """ + MH - """ - A package name to filter vulnerabilities by. - """ - package: String + """ + Macedonia + """ + MK - """ - A list of severities to filter vulnerabilities by. - """ - severities: [SecurityAdvisorySeverity!] - ): SecurityVulnerabilityConnection! + """ + Mali + """ + ML """ - When the advisory was withdrawn, if it has been withdrawn + Myanmar """ - withdrawnAt: DateTime -} + MM -""" -The connection type for SecurityAdvisory. -""" -type SecurityAdvisoryConnection { """ - A list of edges. + Mongolia """ - edges: [SecurityAdvisoryEdge] + MN """ - A list of nodes. + Macau """ - nodes: [SecurityAdvisory] + MO """ - Information to aid in pagination. + Northern Mariana Islands """ - pageInfo: PageInfo! + MP """ - Identifies the total count of items in the connection. + Martinique """ - totalCount: Int! -} + MQ -""" -The possible ecosystems of a security vulnerability's package. -""" -enum SecurityAdvisoryEcosystem { """ - PHP packages hosted at packagist.org + Mauritania """ - COMPOSER + MR """ - Java artifacts hosted at the Maven central repository + Montserrat """ - MAVEN + MS """ - JavaScript packages hosted at npmjs.com + Malta """ - NPM + MT """ - .NET packages hosted at the NuGet Gallery + Mauritius """ - NUGET + MU """ - Python packages hosted at PyPI.org + Maldives """ - PIP + MV """ - Ruby gems hosted at RubyGems.org + Malawi """ - RUBYGEMS -} + MW -""" -An edge in a connection. -""" -type SecurityAdvisoryEdge { """ - A cursor for use in pagination. + Mexico """ - cursor: String! + MX """ - The item at the end of the edge. + Malaysia """ - node: SecurityAdvisory -} + MY -""" -A GitHub Security Advisory Identifier -""" -type SecurityAdvisoryIdentifier { """ - The identifier type, e.g. GHSA, CVE + Mozambique """ - type: String! + MZ """ - The identifier + Namibia """ - value: String! -} + NA -""" -An advisory identifier to filter results on. -""" -input SecurityAdvisoryIdentifierFilter { """ - The identifier type. + New Caledonia """ - type: SecurityAdvisoryIdentifierType! + NC """ - The identifier string. Supports exact or partial matching. + Niger """ - value: String! -} + NE -""" -Identifier formats available for advisories. -""" -enum SecurityAdvisoryIdentifierType { """ - Common Vulnerabilities and Exposures Identifier. + Norfolk Island """ - CVE + NF """ - GitHub Security Advisory ID. + Nigeria """ - GHSA -} + NG -""" -Ordering options for security advisory connections -""" -input SecurityAdvisoryOrder { """ - The ordering direction. + Nicaragua """ - direction: OrderDirection! + NI """ - The field to order security advisories by. + Netherlands """ - field: SecurityAdvisoryOrderField! -} + NL -""" -Properties by which security advisory connections can be ordered. -""" -enum SecurityAdvisoryOrderField { """ - Order advisories by publication time + Norway """ - PUBLISHED_AT + NO """ - Order advisories by update time + Nepal """ - UPDATED_AT -} + NP -""" -An individual package -""" -type SecurityAdvisoryPackage { """ - The ecosystem the package belongs to, e.g. RUBYGEMS, NPM + Nauru """ - ecosystem: SecurityAdvisoryEcosystem! + NR """ - The package name + Niue """ - name: String! -} + NU -""" -An individual package version -""" -type SecurityAdvisoryPackageVersion { """ - The package name or version + New Zealand """ - identifier: String! -} + NZ -""" -A GitHub Security Advisory Reference -""" -type SecurityAdvisoryReference { """ - A publicly accessible reference + Oman """ - url: URI! -} + OM -""" -Severity of the vulnerability. -""" -enum SecurityAdvisorySeverity { """ - Critical. + Panama """ - CRITICAL + PA """ - High. + Peru """ - HIGH + PE """ - Low. + French Polynesia """ - LOW + PF """ - Moderate. + Papua New Guinea """ - MODERATE -} + PG -""" -An individual vulnerability within an Advisory -""" -type SecurityVulnerability { """ - The Advisory associated with this Vulnerability + Philippines """ - advisory: SecurityAdvisory! + PH """ - The first version containing a fix for the vulnerability + Pakistan """ - firstPatchedVersion: SecurityAdvisoryPackageVersion + PK """ - A description of the vulnerable package + Poland """ - package: SecurityAdvisoryPackage! + PL """ - The severity of the vulnerability within this package + Saint Pierre and Miquelon """ - severity: SecurityAdvisorySeverity! + PM """ - When the vulnerability was last updated + Pitcairn """ - updatedAt: DateTime! + PN """ - 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 + Puerto Rico """ - vulnerableVersionRange: String! -} + PR -""" -The connection type for SecurityVulnerability. -""" -type SecurityVulnerabilityConnection { """ - A list of edges. + Palestine """ - edges: [SecurityVulnerabilityEdge] + PS """ - A list of nodes. + Portugal """ - nodes: [SecurityVulnerability] + PT """ - Information to aid in pagination. + Palau """ - pageInfo: PageInfo! + PW """ - Identifies the total count of items in the connection. + Paraguay """ - totalCount: Int! -} + PY -""" -An edge in a connection. -""" -type SecurityVulnerabilityEdge { """ - A cursor for use in pagination. + Qatar """ - cursor: String! + QA """ - The item at the end of the edge. + Reunion """ - node: SecurityVulnerability -} + RE -""" -Ordering options for security vulnerability connections -""" -input SecurityVulnerabilityOrder { """ - The ordering direction. + Romania """ - direction: OrderDirection! + RO """ - The field to order security vulnerabilities by. + Serbia """ - field: SecurityVulnerabilityOrderField! -} + RS -""" -Properties by which security vulnerability connections can be ordered. -""" -enum SecurityVulnerabilityOrderField { """ - Order vulnerability by update time + Russian Federation """ - UPDATED_AT -} + RU -""" -Autogenerated input type of SetEnterpriseIdentityProvider -""" -input SetEnterpriseIdentityProviderInput { """ - A unique identifier for the client performing the mutation. + Rwanda """ - clientMutationId: String + RW """ - The digest algorithm used to sign SAML requests for the identity provider. + Saudi Arabia """ - digestMethod: SamlDigestAlgorithm! + SA """ - The ID of the enterprise on which to set an identity provider. + Solomon Islands """ - enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + SB """ - The x509 certificate used by the identity provider to sign assertions and responses. + Seychelles """ - idpCertificate: String! + SC """ - The Issuer Entity ID for the SAML identity provider + Sudan """ - issuer: String + SD """ - The signature algorithm used to sign SAML requests for the identity provider. + Sweden """ - signatureMethod: SamlSignatureAlgorithm! + SE """ - The URL endpoint for the identity provider's SAML SSO. + Singapore """ - ssoUrl: URI! -} + SG -""" -Autogenerated return type of SetEnterpriseIdentityProvider -""" -type SetEnterpriseIdentityProviderPayload { """ - A unique identifier for the client performing the mutation. + Saint Helena """ - clientMutationId: String + SH """ - The identity provider for the enterprise. + Slovenia """ - identityProvider: EnterpriseIdentityProvider -} + SI -""" -Autogenerated input type of SetOrganizationInteractionLimit -""" -input SetOrganizationInteractionLimitInput { """ - A unique identifier for the client performing the mutation. + Svalbard and Jan Mayen Islands """ - clientMutationId: String + SJ """ - When this limit should expire. + Slovakia """ - expiry: RepositoryInteractionLimitExpiry + SK """ - The limit to set. + Sierra Leone """ - limit: RepositoryInteractionLimit! + SL """ - The ID of the organization to set a limit for. + San Marino """ - organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) -} + SM -""" -Autogenerated return type of SetOrganizationInteractionLimit -""" -type SetOrganizationInteractionLimitPayload { """ - A unique identifier for the client performing the mutation. + Senegal """ - clientMutationId: String + SN """ - The organization that the interaction limit was set for. + Somalia """ - organization: Organization -} + SO -""" -Autogenerated input type of SetRepositoryInteractionLimit -""" -input SetRepositoryInteractionLimitInput { """ - A unique identifier for the client performing the mutation. + Suriname """ - clientMutationId: String + SR """ - When this limit should expire. + South Sudan """ - expiry: RepositoryInteractionLimitExpiry + SS """ - The limit to set. + Sao Tome and Principe """ - limit: RepositoryInteractionLimit! + ST """ - The ID of the repository to set a limit for. + El Salvador """ - repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) -} + SV -""" -Autogenerated return type of SetRepositoryInteractionLimit -""" -type SetRepositoryInteractionLimitPayload { """ - A unique identifier for the client performing the mutation. + Sint Maarten (Dutch part) """ - clientMutationId: String + SX """ - The repository that the interaction limit was set for. + Swaziland """ - repository: Repository -} + SZ -""" -Autogenerated input type of SetUserInteractionLimit -""" -input SetUserInteractionLimitInput { """ - A unique identifier for the client performing the mutation. + Turks and Caicos Islands """ - clientMutationId: String + TC """ - When this limit should expire. + Chad """ - expiry: RepositoryInteractionLimitExpiry + TD """ - The limit to set. + French Southern Lands """ - limit: RepositoryInteractionLimit! + TF """ - The ID of the user to set a limit for. + Togo """ - userId: ID! @possibleTypes(concreteTypes: ["User"]) -} + TG -""" -Autogenerated return type of SetUserInteractionLimit -""" -type SetUserInteractionLimitPayload { """ - A unique identifier for the client performing the mutation. + Thailand """ - clientMutationId: String + TH """ - The user that the interaction limit was set for. + Tajikistan """ - user: User -} + TJ -""" -Represents an S/MIME signature on a Commit or Tag. -""" -type SmimeSignature implements GitSignature { """ - Email used to sign this object. + Tokelau """ - email: String! + TK """ - True if the signature is valid and verified by GitHub. + Timor-Leste """ - isValid: Boolean! + TL """ - Payload for GPG signing object. Raw ODB object without the signature header. + Turkmenistan """ - payload: String! + TM """ - ASCII-armored signature header from object. + Tunisia """ - signature: String! + TN """ - GitHub user corresponding to the email signing this commit. + Tonga """ - signer: User + TO """ - The state of this signature. `VALID` if signature is valid and verified by - GitHub, otherwise represents reason why signature is considered invalid. + Türkiye """ - state: GitSignatureState! + TR """ - True if the signature was made with GitHub's signing key. + Trinidad and Tobago """ - wasSignedByGitHub: Boolean! -} - -""" -Entities that can sponsor others via GitHub Sponsors -""" -union Sponsor = Organization | User + TT -""" -Entities that can be sponsored through GitHub Sponsors -""" -interface Sponsorable { """ - True if this user/organization has a GitHub Sponsors listing. + Tuvalu """ - hasSponsorsListing: Boolean! + TV """ - Check if the given account is sponsoring this user/organization. + Taiwan """ - isSponsoredBy( - """ - The target account's login. - """ - accountLogin: String! - ): Boolean! + TW """ - True if the viewer is sponsored by this user/organization. + Tanzania """ - isSponsoringViewer: Boolean! + TZ """ - The GitHub Sponsors listing for this user or organization. + Ukraine """ - sponsorsListing: SponsorsListing + UA """ - The viewer's sponsorship of this entity. + Uganda """ - sponsorshipForViewerAsSponsor: Sponsorship + UG """ - This object's sponsorships as the maintainer. + United States Minor Outlying Islands """ - sponsorshipsAsMaintainer( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String - - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String - - """ - Returns the first _n_ elements from the list. - """ - first: Int - - """ - Whether or not to include private sponsorships in the result set - """ - includePrivate: Boolean = false - - """ - Returns the last _n_ elements from the list. - """ - last: Int - - """ - Ordering options for sponsorships returned from this connection. If left - blank, the sponsorships will be ordered based on relevancy to the viewer. - """ - orderBy: SponsorshipOrder - ): SponsorshipConnection! + UM """ - This object's sponsorships as the sponsor. + United States of America """ - sponsorshipsAsSponsor( - """ - Returns the elements in the list that come after the specified cursor. - """ - after: String + US - """ - Returns the elements in the list that come before the specified cursor. - """ - before: String + """ + Uruguay + """ + UY - """ - Returns the first _n_ elements from the list. - """ - first: Int + """ + Uzbekistan + """ + UZ - """ - Returns the last _n_ elements from the list. - """ - last: Int + """ + Vatican City + """ + VA - """ - 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! + """ + Saint Vincent and the Grenadines + """ + VC """ - Whether or not the viewer is able to sponsor this user/organization. + Venezuela """ - viewerCanSponsor: Boolean! + VE """ - True if the viewer is sponsoring this user/organization. + Virgin Islands, British """ - viewerIsSponsoring: Boolean! -} + VG -""" -Entities that can be sponsored via GitHub Sponsors -""" -union SponsorableItem = Organization | User + """ + Virgin Islands, U.S. + """ + VI -""" -The connection type for SponsorableItem. -""" -type SponsorableItemConnection { """ - A list of edges. + Vietnam """ - edges: [SponsorableItemEdge] + VN """ - A list of nodes. + Vanuatu """ - nodes: [SponsorableItem] + VU """ - Information to aid in pagination. + Wallis and Futuna Islands """ - pageInfo: PageInfo! + WF """ - Identifies the total count of items in the connection. + Samoa """ - totalCount: Int! -} + WS -""" -An edge in a connection. -""" -type SponsorableItemEdge { """ - A cursor for use in pagination. + Yemen """ - cursor: String! + YE """ - The item at the end of the edge. + Mayotte """ - node: SponsorableItem -} + YT -""" -Ordering options for connections to get sponsorable entities for GitHub Sponsors. -""" -input SponsorableOrder { """ - The ordering direction. + South Africa """ - direction: OrderDirection! + ZA """ - The field to order sponsorable entities by. + Zambia """ - field: SponsorableOrderField! -} + ZM -""" -Properties by which sponsorable connections can be ordered. -""" -enum SponsorableOrderField { """ - Order sponsorable entities by login (username). + Zimbabwe """ - LOGIN + ZW } """ @@ -34178,7 +49688,7 @@ type SponsorsGoal { percentComplete: Int! """ - What the goal amount is. Represents a dollar amount for monthly sponsorship + 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! @@ -34194,7 +49704,7 @@ The different kinds of goals a GitHub Sponsors member can have. """ enum SponsorsGoalKind { """ - The goal is about getting a certain dollar amount from sponsorships each month. + The goal is about getting a certain amount in USD from sponsorships each month. """ MONTHLY_SPONSORSHIP_AMOUNT @@ -34213,11 +49723,58 @@ type SponsorsListing implements Node { """ 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. """ @@ -34229,11 +49786,33 @@ type SponsorsListing implements Node { fullDescriptionHTML: HTML! id: ID! + """ + Whether this listing is publicly visible. + """ + isPublic: Boolean! + """ The listing's full name. """ name: String! + """ + A future date on which this listing is eligible to receive a payout. + """ + nextPayoutDate: Date + + """ + The name of the country or region where the maintainer resides. Will only + return a value when queried by the maintainer themselves, or by an admin of + the sponsorable organization. + """ + residenceCountryOrRegion: String + + """ + The HTTP path for this Sponsors listing. + """ + resourcePath: URI! + """ The short description of the listing. """ @@ -34245,7 +49824,12 @@ type SponsorsListing implements Node { slug: String! """ - The published tiers for this GitHub Sponsors listing. + The entity this listing represents who can be sponsored on GitHub Sponsors. + """ + sponsorable: Sponsorable! + + """ + The tiers for this GitHub Sponsors profile. """ tiers( """ @@ -34263,6 +49847,15 @@ type SponsorsListing implements Node { """ first: Int + """ + Whether to include tiers that aren't published. Only admins of the Sponsors + listing can see draft tiers. Only admins of the Sponsors listing and viewers + who are currently sponsoring on a retired tier can see those retired tiers. + Defaults to including only published tiers, which are visible to anyone who + can see the GitHub Sponsors profile. + """ + includeUnpublished: Boolean = false + """ Returns the last _n_ elements from the list. """ @@ -34273,6 +49866,70 @@ type SponsorsListing implements Node { """ orderBy: SponsorsTierOrder = {field: MONTHLY_PRICE_IN_CENTS, direction: ASC} ): SponsorsTierConnection + + """ + The HTTP URL for this Sponsors listing. + """ + url: URI! +} + +""" +A record that can be featured on a GitHub Sponsors profile. +""" +union SponsorsListingFeatureableItem = Repository | User + +""" +A record that is promoted on a GitHub Sponsors profile. +""" +type SponsorsListingFeaturedItem implements Node { + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Will either be a description from the sponsorable maintainer about why they + featured this item, or the item's description itself, such as a user's bio + from their GitHub profile page. + """ + description: String + + """ + The record that is featured on the GitHub Sponsors profile. + """ + featureable: SponsorsListingFeatureableItem! + id: ID! + + """ + The position of this featured item on the GitHub Sponsors profile with a lower + position indicating higher precedence. Starts at 1. + """ + position: Int! + + """ + The GitHub Sponsors profile that features this record. + """ + sponsorsListing: SponsorsListing! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The different kinds of records that can be featured on a GitHub Sponsors profile page. +""" +enum SponsorsListingFeaturedItemFeatureableType { + """ + A repository owned by the user or organization with the GitHub Sponsors profile. + """ + REPOSITORY + + """ + A user who belongs to the organization with the GitHub Sponsors profile. + """ + USER } """ @@ -34286,8 +49943,8 @@ type SponsorsTier implements Node { """ Get a different tier for this tier's maintainer that is at the same frequency - as this tier but with a lesser cost. Returns the published tier with the - monthly price closest to this tier's without going over. + 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 @@ -34324,7 +49981,7 @@ type SponsorsTier implements Node { monthlyPriceInCents: Int! """ - How much this tier costs per month in dollars. + How much this tier costs per month in USD. """ monthlyPriceInDollars: Int! @@ -34349,7 +50006,32 @@ SponsorsTier information only visible to users that can administer the associate """ type SponsorsTierAdminInfo { """ - The sponsorships associated with this tier. + Indicates whether this tier is still a work in progress by the sponsorable and + not yet published to the associated GitHub Sponsors profile. Draft tiers + cannot be used for new sponsorships and will not be in use on existing + sponsorships. Draft tiers cannot be seen by anyone but the admins of the + GitHub Sponsors profile. + """ + isDraft: Boolean! + + """ + Indicates whether this tier is published to the associated GitHub Sponsors + profile. Published tiers are visible to anyone who can see the GitHub Sponsors + profile, and are available for use in sponsorships if the GitHub Sponsors + profile is publicly visible. + """ + isPublished: Boolean! + + """ + Indicates whether this tier has been retired from the associated GitHub + Sponsors profile. Retired tiers are no longer shown on the GitHub Sponsors + profile and cannot be chosen for new sponsorships. Existing sponsorships may + still use retired tiers if the sponsor selected the tier before it was retired. + """ + isRetired: Boolean! + + """ + The sponsorships using this tier. """ sponsorships( """ @@ -34368,7 +50050,8 @@ type SponsorsTierAdminInfo { first: Int """ - Whether or not to include private sponsorships in the result set + Whether or not to return private sponsorships using this tier. Defaults to + only returning public sponsorships on this tier. """ includePrivate: Boolean = false @@ -34465,15 +50148,30 @@ type Sponsorship implements Node { createdAt: DateTime! id: ID! + """ + Whether the sponsorship is active. False implies the sponsor is a past sponsor + of the maintainer, while true implies they are a current sponsor. + """ + isActive: Boolean! + """ Whether this sponsorship represents a one-time payment versus a recurring sponsorship. """ isOneTimePayment: Boolean! + """ + Whether the sponsor has chosen to receive sponsorship update emails sent from + the sponsorable. Only returns a non-null value when the viewer has permission to know this. + """ + isSponsorOptedIntoEmail: Boolean + """ The entity that is being sponsored """ - maintainer: User! @deprecated(reason: "`Sponsorship.maintainer` will be removed. Use `Sponsorship.sponsorable` instead. Removal on 2020-04-01 UTC.") + maintainer: User! + @deprecated( + reason: "`Sponsorship.maintainer` will be removed. Use `Sponsorship.sponsorable` instead. Removal on 2020-04-01 UTC." + ) """ The privacy level for this sponsorship. @@ -34483,7 +50181,10 @@ type Sponsorship implements Node { """ The user that is sponsoring. Returns null if the sponsorship is private or if sponsor is not a user. """ - sponsor: User @deprecated(reason: "`Sponsorship.sponsor` will be removed. Use `Sponsorship.sponsorEntity` instead. Removal on 2020-10-01 UTC.") + sponsor: User + @deprecated( + reason: "`Sponsorship.sponsor` will be removed. Use `Sponsorship.sponsorEntity` instead. Removal on 2020-10-01 UTC." + ) """ The user or organization that is sponsoring, if you have permission to view them. @@ -34529,6 +50230,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! } """ @@ -34546,6 +50259,112 @@ type SponsorshipEdge { node: Sponsorship } +""" +An update sent to sponsors of a user or organization on GitHub Sponsors. +""" +type SponsorshipNewsletter implements Node { + """ + The author of the newsletter. + """ + author: User + + """ + The contents of the newsletter, the message the sponsorable wanted to give. + """ + body: String! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + id: ID! + + """ + Indicates if the newsletter has been made available to sponsors. + """ + isPublished: Boolean! + + """ + The user or organization this newsletter is from. + """ + sponsorable: Sponsorable! + + """ + The subject of the newsletter, what it's about. + """ + subject: String! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! +} + +""" +The connection type for SponsorshipNewsletter. +""" +type SponsorshipNewsletterConnection { + """ + A list of edges. + """ + edges: [SponsorshipNewsletterEdge] + + """ + A list of nodes. + """ + nodes: [SponsorshipNewsletter] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type SponsorshipNewsletterEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: SponsorshipNewsletter +} + +""" +Ordering options for sponsorship newsletter connections. +""" +input SponsorshipNewsletterOrder { + """ + The ordering direction. + """ + direction: OrderDirection! + + """ + The field to order sponsorship newsletters by. + """ + field: SponsorshipNewsletterOrderField! +} + +""" +Properties by which sponsorship update connections can be ordered. +""" +enum SponsorshipNewsletterOrderField { + """ + Order sponsorship newsletters by when they were created. + """ + CREATED_AT +} + """ Ordering options for sponsorship connections. """ @@ -34586,6 +50405,87 @@ enum SponsorshipPrivacy { PUBLIC } +""" +The possible default commit messages for squash merges. +""" +enum SquashMergeCommitMessage { + """ + Default to a blank commit message. + """ + BLANK + + """ + Default to the branch's commit messages. + """ + COMMIT_MESSAGES + + """ + Default to the pull request's body. + """ + PR_BODY +} + +""" +The possible default commit titles for squash merges. +""" +enum SquashMergeCommitTitle { + """ + Default to the commit's title (if only one commit) or the pull request's title (when more than one commit). + """ + COMMIT_OR_PR_TITLE + + """ + Default to the pull request's title. + """ + PR_TITLE +} + +""" +Represents an SSH signature on a Commit or Tag. +""" +type SshSignature implements GitSignature { + """ + Email used to sign this object. + """ + email: String! + + """ + True if the signature is valid and verified by GitHub. + """ + isValid: Boolean! + + """ + Hex-encoded fingerprint of the key that signed this object. + """ + keyFingerprint: String + + """ + Payload for GPG signing object. Raw ODB object without the signature header. + """ + payload: String! + + """ + ASCII-armored signature header from object. + """ + signature: String! + + """ + GitHub user corresponding to the email signing this commit. + """ + signer: User + + """ + The state of this signature. `VALID` if signature is valid and verified by + GitHub, otherwise represents reason why signature is considered invalid. + """ + state: GitSignatureState! + + """ + True if the signature was made with GitHub's signing key. + """ + wasSignedByGitHub: Boolean! +} + """ Ways in which star connections can be ordered. """ @@ -34745,6 +50645,136 @@ type StarredRepositoryEdge { starredAt: DateTime! } +""" +Autogenerated input type of StartOrganizationMigration +""" +input StartOrganizationMigrationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The migration source access token. + """ + sourceAccessToken: String! + + """ + The URL of the organization to migrate. + """ + sourceOrgUrl: URI! + + """ + The ID of the enterprise the target organization belongs to. + """ + targetEnterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The name of the target organization. + """ + targetOrgName: String! +} + +""" +Autogenerated return type of StartOrganizationMigration +""" +type StartOrganizationMigrationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new organization migration. + """ + orgMigration: OrganizationMigration +} + +""" +Autogenerated input type of StartRepositoryMigration +""" +input StartRepositoryMigrationInput { + """ + The migration source access token. + """ + accessToken: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Whether to continue the migration on error. Defaults to `true`. + """ + continueOnError: Boolean + + """ + The signed URL to access the user-uploaded git archive. + """ + gitArchiveUrl: String + + """ + The GitHub personal access token of the user importing to the target repository. + """ + githubPat: String + + """ + Whether to lock the source repository. + """ + lockSource: Boolean + + """ + The signed URL to access the user-uploaded metadata archive. + """ + metadataArchiveUrl: String + + """ + The ID of the organization that will own the imported repository. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The name of the imported repository. + """ + repositoryName: String! + + """ + Whether to skip migrating releases for the repository. + """ + skipReleases: Boolean + + """ + The ID of the migration source. + """ + sourceId: ID! @possibleTypes(concreteTypes: ["MigrationSource"]) + + """ + The URL of the source repository. + """ + sourceRepositoryUrl: URI + + """ + The visibility of the imported repository. + """ + targetRepoVisibility: String +} + +""" +Autogenerated return type of StartRepositoryMigration +""" +type StartRepositoryMigrationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The new repository migration. + """ + repositoryMigration: RepositoryMigration +} + """ Represents a commit status. """ @@ -34801,6 +50831,36 @@ type Status implements Node { state: StatusState! } +""" +Required status check +""" +type StatusCheckConfiguration { + """ + The status check context name that must be present on the commit. + """ + context: String! + + """ + The optional integration ID that this status check must originate from. + """ + integrationId: Int +} + +""" +Required status check +""" +input StatusCheckConfigurationInput { + """ + The status check context name that must be present on the commit. + """ + context: String! + + """ + The optional integration ID that this status check must originate from. + """ + integrationId: Int +} + """ Represents the rollup for both the check runs and status for a commit. """ @@ -34851,6 +50911,16 @@ union StatusCheckRollupContext = CheckRun | StatusContext The connection type for StatusCheckRollupContext. """ type StatusCheckRollupContextConnection { + """ + The number of check runs in this rollup. + """ + checkRunCount: Int! + + """ + Counts of check runs by state. + """ + checkRunCountsByState: [CheckRunStateCount!] + """ A list of edges. """ @@ -34866,6 +50936,16 @@ type StatusCheckRollupContextConnection { """ pageInfo: PageInfo! + """ + The number of status contexts in this rollup. + """ + statusContextCount: Int! + + """ + Counts of status contexts by state. + """ + statusContextCountsByState: [StatusContextStateCount!] + """ Identifies the total count of items in the connection. """ @@ -34953,6 +51033,21 @@ type StatusContext implements Node & RequirableByPullRequest { 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. """ @@ -34983,6 +51078,46 @@ enum StatusState { SUCCESS } +""" +A Stripe Connect account for receiving sponsorship funds from GitHub Sponsors. +""" +type StripeConnectAccount { + """ + The account number used to identify this Stripe Connect account. + """ + accountId: String! + + """ + The name of the country or region of an external account, such as a bank + account, tied to the Stripe Connect account. Will only return a value when + queried by the maintainer of the associated GitHub Sponsors profile + themselves, or by an admin of the sponsorable organization. + """ + billingCountryOrRegion: String + + """ + The name of the country or region of the Stripe Connect account. Will only + return a value when queried by the maintainer of the associated GitHub + Sponsors profile themselves, or by an admin of the sponsorable organization. + """ + countryOrRegion: String + + """ + Whether this Stripe Connect account is currently in use for the associated GitHub Sponsors profile. + """ + isActive: Boolean! + + """ + The GitHub Sponsors profile associated with this Stripe Connect account. + """ + sponsorsListing: SponsorsListing! + + """ + The URL to access this Stripe Connect account on Stripe's website. + """ + stripeDashboardUrl: URI! +} + """ Autogenerated input type of SubmitPullRequestReview """ @@ -35047,11 +51182,21 @@ type Submodule { """ name: String! + """ + The name of the submodule in .gitmodules (Base64-encoded) + """ + nameRaw: Base64String! + """ The path in the superproject that this submodule is located in """ path: String! + """ + The path in the superproject that this submodule is located in (Base64-encoded) + """ + pathRaw: Base64String! + """ The commit revision of the subproject repository being tracked by the submodule """ @@ -35115,6 +51260,23 @@ interface Subscribable { viewerSubscription: SubscriptionState } +""" +Entities that can be subscribed to for web and email notifications. +""" +interface SubscribableThread { + id: ID! + + """ + Identifies the viewer's thread subscription form action. + """ + viewerThreadSubscriptionFormAction: ThreadSubscriptionFormAction + + """ + Identifies the viewer's thread subscription status. + """ + viewerThreadSubscriptionStatus: ThreadSubscriptionState +} + """ Represents a 'subscribed' event on a given `Subscribable`. """ @@ -35227,6 +51389,56 @@ type Tag implements GitObject & Node { target: GitObject! } +""" +Parameters to be used for the tag_name_pattern rule +""" +type TagNamePatternParameters { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean! + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + +""" +Parameters to be used for the tag_name_pattern rule +""" +input TagNamePatternParametersInput { + """ + How this rule will appear to users. + """ + name: String + + """ + If true, the rule will fail if the pattern matches. + """ + negate: Boolean + + """ + The operator to use for matching. + """ + operator: String! + + """ + The pattern to match with. + """ + pattern: String! +} + """ A team of users in an organization. """ @@ -35517,6 +51729,11 @@ type Team implements MemberStatusable & Node & Subscribable { """ newTeamUrl: URI! + """ + The notification setting that the team has set. + """ + notificationSetting: TeamNotificationSetting! + """ The organization that owns this team. """ @@ -35532,6 +51749,56 @@ type Team implements MemberStatusable & Node & Subscribable { """ privacy: TeamPrivacy! + """ + Finds and returns the project according to the provided project number. + """ + projectV2( + """ + The Project number. + """ + number: Int! + ): ProjectV2 + + """ + List of projects this team has collaborator access to. + """ + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Filtering options for projects returned from this connection + """ + filterBy: ProjectV2Filters = {} + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + The query to search projects by. + """ + query: String = "" + ): ProjectV2Connection! + """ A list of repositories this team has access to. """ @@ -35562,7 +51829,7 @@ type Team implements MemberStatusable & Node & Subscribable { orderBy: TeamRepositoryOrder """ - The search string to look for. + The search string to look for. Repositories will be returned where the name contains your search string. """ query: String ): TeamRepositoryConnection! @@ -36114,6 +52381,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Author's association with the discussion's team. """ authorAssociation: CommentAuthorAssociation! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The body as Markdown. @@ -36134,6 +52404,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Identifies the discussion body hash. """ bodyVersion: String! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ A list of comments on this discussion. @@ -36169,16 +52442,25 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib """ orderBy: TeamDiscussionCommentOrder ): TeamDiscussionCommentConnection! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The HTTP path for discussion comments """ commentsResourcePath: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The HTTP URL for discussion comments """ commentsUrl: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was created. @@ -36210,11 +52492,17 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Whether or not the discussion is pinned. """ isPinned: Boolean! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Whether or not the discussion is only visible to team members and org admins. """ isPrivate: Boolean! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The moment the editor made the last edit @@ -36225,6 +52513,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Identifies the discussion within its team. """ number: Int! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies when the comment was published at. @@ -36275,16 +52566,25 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib The HTTP path for this discussion """ resourcePath: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The team that defines the context of this discussion. """ team: Team! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The title of the discussion """ title: String! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was last updated. @@ -36295,6 +52595,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib The HTTP URL for this discussion """ url: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ A list of edits to this content. @@ -36330,6 +52633,9 @@ type TeamDiscussion implements Comment & Deletable & Node & Reactable & Subscrib Whether or not the current viewer can pin this discussion. """ viewerCanPin: Boolean! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Can user react to this subject @@ -36375,6 +52681,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U Author's association with the comment's team. """ authorAssociation: CommentAuthorAssociation! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The body as Markdown. @@ -36395,6 +52704,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The current version of the body content. """ bodyVersion: String! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was created. @@ -36415,6 +52727,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The discussion this comment is about. """ discussion: TeamDiscussion! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ The actor who edited the comment. @@ -36436,6 +52751,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U Identifies the comment number. """ number: Int! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies when the comment was published at. @@ -36486,6 +52804,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The HTTP path for this comment """ resourcePath: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ Identifies the date and time when the object was last updated. @@ -36496,6 +52817,9 @@ type TeamDiscussionComment implements Comment & Deletable & Node & Reactable & U The HTTP URL for this comment """ url: URI! + @deprecated( + reason: "The Team Discussions feature is deprecated in favor of Organization Discussions. Follow the guide at https://github.blog/changelog/2023-02-08-sunset-notice-team-discussions/ to find a suitable replacement. Removal on 2024-07-01 UTC." + ) """ A list of edits to this content. @@ -36809,6 +53133,21 @@ enum TeamMembershipType { IMMEDIATE } +""" +The possible team notification values. +""" +enum TeamNotificationSetting { + """ + No one will receive notifications. + """ + NOTIFICATIONS_DISABLED + + """ + Everyone will receive notifications when the team is @mentioned. + """ + NOTIFICATIONS_ENABLED +} + """ Ways in which team connections can be ordered. """ @@ -37262,6 +53601,76 @@ type TextMatchHighlight { text: String! } +""" +The possible states of a thread subscription form action +""" +enum ThreadSubscriptionFormAction { + """ + The User cannot subscribe or unsubscribe to the thread + """ + NONE + + """ + The User can subscribe to the thread + """ + SUBSCRIBE + + """ + The User can unsubscribe to the thread + """ + UNSUBSCRIBE +} + +""" +The possible states of a subscription. +""" +enum ThreadSubscriptionState { + """ + The subscription status is currently disabled. + """ + DISABLED + + """ + The User is never notified because they are ignoring the list + """ + IGNORING_LIST + + """ + The User is never notified because they are ignoring the thread + """ + IGNORING_THREAD + + """ + The User is not recieving notifications from this thread + """ + NONE + + """ + The User is notified becuase they are watching the list + """ + SUBSCRIBED_TO_LIST + + """ + The User is notified because they are subscribed to the thread + """ + SUBSCRIBED_TO_THREAD + + """ + The User is notified because they chose custom settings for this thread. + """ + SUBSCRIBED_TO_THREAD_EVENTS + + """ + The User is notified because they chose custom settings for this thread. + """ + SUBSCRIBED_TO_THREAD_TYPE + + """ + The subscription status is currently unavailable. + """ + UNAVAILABLE +} + """ A topic aggregates entities that are related to a subject. """ @@ -37284,6 +53693,70 @@ type Topic implements Node & Starrable { first: Int = 3 ): [Topic!]! + """ + A list of repositories. + """ + repositories( + """ + Array of viewer's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + current viewer owns. + """ + affiliations: [RepositoryAffiliation] + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean + + """ + If non-null, filters repositories according to whether they have been locked + """ + isLocked: Boolean + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for repositories returned from the connection + """ + orderBy: RepositoryOrder + + """ + Array of owner's affiliation options for repositories returned from the + connection. For example, OWNER will include only repositories that the + organization or user being viewed owns. + """ + ownerAffiliations: [RepositoryAffiliation] = [OWNER, COLLABORATOR] + + """ + If non-null, filters repositories according to privacy + """ + privacy: RepositoryPrivacy + + """ + If true, only repositories whose owner can be sponsored via GitHub Sponsors will be returned. + """ + sponsorableOnly: Boolean = false + ): RepositoryConnection! + """ Returns a count of how many stargazers there are on this object """ @@ -37365,6 +53838,56 @@ enum TopicSuggestionDeclineReason { TOO_SPECIFIC } +""" +The possible states of a tracked issue. +""" +enum TrackedIssueStates { + """ + The tracked issue is closed + """ + CLOSED + + """ + The tracked issue is open + """ + OPEN +} + +""" +Autogenerated input type of TransferEnterpriseOrganization +""" +input TransferEnterpriseOrganizationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the enterprise where the organization should be transferred. + """ + destinationEnterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the organization to transfer. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of TransferEnterpriseOrganization +""" +type TransferEnterpriseOrganizationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organization for which a transfer was initiated. + """ + organization: Organization +} + """ Autogenerated input type of TransferIssue """ @@ -37374,6 +53897,11 @@ input TransferIssueInput { """ clientMutationId: String + """ + Whether to create labels if they don't exist in the target repository (matched by name) + """ + createLabelsIfMissing: Boolean = false + """ The Node ID of the issue to be transferred """ @@ -37476,6 +54004,16 @@ type TreeEntry { """ isGenerated: Boolean! + """ + The programming language this file is written in. + """ + language: Language + + """ + Number of lines in the file. + """ + lineCount: Int + """ Entry file mode. """ @@ -37486,6 +54024,11 @@ type TreeEntry { """ name: String! + """ + Entry file name. (Base64-encoded) + """ + nameRaw: Base64String! + """ Entry file object. """ @@ -37501,11 +54044,21 @@ type TreeEntry { """ 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 """ @@ -37522,6 +54075,41 @@ An RFC 3986, RFC 3987, and RFC 6570 (level 4) compliant URI string. """ scalar URI +""" +Autogenerated input type of UnarchiveProjectV2Item +""" +input UnarchiveProjectV2ItemInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the ProjectV2Item to unarchive. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project to archive the item from. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UnarchiveProjectV2Item +""" +type UnarchiveProjectV2ItemPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The item unarchived from the project. + """ + item: ProjectV2Item +} + """ Autogenerated input type of UnarchiveRepository """ @@ -37580,7 +54168,38 @@ type UnassignedEvent implements Node { """ Identifies the subject (user) who was unassigned. """ - user: User @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") + user: User + @deprecated(reason: "Assignees can now be mannequins. Use the `assignee` field instead. Removal on 2020-01-01 UTC.") +} + +""" +Autogenerated input type of UnfollowOrganization +""" +input UnfollowOrganizationInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + ID of the organization to unfollow. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of UnfollowOrganization +""" +type UnfollowOrganizationPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The organization that was unfollowed. + """ + organization: Organization } """ @@ -37625,7 +54244,7 @@ interface UniformResourceLocatable { """ The URL to this resource. """ - url: URI + url: URI! } """ @@ -37695,6 +54314,76 @@ type UnlabeledEvent implements Node { labelable: Labelable! } +""" +Autogenerated input type of UnlinkProjectV2FromRepository +""" +input UnlinkProjectV2FromRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to unlink from the repository. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the repository to unlink from the project. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) +} + +""" +Autogenerated return type of UnlinkProjectV2FromRepository +""" +type UnlinkProjectV2FromRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository the project is no longer linked to. + """ + repository: Repository +} + +""" +Autogenerated input type of UnlinkProjectV2FromTeam +""" +input UnlinkProjectV2FromTeamInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the project to unlink from the team. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The ID of the team to unlink from the project. + """ + teamId: ID! @possibleTypes(concreteTypes: ["Team"]) +} + +""" +Autogenerated return type of UnlinkProjectV2FromTeam +""" +type UnlinkProjectV2FromTeamPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The team the project is unlinked from + """ + team: Team +} + """ Autogenerated input type of UnlinkRepositoryFromProject """ @@ -37747,7 +54436,7 @@ input UnlockLockableInput { """ ID of the item to be unlocked. """ - lockableId: ID! @possibleTypes(concreteTypes: ["Issue", "PullRequest"], abstractType: "Lockable") + lockableId: ID! @possibleTypes(concreteTypes: ["Discussion", "Issue", "PullRequest"], abstractType: "Lockable") } """ @@ -37791,6 +54480,36 @@ type UnlockedEvent implements Node { lockable: Lockable! } +""" +Autogenerated input type of UnmarkDiscussionCommentAsAnswer +""" +input UnmarkDiscussionCommentAsAnswerInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion comment to unmark as an answer. + """ + id: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +Autogenerated return type of UnmarkDiscussionCommentAsAnswer +""" +type UnmarkDiscussionCommentAsAnswerPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The discussion that includes the comment. + """ + discussion: Discussion +} + """ Autogenerated input type of UnmarkFileAsViewed """ @@ -37861,6 +54580,36 @@ type UnmarkIssueAsDuplicatePayload { duplicate: IssueOrPullRequest } +""" +Autogenerated input type of UnmarkProjectV2AsTemplate +""" +input UnmarkProjectV2AsTemplateInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Project to unmark as a template. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UnmarkProjectV2AsTemplate +""" +type UnmarkProjectV2AsTemplatePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The project. + """ + projectV2: ProjectV2 +} + """ Represents an 'unmarked_as_duplicate' event on a given issue or pull request. """ @@ -37904,7 +54653,11 @@ input UnminimizeCommentInput { """ The Node ID of the subject to modify. """ - subjectId: ID! @possibleTypes(concreteTypes: ["CommitComment", "GistComment", "IssueComment", "PullRequestReviewComment"], abstractType: "Minimizable") + subjectId: ID! + @possibleTypes( + concreteTypes: ["CommitComment", "DiscussionComment", "GistComment", "IssueComment", "PullRequestReviewComment"] + abstractType: "Minimizable" + ) } """ @@ -38058,11 +54811,26 @@ input UpdateBranchProtectionRuleInput { """ allowsForcePushes: Boolean + """ + Is branch creation a protected operation. + """ + blocksCreations: Boolean + """ The global relay id of the branch protection rule to be updated. """ branchProtectionRuleId: ID! @possibleTypes(concreteTypes: ["BranchProtectionRule"]) + """ + A list of User, Team, or App IDs allowed to bypass force push targeting matching branches. + """ + bypassForcePushActorIds: [ID!] + + """ + A list of User, Team, or App IDs allowed to bypass pull requests targeting matching branches. + """ + bypassPullRequestActorIds: [ID!] + """ A unique identifier for the client performing the mutation. """ @@ -38078,26 +54846,52 @@ input UpdateBranchProtectionRuleInput { """ isAdminEnforced: Boolean + """ + Whether users can pull changes from upstream when the branch is locked. Set to + `true` to allow fork syncing. Set to `false` to prevent fork syncing. + """ + lockAllowsFetchAndMerge: Boolean + + """ + Whether to set the branch as read-only. If this is true, users will not be able to push to the branch. + """ + lockBranch: Boolean + """ The glob-like pattern used to determine matching branches. """ pattern: String """ - A list of User, Team or App IDs allowed to push to matching branches. + A list of User, Team, or App IDs allowed to push to matching branches. """ pushActorIds: [ID!] + """ + Whether the most recent push must be approved by someone other than the person who pushed it + """ + requireLastPushApproval: Boolean + """ Number of approving reviews required to update matching branches. """ requiredApprovingReviewCount: Int + """ + The list of required deployment environments + """ + requiredDeploymentEnvironments: [String!] + """ List of required status check contexts that must pass for commits to be accepted to matching branches. """ requiredStatusCheckContexts: [String!] + """ + The list of required status checks + """ + requiredStatusChecks: [RequiredStatusCheckInput!] + """ Are approving reviews required to update matching branches. """ @@ -38113,6 +54907,16 @@ input UpdateBranchProtectionRuleInput { """ requiresCommitSignatures: Boolean + """ + Are conversations required to be resolved before merging. + """ + requiresConversationResolution: Boolean + + """ + Are successful deployments required before merging. + """ + requiresDeployments: Boolean + """ Are merge commits prohibited from being pushed to this branch. """ @@ -38139,7 +54943,7 @@ input UpdateBranchProtectionRuleInput { restrictsReviewDismissals: Boolean """ - A list of User or Team IDs allowed to dismiss reviews on pull requests targeting matching branches. + A list of User, Team, or App IDs allowed to dismiss reviews on pull requests targeting matching branches. """ reviewDismissalActorIds: [ID!] } @@ -38274,6 +55078,86 @@ type UpdateCheckSuitePreferencesPayload { repository: Repository } +""" +Autogenerated input type of UpdateDiscussionComment +""" +input UpdateDiscussionCommentInput { + """ + The new contents of the comment body. + """ + body: String! + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion comment to update. + """ + commentId: ID! @possibleTypes(concreteTypes: ["DiscussionComment"]) +} + +""" +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 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 @possibleTypes(concreteTypes: ["DiscussionCategory"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The Node ID of the discussion to update. + """ + discussionId: ID! @possibleTypes(concreteTypes: ["Discussion"]) + + """ + The new discussion title. + """ + title: String +} + +""" +Autogenerated return type of UpdateDiscussion +""" +type UpdateDiscussionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The modified discussion. + """ + discussion: Discussion +} + """ Autogenerated input type of UpdateEnterpriseAdministratorRole """ @@ -38328,6 +55212,11 @@ input UpdateEnterpriseAllowPrivateRepositoryForkingSettingInput { """ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + """ + The value for the allow private repository forking policy on the enterprise. + """ + policyValue: EnterpriseAllowPrivateRepositoryForkingPolicyValue + """ The value for the allow private repository forking setting on the enterprise. """ @@ -38364,12 +55253,12 @@ input UpdateEnterpriseDefaultRepositoryPermissionSettingInput { clientMutationId: String """ - The ID of the enterprise on which to set the default repository permission setting. + The ID of the enterprise on which to set the base repository permission setting. """ enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) """ - The value for the default repository permission setting on the enterprise. + The value for the base repository permission setting on the enterprise. """ settingValue: EnterpriseDefaultRepositoryPermissionSettingValue! } @@ -38384,12 +55273,12 @@ type UpdateEnterpriseDefaultRepositoryPermissionSettingPayload { clientMutationId: String """ - The enterprise with the updated default repository permission setting. + The enterprise with the updated base repository permission setting. """ enterprise: Enterprise """ - A message confirming the result of updating the default repository permission setting. + A message confirming the result of updating the base repository permission setting. """ message: String } @@ -38775,6 +55664,46 @@ type UpdateEnterpriseOrganizationProjectsSettingPayload { message: String } +""" +Autogenerated input type of UpdateEnterpriseOwnerOrganizationRole +""" +input UpdateEnterpriseOwnerOrganizationRoleInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the Enterprise which the owner belongs to. + """ + enterpriseId: ID! @possibleTypes(concreteTypes: ["Enterprise"]) + + """ + The ID of the organization for membership change. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + The role to assume in the organization. + """ + organizationRole: RoleInOrganization! +} + +""" +Autogenerated return type of UpdateEnterpriseOwnerOrganizationRole +""" +type UpdateEnterpriseOwnerOrganizationRolePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of changing the owner's organization role. + """ + message: String +} + """ Autogenerated input type of UpdateEnterpriseProfile """ @@ -38945,6 +55874,51 @@ type UpdateEnterpriseTwoFactorAuthenticationRequiredSettingPayload { message: String } +""" +Autogenerated input type of UpdateEnvironment +""" +input UpdateEnvironmentInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The node ID of the environment. + """ + environmentId: ID! @possibleTypes(concreteTypes: ["Environment"]) + + """ + Whether deployments to this environment can be approved by the user who created the deployment. + """ + preventSelfReview: Boolean + + """ + The ids of users or teams that can approve deployments to this environment + """ + reviewers: [ID!] + + """ + The wait timer in minutes. + """ + waitTimer: Int +} + +""" +Autogenerated return type of UpdateEnvironment +""" +type UpdateEnvironmentPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated environment. + """ + environment: Environment +} + """ Autogenerated input type of UpdateIpAllowListEnabledSetting """ @@ -38957,7 +55931,7 @@ input UpdateIpAllowListEnabledSettingInput { """ The ID of the owner on which to set the IP allow list enabled setting. """ - ownerId: ID! @possibleTypes(concreteTypes: ["Enterprise", "Organization"], abstractType: "IpAllowListOwner") + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") """ The value for the IP allow list enabled setting. @@ -39025,6 +55999,41 @@ type UpdateIpAllowListEntryPayload { ipAllowListEntry: IpAllowListEntry } +""" +Autogenerated input type of UpdateIpAllowListForInstalledAppsEnabledSetting +""" +input UpdateIpAllowListForInstalledAppsEnabledSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the owner. + """ + ownerId: ID! @possibleTypes(concreteTypes: ["App", "Enterprise", "Organization"], abstractType: "IpAllowListOwner") + + """ + The value for the IP allow list configuration for installed GitHub Apps setting. + """ + settingValue: IpAllowListForInstalledAppsEnabledSettingValue! +} + +""" +Autogenerated return type of UpdateIpAllowListForInstalledAppsEnabledSetting +""" +type UpdateIpAllowListForInstalledAppsEnabledSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The IP allow list owner on which the setting was updated. + """ + owner: IpAllowListOwner +} + """ Autogenerated input type of UpdateIssueComment """ @@ -39210,6 +56219,106 @@ type UpdateNotificationRestrictionSettingPayload { owner: VerifiableDomainOwner } +""" +Autogenerated input type of UpdateOrganizationAllowPrivateRepositoryForkingSetting +""" +input UpdateOrganizationAllowPrivateRepositoryForkingSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Enable forking of private repositories in the organization? + """ + forkingEnabled: Boolean! + + """ + The ID of the organization on which to set the allow private repository forking setting. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) +} + +""" +Autogenerated return type of UpdateOrganizationAllowPrivateRepositoryForkingSetting +""" +type UpdateOrganizationAllowPrivateRepositoryForkingSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of updating the allow private repository forking setting. + """ + message: String + + """ + The organization with the updated allow private repository forking setting. + """ + organization: Organization +} + +""" +Autogenerated input type of UpdateOrganizationWebCommitSignoffSetting +""" +input UpdateOrganizationWebCommitSignoffSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the organization on which to set the web commit signoff setting. + """ + organizationId: ID! @possibleTypes(concreteTypes: ["Organization"]) + + """ + Enable signoff on web-based commits for repositories in the organization? + """ + webCommitSignoffRequired: Boolean! +} + +""" +Autogenerated return type of UpdateOrganizationWebCommitSignoffSetting +""" +type UpdateOrganizationWebCommitSignoffSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of updating the web commit signoff setting. + """ + message: String + + """ + The organization with the updated web commit signoff setting. + """ + organization: Organization +} + +""" +Only allow users with bypass permission to update matching refs. +""" +type UpdateParameters { + """ + Branch can pull changes from its upstream repository + """ + updateAllowsFetchAndMerge: Boolean! +} + +""" +Only allow users with bypass permission to update matching refs. +""" +input UpdateParametersInput { + """ + Branch can pull changes from its upstream repository + """ + updateAllowsFetchAndMerge: Boolean! +} + """ Autogenerated input type of UpdateProjectCard """ @@ -39335,6 +56444,310 @@ type UpdateProjectPayload { project: Project } +""" +Autogenerated input type of UpdateProjectV2Collaborators +""" +input UpdateProjectV2CollaboratorsInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The collaborators to update. + """ + collaborators: [ProjectV2Collaborator!]! + + """ + The ID of the project to update the collaborators for. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UpdateProjectV2Collaborators +""" +type UpdateProjectV2CollaboratorsPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The collaborators granted a role + """ + collaborators( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2ActorConnection +} + +""" +Autogenerated input type of UpdateProjectV2DraftIssue +""" +input UpdateProjectV2DraftIssueInput { + """ + The IDs of the assignees of the draft issue. + """ + assigneeIds: [ID!] @possibleTypes(concreteTypes: ["User"]) + + """ + The body of the draft issue. + """ + body: String + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the draft issue to update. + """ + draftIssueId: ID! @possibleTypes(concreteTypes: ["DraftIssue"]) + + """ + The title of the draft issue. + """ + title: String +} + +""" +Autogenerated return type of UpdateProjectV2DraftIssue +""" +type UpdateProjectV2DraftIssuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The draft issue updated in the project. + """ + draftIssue: DraftIssue +} + +""" +Autogenerated input type of UpdateProjectV2 +""" +input UpdateProjectV2Input { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Set the project to closed or open. + """ + closed: Boolean + + """ + The ID of the Project to update. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + Set the project to public or private. + """ + public: Boolean + + """ + Set the readme description of the project. + """ + readme: String + + """ + Set the short description of the project. + """ + shortDescription: String + + """ + Set the title of the project. + """ + title: String +} + +""" +Autogenerated input type of UpdateProjectV2ItemFieldValue +""" +input UpdateProjectV2ItemFieldValueInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the field to be updated. + """ + fieldId: ID! + @possibleTypes( + concreteTypes: ["ProjectV2Field", "ProjectV2IterationField", "ProjectV2SingleSelectField"] + abstractType: "ProjectV2FieldConfiguration" + ) + + """ + The ID of the item to be updated. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) + + """ + The value which will be set on the field. + """ + value: ProjectV2FieldValue! +} + +""" +Autogenerated return type of UpdateProjectV2ItemFieldValue +""" +type UpdateProjectV2ItemFieldValuePayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated item. + """ + projectV2Item: ProjectV2Item +} + +""" +Autogenerated input type of UpdateProjectV2ItemPosition +""" +input UpdateProjectV2ItemPositionInput { + """ + The ID of the item to position this item after. If omitted or set to null the item will be moved to top. + """ + afterId: ID @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the item to be moved. + """ + itemId: ID! @possibleTypes(concreteTypes: ["ProjectV2Item"]) + + """ + The ID of the Project. + """ + projectId: ID! @possibleTypes(concreteTypes: ["ProjectV2"]) +} + +""" +Autogenerated return type of UpdateProjectV2ItemPosition +""" +type UpdateProjectV2ItemPositionPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The items in the new order + """ + items( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2ItemConnection +} + +""" +Autogenerated return type of UpdateProjectV2 +""" +type UpdateProjectV2Payload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated Project. + """ + projectV2: ProjectV2 +} + +""" +Autogenerated input type of UpdatePullRequestBranch +""" +input UpdatePullRequestBranchInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The head ref oid for the upstream branch. + """ + expectedHeadOid: GitObjectID + + """ + The Node ID of the pull request. + """ + pullRequestId: ID! @possibleTypes(concreteTypes: ["PullRequest"]) + + """ + The update branch method to use. If omitted, defaults to 'MERGE' + """ + updateMethod: PullRequestBranchUpdateMethod +} + +""" +Autogenerated return type of UpdatePullRequestBranch +""" +type UpdatePullRequestBranchPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The updated pull request. + """ + pullRequest: PullRequest +} + """ Autogenerated input type of UpdatePullRequest """ @@ -39570,6 +56983,11 @@ input UpdateRepositoryInput { """ description: String + """ + Indicates if the repository should have the discussions feature enabled. + """ + hasDiscussionsEnabled: Boolean + """ Indicates if the repository should have the issues feature enabled. """ @@ -39622,6 +57040,164 @@ type UpdateRepositoryPayload { repository: Repository } +""" +Autogenerated input type of UpdateRepositoryRuleset +""" +input UpdateRepositoryRulesetInput { + """ + A list of actors that are allowed to bypass rules in this ruleset. + """ + bypassActors: [RepositoryRulesetBypassActorInput!] + + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The list of conditions for this ruleset + """ + conditions: RepositoryRuleConditionsInput + + """ + The enforcement level for this ruleset + """ + enforcement: RuleEnforcement + + """ + The name of the ruleset. + """ + name: String + + """ + The global relay id of the repository ruleset to be updated. + """ + repositoryRulesetId: ID! @possibleTypes(concreteTypes: ["RepositoryRuleset"]) + + """ + The list of rules for this ruleset + """ + rules: [RepositoryRuleInput!] + + """ + The target of the ruleset. + """ + target: RepositoryRulesetTarget +} + +""" +Autogenerated return type of UpdateRepositoryRuleset +""" +type UpdateRepositoryRulesetPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The newly created Ruleset. + """ + ruleset: RepositoryRuleset +} + +""" +Autogenerated input type of UpdateRepositoryWebCommitSignoffSetting +""" +input UpdateRepositoryWebCommitSignoffSettingInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The ID of the repository to update. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + + """ + Indicates if the repository should require signoff on web-based commits. + """ + webCommitSignoffRequired: Boolean! +} + +""" +Autogenerated return type of UpdateRepositoryWebCommitSignoffSetting +""" +type UpdateRepositoryWebCommitSignoffSettingPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + A message confirming the result of updating the web commit signoff setting. + """ + message: String + + """ + The updated repository. + """ + repository: Repository +} + +""" +Autogenerated input type of UpdateSponsorshipPreferences +""" +input UpdateSponsorshipPreferencesInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Specify whether others should be able to see that the sponsor is sponsoring + the sponsorable. Public visibility still does not reveal which tier is used. + """ + privacyLevel: SponsorshipPrivacy = PUBLIC + + """ + Whether the sponsor should receive email updates from the sponsorable. + """ + receiveEmails: Boolean = true + + """ + The ID of the user or organization who is acting as the sponsor, paying for + the sponsorship. Required if sponsorLogin is not given. + """ + sponsorId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsor") + + """ + The username of the user or organization who is acting as the sponsor, paying + for the sponsorship. Required if sponsorId is not given. + """ + sponsorLogin: String + + """ + The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given. + """ + sponsorableId: ID @possibleTypes(concreteTypes: ["Organization", "User"], abstractType: "Sponsorable") + + """ + The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given. + """ + sponsorableLogin: String +} + +""" +Autogenerated return type of UpdateSponsorshipPreferences +""" +type UpdateSponsorshipPreferencesPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The sponsorship that was updated. + """ + sponsorship: Sponsorship +} + """ Autogenerated input type of UpdateSubscription """ @@ -39639,7 +57215,11 @@ input UpdateSubscriptionInput { """ The Node ID of the subscribable object to modify. """ - subscribableId: ID! @possibleTypes(concreteTypes: ["Commit", "Issue", "PullRequest", "Repository", "Team", "TeamDiscussion"], abstractType: "Subscribable") + subscribableId: ID! + @possibleTypes( + concreteTypes: ["Commit", "Discussion", "Issue", "PullRequest", "Repository", "Team", "TeamDiscussion"] + abstractType: "Subscribable" + ) } """ @@ -39803,6 +57383,51 @@ type UpdateTeamReviewAssignmentPayload { team: Team } +""" +Autogenerated input type of UpdateTeamsRepository +""" +input UpdateTeamsRepositoryInput { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + Permission that should be granted to the teams. + """ + permission: RepositoryPermission! + + """ + Repository ID being granted access to. + """ + repositoryId: ID! @possibleTypes(concreteTypes: ["Repository"]) + + """ + A list of teams being granted access. Limit: 10 + """ + teamIds: [ID!]! @possibleTypes(concreteTypes: ["Team"]) +} + +""" +Autogenerated return type of UpdateTeamsRepository +""" +type UpdateTeamsRepositoryPayload { + """ + A unique identifier for the client performing the mutation. + """ + clientMutationId: String + + """ + The repository that was updated. + """ + repository: Repository + + """ + The teams granted permission on the repository. + """ + teams: [Team!] +} + """ Autogenerated input type of UpdateTopics """ @@ -39846,7 +57471,7 @@ type UpdateTopicsPayload { """ A user is an individual's account on GitHub that owns repositories and can make new content. """ -type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & RepositoryOwner & Sponsorable & UniformResourceLocatable { +type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & ProjectV2Owner & ProjectV2Recent & RepositoryDiscussionAuthor & RepositoryDiscussionCommentAuthor & RepositoryOwner & Sponsorable & UniformResourceLocatable { """ Determine if this repository owner has any items that can be pinned to their profile. """ @@ -39877,6 +57502,16 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ bioHTML: HTML! + """ + Could this user receive email notifications, if the organization had notification restrictions enabled? + """ + canReceiveOrganizationEmailsWhenNotificationsRestricted( + """ + The login of the organization to check. + """ + login: String! + ): Boolean! + """ A list of commit comments made by this user. """ @@ -39927,8 +57562,9 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & organizationID: ID """ - Only contributions made before and up to and including this time will be - counted. If omitted, defaults to the current time. + Only contributions made before and up to (including) this time will be + counted. If omitted, defaults to the current time or one year from the + provided from argument. """ to: DateTime ): ContributionsCollection! @@ -39948,6 +57584,46 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ email: String! + """ + A list of enterprises that the user belongs to. + """ + enterprises( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter enterprises returned based on the user's membership type. + """ + membershipType: EnterpriseMembershipType = ALL + + """ + Ordering options for the User's enterprises. + """ + orderBy: EnterpriseOrder = {field: NAME, direction: ASC} + ): EnterpriseConnection + + """ + The estimated next GitHub Sponsors payout for this user/organization in cents (USD). + """ + estimatedNextSponsorsPayoutInCents: Int! + """ A list of users the given user is followed by. """ @@ -40109,6 +57785,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ isEmployee: Boolean! + """ + Whether or not this user is following the viewer. Inverse of viewerIsFollowing + """ + isFollowingViewer: Boolean! + """ Whether or not this user is a member of the GitHub Stars Program. """ @@ -40125,7 +57806,7 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & isSiteAdmin: Boolean! """ - Check if the given account is sponsoring this user/organization. + Whether the given account is sponsoring this user/organization. """ isSponsoredBy( """ @@ -40235,6 +57916,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ login: String! + """ + The estimated monthly GitHub Sponsors income for this user/organization in cents (USD). + """ + monthlyEstimatedSponsorsIncomeInCents: Int! + """ The user's public profile name. """ @@ -40283,6 +57969,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & Returns the last _n_ elements from the list. """ last: Int + + """ + Ordering options for the User's organizations. + """ + orderBy: OrganizationOrder = null ): OrganizationConnection! """ @@ -40405,6 +58096,16 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & number: Int! ): Project + """ + Find a project by number. + """ + projectV2( + """ + The project number. + """ + number: Int! + ): ProjectV2 + """ A list of projects under the owner. """ @@ -40455,6 +58156,46 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ projectsUrl: URI! + """ + A list of projects under the owner. + """ + projectsV2( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + How to order the returned projects. + """ + orderBy: ProjectV2Order = {field: NUMBER, direction: DESC} + + """ + A project to search for under the the owner. + """ + query: String + ): ProjectV2Connection! + + """ + The user's profile pronouns + """ + pronouns: String + """ A list of public keys associated with this user. """ @@ -40530,6 +58271,31 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & states: [PullRequestState!] ): PullRequestConnection! + """ + Recent projects that this user has modified in the context of the owner. + """ + recentProjects( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): ProjectV2Connection! + """ A list of repositories that the user owns. """ @@ -40556,6 +58322,16 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ first: Int + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean + + """ + If non-null, filters repositories according to whether they are archived and not maintained + """ + isArchived: Boolean + """ If non-null, filters repositories according to whether they are forks of another repository """ @@ -40614,6 +58390,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ first: Int + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssues: Boolean + """ If true, include user repositories """ @@ -40644,12 +58425,98 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & Find Repository. """ repository( + """ + Follow repository renames. If disabled, a repository referenced by its old name will return an error. + """ + followRenames: Boolean = true + """ Name of Repository to find. """ name: String! ): Repository + """ + Discussion comments this user has authored. + """ + repositoryDiscussionComments( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Filter discussion comments to only those that were marked as the answer + """ + onlyAnswers: Boolean = false + + """ + Filter discussion comments to only those in a specific repository. + """ + repositoryId: ID + ): DiscussionCommentConnection! + + """ + Discussions this user has started. + """ + repositoryDiscussions( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Filter discussions to only those that have been answered or not. Defaults to + including both answered and unanswered discussions. + """ + answered: Boolean = null + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for discussions returned from the connection. + """ + orderBy: DiscussionOrder = {field: CREATED_AT, direction: DESC} + + """ + Filter discussions to only those in a specific repository. + """ + repositoryId: ID + + """ + A list of states to filter the discussions by. + """ + states: [DiscussionState!] = [] + ): DiscussionConnection! + """ The HTTP path for this user """ @@ -40685,20 +58552,228 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & 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 + + """ + Ordering options for sponsors returned from the connection. + """ + orderBy: SponsorOrder = {field: RELEVANCE, direction: DESC} + + """ + If given, will filter for sponsors at the given tier. Will only return + sponsors whose tier the viewer is permitted to see. + """ + tierId: ID + ): SponsorConnection! + + """ + Events involving this sponsorable, such as new sponsorships. + """ + sponsorsActivities( + """ + Filter activities to only the specified actions. + """ + actions: [SponsorsActivityAction!] = [] + + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Whether to include those events where this sponsorable acted as the sponsor. + Defaults to only including events where this sponsorable was the recipient + of a sponsorship. + """ + includeAsSponsor: Boolean = false + + """ + Whether or not to include private activities in the result set. Defaults to including public and private activities. + """ + includePrivate: Boolean = true + + """ + Returns the last _n_ elements from the list. + """ + last: Int + + """ + Ordering options for activity returned from the connection. + """ + orderBy: SponsorsActivityOrder = {field: TIMESTAMP, direction: DESC} + + """ + Filter activities returned to only those that occurred in the most recent + specified time period. Set to ALL to avoid filtering by when the activity + occurred. Will be ignored if `since` or `until` is given. + """ + period: SponsorsActivityPeriod = MONTH + + """ + Filter activities to those that occurred on or after this time. + """ + since: DateTime + + """ + Filter activities to those that occurred before this time. + """ + until: DateTime + ): SponsorsActivityConnection! + """ The GitHub Sponsors listing for this user or organization. """ sponsorsListing: SponsorsListing """ - The viewer's sponsorship of this entity. + The sponsorship from the viewer to this user/organization; that is, the sponsorship where you're the sponsor. """ - sponsorshipForViewerAsSponsor: Sponsorship + 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 """ - This object's sponsorships as the maintainer. + 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( + """ + Whether to include only sponsorships that are active right now, versus all + sponsorships this maintainer has ever received. + """ + activeOnly: Boolean = true + """ Returns the elements in the list that come after the specified cursor. """ @@ -40732,9 +58807,14 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & ): SponsorshipConnection! """ - This object's sponsorships as the sponsor. + The sponsorships where this user or organization is the funder. """ sponsorshipsAsSponsor( + """ + Whether to include only sponsorships that are active right now, versus all sponsorships this sponsor has ever made. + """ + activeOnly: Boolean = true + """ Returns the elements in the list that come after the specified cursor. """ @@ -40755,6 +58835,13 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ last: Int + """ + Filter sponsorships returned to those for the specified maintainers. That + is, the recipient of the sponsorship is a user or organization with one of + the given logins. + """ + maintainerLogins: [String!] + """ Ordering options for sponsorships returned from this connection. If left blank, the sponsorships will be ordered based on relevancy to the viewer. @@ -40837,6 +58924,28 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & since: DateTime ): RepositoryConnection! + """ + The amount in United States cents (e.g., 500 = $5.00 USD) that this entity has + spent on GitHub to fund sponsorships. Only returns a value when viewed by the + user themselves or by a user who can manage sponsorships for the requested organization. + """ + totalSponsorshipAmountAsSponsorInCents( + """ + Filter payments to those that occurred on or after this time. + """ + since: DateTime + + """ + Filter payments to those made to the users or organizations with the specified usernames. + """ + sponsorableLogins: [String!] = [] + + """ + Filter payments to those that occurred before this time. + """ + until: DateTime + ): Int + """ The user's Twitter username. """ @@ -40873,7 +58982,7 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & viewerCanSponsor: Boolean! """ - Whether or not this user is followed by the viewer. + Whether or not this user is followed by the viewer. Inverse of isFollowingViewer. """ viewerIsFollowing: Boolean! @@ -40908,6 +59017,11 @@ type User implements Actor & Node & PackageOwner & ProfileOwner & ProjectOwner & """ first: Int + """ + If non-null, filters repositories according to whether they have issues enabled + """ + hasIssuesEnabled: Boolean + """ If non-null, filters repositories according to whether they have been locked """ @@ -41162,10 +59276,6 @@ type UserStatus implements Node { If set, the status will not be shown after this date. """ expiresAt: DateTime - - """ - ID of the object. - """ id: ID! """ @@ -41260,7 +59370,7 @@ enum UserStatusOrderField { } """ -A domain that can be verified for an organization or an enterprise. +A domain that can be verified or approved for an organization or an enterprise. """ type VerifiableDomain implements Node { """ @@ -41294,6 +59404,11 @@ type VerifiableDomain implements Node { 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. """ @@ -41455,6 +59570,415 @@ 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 that must run for this rule to pass +""" +type WorkflowFileReference { + """ + The path to the workflow file + """ + path: String! + + """ + The ref (branch or tag) of the workflow file to use + """ + ref: String + + """ + The ID of the repository where the workflow is defined + """ + repositoryId: Int! + + """ + The commit SHA of the workflow file to use + """ + sha: String +} + +""" +A workflow that must run for this rule to pass +""" +input WorkflowFileReferenceInput { + """ + The path to the workflow file + """ + path: String! + + """ + The ref (branch or tag) of the workflow file to use + """ + ref: String + + """ + The ID of the repository where the workflow is defined + """ + repositoryId: Int! + + """ + The commit SHA of the workflow file to use + """ + sha: String +} + +""" +A workflow run. +""" +type WorkflowRun implements Node & UniformResourceLocatable { + """ + The check suite this workflow run belongs to. + """ + checkSuite: CheckSuite! + + """ + Identifies the date and time when the object was created. + """ + createdAt: DateTime! + + """ + Identifies the primary key from the database. + """ + databaseId: Int + + """ + The log of deployment reviews + """ + deploymentReviews( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentReviewConnection! + + """ + The event that triggered the workflow run + """ + event: String! + + """ + The workflow file + """ + file: WorkflowRunFile + id: ID! + + """ + The pending deployment requests of all check runs in this workflow run + """ + pendingDeploymentRequests( + """ + Returns the elements in the list that come after the specified cursor. + """ + after: String + + """ + Returns the elements in the list that come before the specified cursor. + """ + before: String + + """ + Returns the first _n_ elements from the list. + """ + first: Int + + """ + Returns the last _n_ elements from the list. + """ + last: Int + ): DeploymentRequestConnection! + + """ + The HTTP path for this workflow run + """ + resourcePath: URI! + + """ + A number that uniquely identifies this workflow run in its parent workflow. + """ + runNumber: Int! + + """ + Identifies the date and time when the object was last updated. + """ + updatedAt: DateTime! + + """ + The HTTP URL for this workflow run + """ + url: URI! + + """ + The workflow executed in this workflow run. + """ + workflow: Workflow! +} + +""" +The connection type for WorkflowRun. +""" +type WorkflowRunConnection { + """ + A list of edges. + """ + edges: [WorkflowRunEdge] + + """ + A list of nodes. + """ + nodes: [WorkflowRun] + + """ + Information to aid in pagination. + """ + pageInfo: PageInfo! + + """ + Identifies the total count of items in the connection. + """ + totalCount: Int! +} + +""" +An edge in a connection. +""" +type WorkflowRunEdge { + """ + A cursor for use in pagination. + """ + cursor: String! + + """ + The item at the end of the edge. + """ + node: WorkflowRun +} + +""" +An executed workflow file for a workflow run. +""" +type WorkflowRunFile implements Node & UniformResourceLocatable { + id: ID! + + """ + The path of the workflow file relative to its repository. + """ + path: String! + + """ + The direct link to the file in the repository which stores the workflow file. + """ + repositoryFileUrl: URI! + + """ + The repository name and owner which stores the workflow file. + """ + repositoryName: URI! + + """ + The HTTP path for this workflow run file + """ + resourcePath: URI! + + """ + The parent workflow run execution for this file. + """ + run: WorkflowRun! + + """ + The HTTP URL for this workflow run file + """ + url: URI! + + """ + If the viewer has permissions to push to the repository which stores the workflow. + """ + viewerCanPushRepository: Boolean! + + """ + If the viewer has permissions to read the repository which stores the workflow. + """ + viewerCanReadRepository: Boolean! +} + +""" +Ways in which lists of workflow runs can be ordered upon return. +""" +input WorkflowRunOrder { + """ + The direction in which to order workflow runs by the specified field. + """ + direction: OrderDirection! + + """ + The field by which to order workflows. + """ + field: WorkflowRunOrderField! +} + +""" +Properties by which workflow run connections can be ordered. +""" +enum WorkflowRunOrderField { + """ + Order workflow runs by most recently created + """ + CREATED_AT +} + +""" +The possible states for a workflow. +""" +enum WorkflowState { + """ + The workflow is active. + """ + ACTIVE + + """ + The workflow was deleted from the git repository. + """ + DELETED + + """ + The workflow was disabled by default on a fork. + """ + DISABLED_FORK + + """ + The workflow was disabled for inactivity in the repository. + """ + DISABLED_INACTIVITY + + """ + The workflow was disabled manually. + """ + DISABLED_MANUALLY +} + +""" +Require all changes made to a targeted branch to pass the specified workflows before they can be merged. +""" +type WorkflowsParameters { + """ + Workflows that must pass for this rule to pass. + """ + workflows: [WorkflowFileReference!]! +} + +""" +Require all changes made to a targeted branch to pass the specified workflows before they can be merged. +""" +input WorkflowsParametersInput { + """ + Workflows that must pass for this rule to pass. + """ + workflows: [WorkflowFileReferenceInput!]! +} + """ A valid x509 certificate string """ diff --git a/src/Lentille/GitHub/GraphQLFragments.hs b/src/Lentille/GitHub/GraphQLFragments.hs index e27fb73ea..e53822bd1 100644 --- a/src/Lentille/GitHub/GraphQLFragments.hs +++ b/src/Lentille/GitHub/GraphQLFragments.hs @@ -68,7 +68,6 @@ fragmentPRData = nodes { commit { oid - pushedDate authoredDate committedDate additions diff --git a/src/Lentille/GitHub/Issues.hs b/src/Lentille/GitHub/Issues.hs index 4aae04c39..a2deaab76 100644 --- a/src/Lentille/GitHub/Issues.hs +++ b/src/Lentille/GitHub/Issues.hs @@ -192,7 +192,7 @@ transformResponse searchResult = ( GetLinkedIssuesSearchNodesTimelineItemsNodesConnectedEvent "ConnectedEvent" ( GetLinkedIssuesSearchNodesTimelineItemsNodesSubjectVariantPullRequest - (GetLinkedIssuesSearchNodesTimelineItemsNodesSubjectPullRequest _ (Just (URI url'))) + (GetLinkedIssuesSearchNodesTimelineItemsNodesSubjectPullRequest _ (URI url')) ) ) ) -> Just url' @@ -201,7 +201,7 @@ transformResponse searchResult = ( GetLinkedIssuesSearchNodesTimelineItemsNodesCrossReferencedEvent "CrossReferencedEvent" ( GetLinkedIssuesSearchNodesTimelineItemsNodesSourceVariantPullRequest - (GetLinkedIssuesSearchNodesTimelineItemsNodesSourcePullRequest _ (Just (URI url'))) + (GetLinkedIssuesSearchNodesTimelineItemsNodesSourcePullRequest _ (URI url')) ) ) ) -> Just url' diff --git a/src/Lentille/GitHub/PullRequests.hs b/src/Lentille/GitHub/PullRequests.hs index 53aea7a4d..706425592 100644 --- a/src/Lentille/GitHub/PullRequests.hs +++ b/src/Lentille/GitHub/PullRequests.hs @@ -208,7 +208,7 @@ transformResponse host identCB result = do change ) { changeEventAuthor = Just $ getCommitter $ committer commit - , changeEventCreatedAt = maybe (changeCreatedAt change) (Just . from) (pushedDate commit) + , changeEventCreatedAt = Just . from $ committedDate commit } where getCommitter :: Maybe GetProjectPullRequestsRepositoryPullRequestsNodesCommitsNodesCommitCommitter -> Ident @@ -241,7 +241,7 @@ transformResponse host identCB result = do , changeChangeId = getChangeId (repoFullname repository) (show number) , changeTitle = from title , changeText = from bodyText - , changeUrl = from . getURL $ fromMaybe (error "Unable to decode change w/o webURL") webURL + , changeUrl = from . getURL $ webURL , changeCommitCount = from $ commitCount commits , changeAdditions = from additions , changeDeletions = from deletions diff --git a/src/Lentille/GitHub/UserPullRequests.hs b/src/Lentille/GitHub/UserPullRequests.hs index f53659a63..14cd25ad2 100644 --- a/src/Lentille/GitHub/UserPullRequests.hs +++ b/src/Lentille/GitHub/UserPullRequests.hs @@ -205,7 +205,7 @@ transformResponse host identCB result = do change ) { changeEventAuthor = Just $ getCommitter $ committer commit - , changeEventCreatedAt = maybe (changeCreatedAt change) (Just . from) (pushedDate commit) + , changeEventCreatedAt = Just . from $ committedDate commit } where getCommitter :: Maybe GetUserPullRequestsUserPullRequestsNodesCommitsNodesCommitCommitter -> Ident @@ -238,7 +238,7 @@ transformResponse host identCB result = do , changeChangeId = getChangeId (repoFullname repository) (show number) , changeTitle = from title , changeText = from bodyText - , changeUrl = from . getURL $ fromMaybe (error "Unable to decode change w/o webURL") webURL + , changeUrl = from . getURL $ webURL , changeCommitCount = from $ commitCount commits , changeAdditions = from additions , changeDeletions = from deletions diff --git a/src/Lentille/GitHub/Utils.hs b/src/Lentille/GitHub/Utils.hs index ae2874018..532f0cacd 100644 --- a/src/Lentille/GitHub/Utils.hs +++ b/src/Lentille/GitHub/Utils.hs @@ -88,11 +88,11 @@ baseEvent eType eId change = , changeEventId = eId , changeEventType = Just eType , changeEventDraft = changeDraft change + , changeEventOptionalDuration = swapDuration <$> changeOptionalDuration change + , changeEventOptionalMergedCommitSha = toChangeEventMergedCommitSha <$> changeOptionalMergedCommitSha change , -- To be filled by caller function changeEventCreatedAt = Nothing , changeEventAuthor = Nothing - , changeEventOptionalDuration = swapDuration <$> changeOptionalDuration change - , changeEventOptionalMergedCommitSha = toChangeEventMergedCommitSha <$> changeOptionalMergedCommitSha change } instance From DateTime ChangeOptionalClosedAt where