About mutations
Every GraphQL schema has a root type for both queries and mutations. The mutation type defines GraphQL operations that change data on the server. It is analogous to performing HTTP verbs such as POST
, PATCH
, and DELETE
.
For more information, see Forming calls with GraphQL.
abortQueuedMigrations
Clear all of a customer's queued migrations.
Input fields for abortQueuedMigrations
input
(AbortQueuedMigrationsInput!
)
Return fields for abortQueuedMigrations
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| Did the operation succeed?. |
abortRepositoryMigration
Abort a repository migration queued or in progress.
Input fields for abortRepositoryMigration
input
(AbortRepositoryMigrationInput!
)
Return fields for abortRepositoryMigration
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| Did the operation succeed?. |
acceptEnterpriseAdministratorInvitation
Accepts a pending invitation for a user to become an administrator of an enterprise.
Input fields for acceptEnterpriseAdministratorInvitation
Return fields for acceptEnterpriseAdministratorInvitation
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The invitation that was accepted. |
| A message confirming the result of accepting an administrator invitation. |
acceptEnterpriseMemberInvitation
Accepts a pending invitation for a user to become an unaffiliated member of an enterprise.
Input fields for acceptEnterpriseMemberInvitation
Return fields for acceptEnterpriseMemberInvitation
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The invitation that was accepted. |
| A message confirming the result of accepting an unaffiliated member invitation. |
acceptTopicSuggestion
Applies a suggested topic to the repository.
Input fields for acceptTopicSuggestion
input
(AcceptTopicSuggestionInput!
)
Return fields for acceptTopicSuggestion
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The accepted topic. Warning
Suggested topics are no longer supported Removal on 2024-04-01 UTC. |
accessUserNamespaceRepository
Access user namespace repository for a temporary duration.
Input fields for accessUserNamespaceRepository
Return fields for accessUserNamespaceRepository
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The time that repository access expires at. |
| The repository that is temporarily accessible. |
addAssigneesToAssignable
Adds assignees to an assignable object.
Input fields for addAssigneesToAssignable
input
(AddAssigneesToAssignableInput!
)
Return fields for addAssigneesToAssignable
Name | Description |
---|---|
| The item that was assigned. |
| A unique identifier for the client performing the mutation. |
addBlockedBy
Adds a 'blocked by' relationship to an issue.
Input fields for addBlockedBy
input
(AddBlockedByInput!
)
Return fields for addBlockedBy
Name | Description |
---|---|
| The issue that is blocking the given issue. |
| A unique identifier for the client performing the mutation. |
| The issue that is blocked. |
addComment
Adds a comment to an Issue or Pull Request.
Input fields for addComment
input
(AddCommentInput!
)
Return fields for addComment
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The edge from the subject's comment connection. |
| The subject. |
| The edge from the subject's timeline connection. |
addDiscussionComment
Adds a comment to a Discussion, possibly as a reply to another comment.
Input fields for addDiscussionComment
input
(AddDiscussionCommentInput!
)
Return fields for addDiscussionComment
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The newly created discussion comment. |
addDiscussionPollVote
Vote for an option in a discussion poll.
Input fields for addDiscussionPollVote
input
(AddDiscussionPollVoteInput!
)
Return fields for addDiscussionPollVote
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The poll option that a vote was added to. |
addEnterpriseOrganizationMember
Adds enterprise members to an organization within the enterprise.
addEnterpriseSupportEntitlement
Adds a support entitlement to an enterprise member.
addLabelsToLabelable
Adds labels to a labelable object.
Input fields for addLabelsToLabelable
input
(AddLabelsToLabelableInput!
)
Return fields for addLabelsToLabelable
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The item that was labeled. |
addProjectCard
Adds a card to a ProjectColumn. Either contentId
or note
must be provided but not both.
Warning
addProjectCard
is deprecated.
Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
Input fields for addProjectCard
input
(AddProjectCardInput!
)
Return fields for addProjectCard
Name | Description |
---|---|
| The edge from the ProjectColumn's card connection. |
| A unique identifier for the client performing the mutation. |
| The ProjectColumn. |
addProjectColumn
Adds a column to a Project.
Warning
addProjectColumn
is deprecated.
Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
Input fields for addProjectColumn
input
(AddProjectColumnInput!
)
Return fields for addProjectColumn
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The edge from the project's column connection. |
| The project. |
addProjectV2DraftIssue
Creates a new draft issue and add it to a Project.
Input fields for addProjectV2DraftIssue
input
(AddProjectV2DraftIssueInput!
)
Return fields for addProjectV2DraftIssue
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The draft issue added to the project. |
addProjectV2ItemById
Links an existing content instance to a Project.
Input fields for addProjectV2ItemById
input
(AddProjectV2ItemByIdInput!
)
Return fields for addProjectV2ItemById
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The item added to the project. |
addPullRequestReview
Adds a review to a Pull Request.
Input fields for addPullRequestReview
input
(AddPullRequestReviewInput!
)
Return fields for addPullRequestReview
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The newly created pull request review. |
| The edge from the pull request's review connection. |
addPullRequestReviewComment
Adds a comment to a review.
Input fields for addPullRequestReviewComment
Return fields for addPullRequestReviewComment
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The newly created comment. |
| The edge from the review's comment connection. |
addPullRequestReviewThread
Adds a new thread to a pending Pull Request Review.
Input fields for addPullRequestReviewThread
input
(AddPullRequestReviewThreadInput!
)
Return fields for addPullRequestReviewThread
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The newly created thread. |
addPullRequestReviewThreadReply
Adds a reply to an existing Pull Request Review Thread.
Input fields for addPullRequestReviewThreadReply
Return fields for addPullRequestReviewThreadReply
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The newly created reply. |
addReaction
Adds a reaction to a subject.
Input fields for addReaction
input
(AddReactionInput!
)
Return fields for addReaction
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The reaction object. |
| The reaction groups for the subject. |
| The reactable subject. |
addStar
Adds a star to a Starrable.
Input fields for addStar
input
(AddStarInput!
)
Return fields for addStar
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The starrable. |
addSubIssue
Adds a sub-issue to a given issue.
Input fields for addSubIssue
input
(AddSubIssueInput!
)
Return fields for addSubIssue
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The parent issue that the sub-issue was added to. |
| The sub-issue of the parent. |
addUpvote
Add an upvote to a discussion or discussion comment.
Input fields for addUpvote
input
(AddUpvoteInput!
)
Return fields for addUpvote
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The votable subject. |
addVerifiableDomain
Adds a verifiable domain to an owning account.
Input fields for addVerifiableDomain
input
(AddVerifiableDomainInput!
)
Return fields for addVerifiableDomain
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The verifiable domain that was added. |
approveDeployments
Approve all pending deployments under one or more environments.
Input fields for approveDeployments
input
(ApproveDeploymentsInput!
)
Return fields for approveDeployments
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The affected deployments. |
approveVerifiableDomain
Approve a verifiable domain for notification delivery.
Input fields for approveVerifiableDomain
input
(ApproveVerifiableDomainInput!
)
Return fields for approveVerifiableDomain
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The verifiable domain that was approved. |
archiveProjectV2Item
Archives a ProjectV2Item.
Input fields for archiveProjectV2Item
input
(ArchiveProjectV2ItemInput!
)
Return fields for archiveProjectV2Item
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The item archived from the project. |
archiveRepository
Marks a repository as archived.
Input fields for archiveRepository
input
(ArchiveRepositoryInput!
)
Return fields for archiveRepository
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The repository that was marked as archived. |
cancelEnterpriseAdminInvitation
Cancels a pending invitation for an administrator to join an enterprise.
Input fields for cancelEnterpriseAdminInvitation
Return fields for cancelEnterpriseAdminInvitation
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The invitation that was canceled. |
| A message confirming the result of canceling an administrator invitation. |
cancelEnterpriseMemberInvitation
Cancels a pending invitation for an unaffiliated member to join an enterprise.
Input fields for cancelEnterpriseMemberInvitation
Return fields for cancelEnterpriseMemberInvitation
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The invitation that was canceled. |
| A message confirming the result of canceling an member invitation. |
cancelSponsorship
Cancel an active sponsorship.
Input fields for cancelSponsorship
input
(CancelSponsorshipInput!
)
Return fields for cancelSponsorship
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The tier that was being used at the time of cancellation. |
changeUserStatus
Update your status on GitHub.
Input fields for changeUserStatus
input
(ChangeUserStatusInput!
)
Return fields for changeUserStatus
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| Your updated status. |
clearLabelsFromLabelable
Clears all labels from a labelable object.
Input fields for clearLabelsFromLabelable
input
(ClearLabelsFromLabelableInput!
)
Return fields for clearLabelsFromLabelable
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The item that was unlabeled. |
clearProjectV2ItemFieldValue
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.
Input fields for clearProjectV2ItemFieldValue
Return fields for clearProjectV2ItemFieldValue
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The updated item. |
cloneProject
Creates a new project by cloning configuration from an existing project.
Warning
cloneProject
is deprecated.
Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
Input fields for cloneProject
input
(CloneProjectInput!
)
Return fields for cloneProject
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The id of the JobStatus for populating cloned fields. |
| The new cloned project. |
cloneTemplateRepository
Create a new repository with the same files and directory structure as a template repository.
Input fields for cloneTemplateRepository
input
(CloneTemplateRepositoryInput!
)
Return fields for cloneTemplateRepository
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new repository. |
closeDiscussion
Close a discussion.
Input fields for closeDiscussion
input
(CloseDiscussionInput!
)
Return fields for closeDiscussion
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The discussion that was closed. |
closeIssue
Close an issue.
Input fields for closeIssue
input
(CloseIssueInput!
)
Return fields for closeIssue
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The issue that was closed. |
closePullRequest
Close a pull request.
Input fields for closePullRequest
input
(ClosePullRequestInput!
)
Return fields for closePullRequest
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The pull request that was closed. |
convertProjectCardNoteToIssue
Convert a project note card to one associated with a newly created issue.
Warning
convertProjectCardNoteToIssue
is deprecated.
Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
Input fields for convertProjectCardNoteToIssue
Return fields for convertProjectCardNoteToIssue
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The updated ProjectCard. |
convertProjectV2DraftIssueItemToIssue
Converts a projectV2 draft issue item to an issue.
Input fields for convertProjectV2DraftIssueItemToIssue
Return fields for convertProjectV2DraftIssueItemToIssue
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The updated project item. |
convertPullRequestToDraft
Converts a pull request to draft.
Input fields for convertPullRequestToDraft
input
(ConvertPullRequestToDraftInput!
)
Return fields for convertPullRequestToDraft
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The pull request that is now a draft. |
copyProjectV2
Copy a project.
Input fields for copyProjectV2
input
(CopyProjectV2Input!
)
Return fields for copyProjectV2
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The copied project. |
createAttributionInvitation
Invites a user to claim reattributable data.
Input fields for createAttributionInvitation
Return fields for createAttributionInvitation
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The owner scoping the reattributable data. |
| The account owning the data to reattribute. |
| The account which may claim the data. |
createBranchProtectionRule
Create a new branch protection rule.
Input fields for createBranchProtectionRule
input
(CreateBranchProtectionRuleInput!
)
Return fields for createBranchProtectionRule
Name | Description |
---|---|
| The newly created BranchProtectionRule. |
| A unique identifier for the client performing the mutation. |
createCheckRun
Create a check run.
Input fields for createCheckRun
input
(CreateCheckRunInput!
)
Return fields for createCheckRun
Name | Description |
---|---|
| The newly created check run. |
| A unique identifier for the client performing the mutation. |
createCheckSuite
Create a check suite.
Input fields for createCheckSuite
input
(CreateCheckSuiteInput!
)
Return fields for createCheckSuite
Name | Description |
---|---|
| The newly created check suite. |
| A unique identifier for the client performing the mutation. |
createCommitOnBranch
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.
Input fields for createCommitOnBranch
input
(CreateCommitOnBranchInput!
)
Return fields for createCommitOnBranch
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new commit. |
| The ref which has been updated to point to the new commit. |
createDeployment
Creates a new deployment event.
Input fields for createDeployment
input
(CreateDeploymentInput!
)
Return fields for createDeployment
Name | Description |
---|---|
| True if the default branch has been auto-merged into the deployment ref. |
| A unique identifier for the client performing the mutation. |
| The new deployment. |
createDeploymentStatus
Create a deployment status.
Input fields for createDeploymentStatus
input
(CreateDeploymentStatusInput!
)
Return fields for createDeploymentStatus
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new deployment status. |
createDiscussion
Create a discussion.
Input fields for createDiscussion
input
(CreateDiscussionInput!
)
Return fields for createDiscussion
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The discussion that was just created. |
createEnterpriseOrganization
Creates an organization as part of an enterprise account. A personal access token used to create an organization is implicitly permitted to update the organization it created, if the organization is part of an enterprise that has SAML enabled or uses Enterprise Managed Users. If the organization is not part of such an enterprise, and instead has SAML enabled for it individually, the token will then require SAML authorization to continue working against that organization.
Input fields for createEnterpriseOrganization
Return fields for createEnterpriseOrganization
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The enterprise that owns the created organization. |
| The organization that was created. |
createEnvironment
Creates an environment or simply returns it if already exists.
Input fields for createEnvironment
input
(CreateEnvironmentInput!
)
Return fields for createEnvironment
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new or existing environment. |
createIpAllowListEntry
Creates a new IP allow list entry.
Input fields for createIpAllowListEntry
input
(CreateIpAllowListEntryInput!
)
Return fields for createIpAllowListEntry
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The IP allow list entry that was created. |
createIssue
Creates a new issue.
Input fields for createIssue
input
(CreateIssueInput!
)
Return fields for createIssue
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new issue. |
createIssueType
Creates a new issue type.
Input fields for createIssueType
input
(CreateIssueTypeInput!
)
Return fields for createIssueType
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The newly created issue type. |
createLabel
Creates a new label.
Input fields for createLabel
input
(CreateLabelInput!
)
Return fields for createLabel
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new label. |
createLinkedBranch
Create a branch linked to an issue.
Input fields for createLinkedBranch
input
(CreateLinkedBranchInput!
)
Return fields for createLinkedBranch
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The issue that was linked to. |
| The new branch issue reference. |
createMigrationSource
Creates a GitHub Enterprise Importer (GEI) migration source.
Input fields for createMigrationSource
input
(CreateMigrationSourceInput!
)
Return fields for createMigrationSource
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The created migration source. |
createProject
Creates a new project.
Warning
createProject
is deprecated.
Projects (classic) is being deprecated in favor of the new Projects experience, see: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/. Removal on 2025-04-01 UTC.
Input fields for createProject
input
(CreateProjectInput!
)
Return fields for createProject
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new project. |
createProjectV2
Creates a new project.
Input fields for createProjectV2
input
(CreateProjectV2Input!
)
Return fields for createProjectV2
Name | Description |
---|---|
| A unique identifier for the client performing the mutation. |
| The new project. |