Skip to main content

Input objects

In this article

About input objects

Input objects can be described as "composable objects" because they include a set of input fields that define the object.

For example, CommitAuthor takes a field called emails. Providing a value for emails transforms CommitAuthor into a list of User objects containing that email address. Note that objects may have input objects, whereas mutations require input objects.

For more information, see "About mutations."

AbortQueuedMigrationsInput

Autogenerated input type of AbortQueuedMigrations.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

ownerId (ID!)

The ID of the organization that is running the migrations.

AcceptEnterpriseAdministratorInvitationInput

Autogenerated input type of AcceptEnterpriseAdministratorInvitation.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

invitationId (ID!)

The id of the invitation being accepted.

AcceptTopicSuggestionInput

Autogenerated input type of AcceptTopicSuggestion.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

name (String!)

The name of the suggested topic.

repositoryId (ID!)

The Node ID of the repository.

AddAssigneesToAssignableInput

Autogenerated input type of AddAssigneesToAssignable.

Input fields

NameDescription

assignableId (ID!)

The id of the assignable object to add assignees to.

assigneeIds ([ID!]!)

The id of users to add as assignees.

clientMutationId (String)

A unique identifier for the client performing the mutation.

AddCommentInput

Autogenerated input type of AddComment.

Input fields

NameDescription

body (String!)

The contents of the comment.

clientMutationId (String)

A unique identifier for the client performing the mutation.

subjectId (ID!)

The Node ID of the subject to modify.

AddDiscussionCommentInput

Autogenerated input type of AddDiscussionComment.

Input fields

NameDescription

body (String!)

The contents of the comment.

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussionId (ID!)

The Node ID of the discussion to comment on.

replyToId (ID)

The Node ID of the discussion comment within this discussion to reply to.

AddDiscussionPollVoteInput

Autogenerated input type of AddDiscussionPollVote.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

pollOptionId (ID!)

The Node ID of the discussion poll option to vote for.

AddEnterpriseSupportEntitlementInput

Autogenerated input type of AddEnterpriseSupportEntitlement.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

enterpriseId (ID!)

The ID of the Enterprise which the admin belongs to.

login (String!)

The login of a member who will receive the support entitlement.

AddLabelsToLabelableInput

Autogenerated input type of AddLabelsToLabelable.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

labelIds ([ID!]!)

The ids of the labels to add.

labelableId (ID!)

The id of the labelable object to add labels to.

AddProjectCardInput

Autogenerated input type of AddProjectCard.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

contentId (ID)

The content of the card. Must be a member of the ProjectCardItem union.

note (String)

The note on the card.

projectColumnId (ID!)

The Node ID of the ProjectColumn.

AddProjectColumnInput

Autogenerated input type of AddProjectColumn.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

name (String!)

The name of the column.

projectId (ID!)

The Node ID of the project.

AddProjectDraftIssueInput

Autogenerated input type of AddProjectDraftIssue.

Input fields

NameDescription

assigneeIds ([ID!])

The IDs of the assignees of the draft issue.

Upcoming Change on 2023-01-01 UTC Description: assigneeIds will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement. Reason: The ProjectNext API is deprecated in favour of the more capable ProjectV2 API.

body (String)

The body of the draft issue.

Upcoming Change on 2023-01-01 UTC Description: body will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement. Reason: The ProjectNext API is deprecated in favour of the more capable ProjectV2 API.

clientMutationId (String)

A unique identifier for the client performing the mutation.

projectId (ID)

The ID of the Project to add the draft issue to. This field is required.

Upcoming Change on 2023-01-01 UTC Description: projectId will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement. Reason: The ProjectNext API is deprecated in favour of the more capable ProjectV2 API.

title (String)

The title of the draft issue. This field is required.

Upcoming Change on 2023-01-01 UTC Description: title will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement. Reason: The ProjectNext API is deprecated in favour of the more capable ProjectV2 API.

AddProjectNextItemInput

Autogenerated input type of AddProjectNextItem.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

contentId (ID)

The content id of the item (Issue or PullRequest). This field is required.

Upcoming Change on 2023-01-01 UTC Description: contentId will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement. Reason: The ProjectNext API is deprecated in favour of the more capable ProjectV2 API.

projectId (ID)

The ID of the Project to add the item to. This field is required.

Upcoming Change on 2023-01-01 UTC Description: projectId will be removed. Follow the ProjectV2 guide at https://github.blog/changelog/2022-06-23-the-new-github-issues-june-23rd-update/, to find a suitable replacement. Reason: The ProjectNext API is deprecated in favour of the more capable ProjectV2 API.

AddProjectV2DraftIssueInput

Autogenerated input type of AddProjectV2DraftIssue.

Input fields

NameDescription

assigneeIds ([ID!])

The IDs of the assignees of the draft issue.

body (String)

The body of the draft issue.

clientMutationId (String)

A unique identifier for the client performing the mutation.

projectId (ID!)

The ID of the Project to add the draft issue to.

title (String!)

The title of the draft issue.

AddProjectV2ItemByIdInput

Autogenerated input type of AddProjectV2ItemById.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

contentId (ID!)

The id of the Issue or Pull Request to add.

projectId (ID!)

The ID of the Project to add the item to.

AddPullRequestReviewCommentInput

Autogenerated input type of AddPullRequestReviewComment.

Input fields

NameDescription

body (String!)

The text of the comment.

clientMutationId (String)

A unique identifier for the client performing the mutation.

commitOID (GitObjectID)

The SHA of the commit to comment on.

inReplyTo (ID)

The comment id to reply to.

path (String)

The relative path of the file to comment on.

position (Int)

The line index in the diff to comment on.

pullRequestId (ID)

The node ID of the pull request reviewing.

pullRequestReviewId (ID)

The Node ID of the review to modify.

AddPullRequestReviewInput

Autogenerated input type of AddPullRequestReview.

Input fields

NameDescription

body (String)

The contents of the review body comment.

clientMutationId (String)

A unique identifier for the client performing the mutation.

comments ([DraftPullRequestReviewComment])

The review line comments.

commitOID (GitObjectID)

The commit OID the review pertains to.

event (PullRequestReviewEvent)

The event to perform on the pull request review.

pullRequestId (ID!)

The Node ID of the pull request to modify.

threads ([DraftPullRequestReviewThread])

The review line comment threads.

AddPullRequestReviewThreadInput

Autogenerated input type of AddPullRequestReviewThread.

Input fields

NameDescription

body (String!)

Body of the thread's first comment.

clientMutationId (String)

A unique identifier for the client performing the mutation.

line (Int!)

The line of the blob to which the thread refers. The end of the line range for multi-line comments.

path (String!)

Path to the file being commented on.

pullRequestId (ID)

The node ID of the pull request reviewing.

pullRequestReviewId (ID)

The Node ID of the review to modify.

side (DiffSide)

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.

startLine (Int)

The first line of the range to which the comment refers.

startSide (DiffSide)

The side of the diff on which the start line resides.

AddReactionInput

Autogenerated input type of AddReaction.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

content (ReactionContent!)

The name of the emoji to react with.

subjectId (ID!)

The Node ID of the subject to modify.

AddStarInput

Autogenerated input type of AddStar.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

starrableId (ID!)

The Starrable ID to star.

AddUpvoteInput

Autogenerated input type of AddUpvote.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

subjectId (ID!)

The Node ID of the discussion or comment to upvote.

AddVerifiableDomainInput

Autogenerated input type of AddVerifiableDomain.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

domain (URI!)

The URL of the domain.

ownerId (ID!)

The ID of the owner to add the domain to.

ApproveDeploymentsInput

Autogenerated input type of ApproveDeployments.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

comment (String)

Optional comment for approving deployments.

environmentIds ([ID!]!)

The ids of environments to reject deployments.

workflowRunId (ID!)

The node ID of the workflow run containing the pending deployments.

ApproveVerifiableDomainInput

Autogenerated input type of ApproveVerifiableDomain.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

id (ID!)

The ID of the verifiable domain to approve.

ArchiveRepositoryInput

Autogenerated input type of ArchiveRepository.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

repositoryId (ID!)

The ID of the repository to mark as archived.

AuditLogOrder

Ordering options for Audit Log connections.

Input fields

NameDescription

direction (OrderDirection)

The ordering direction.

field (AuditLogOrderField)

The field to order Audit Logs by.

CancelEnterpriseAdminInvitationInput

Autogenerated input type of CancelEnterpriseAdminInvitation.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

invitationId (ID!)

The Node ID of the pending enterprise administrator invitation.

CancelSponsorshipInput

Autogenerated input type of CancelSponsorship.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

sponsorId (ID)

The ID of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorLogin is not given.

sponsorLogin (String)

The username of the user or organization who is acting as the sponsor, paying for the sponsorship. Required if sponsorId is not given.

sponsorableId (ID)

The ID of the user or organization who is receiving the sponsorship. Required if sponsorableLogin is not given.

sponsorableLogin (String)

The username of the user or organization who is receiving the sponsorship. Required if sponsorableId is not given.

ChangeUserStatusInput

Autogenerated input type of ChangeUserStatus.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

emoji (String)

The emoji to represent your status. Can either be a native Unicode emoji or an emoji name with colons, e.g., 😀.

expiresAt (DateTime)

If set, the user status will not be shown after this date.

limitedAvailability (Boolean)

Whether this status should indicate you are not fully available on GitHub, e.g., you are away.

message (String)

A short description of your current status.

organizationId (ID)

The ID of the organization whose members will be allowed to see the status. If omitted, the status will be publicly visible.

CheckAnnotationData

Information from a check run analysis to specific lines of code.

Input fields

NameDescription

annotationLevel (CheckAnnotationLevel!)

Represents an annotation's information level.

location (CheckAnnotationRange!)

The location of the annotation.

message (String!)

A short description of the feedback for these lines of code.

path (String!)

The path of the file to add an annotation to.

rawDetails (String)

Details about this annotation.

title (String)

The title that represents the annotation.

CheckAnnotationRange

Information from a check run analysis to specific lines of code.

Input fields

NameDescription

endColumn (Int)

The ending column of the range.

endLine (Int!)

The ending line of the range.

startColumn (Int)

The starting column of the range.

startLine (Int!)

The starting line of the range.

CheckRunAction

Possible further actions the integrator can perform.

Input fields

NameDescription

description (String!)

A short explanation of what this action would do.

identifier (String!)

A reference for the action on the integrator's system.

label (String!)

The text to be displayed on a button in the web UI.

CheckRunFilter

The filters that are available when fetching check runs.

Input fields

NameDescription

appId (Int)

Filters the check runs created by this application ID.

checkName (String)

Filters the check runs by this name.

checkType (CheckRunType)

Filters the check runs by this type.

conclusions ([CheckConclusionState!])

Filters the check runs by these conclusions.

status (CheckStatusState)

Filters the check runs by this status. Superceded by statuses.

statuses ([CheckStatusState!])

Filters the check runs by this status. Overrides status.

CheckRunOutput

Descriptive details about the check run.

Input fields

NameDescription

annotations ([CheckAnnotationData!])

The annotations that are made as part of the check run.

images ([CheckRunOutputImage!])

Images attached to the check run output displayed in the GitHub pull request UI.

summary (String!)

The summary of the check run (supports Commonmark).

text (String)

The details of the check run (supports Commonmark).

title (String!)

A title to provide for this check run.

CheckRunOutputImage

Images attached to the check run output displayed in the GitHub pull request UI.

Input fields

NameDescription

alt (String!)

The alternative text for the image.

caption (String)

A short image description.

imageUrl (URI!)

The full URL of the image.

CheckSuiteAutoTriggerPreference

The auto-trigger preferences that are available for check suites.

Input fields

NameDescription

appId (ID!)

The node ID of the application that owns the check suite.

setting (Boolean!)

Set to true to enable automatic creation of CheckSuite events upon pushes to the repository.

CheckSuiteFilter

The filters that are available when fetching check suites.

Input fields

NameDescription

appId (Int)

Filters the check suites created by this application ID.

checkName (String)

Filters the check suites by this name.

ClearLabelsFromLabelableInput

Autogenerated input type of ClearLabelsFromLabelable.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

labelableId (ID!)

The id of the labelable object to clear the labels from.

ClearProjectV2ItemFieldValueInput

Autogenerated input type of ClearProjectV2ItemFieldValue.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

fieldId (ID!)

The ID of the field to be cleared.

itemId (ID!)

The ID of the item to be cleared.

projectId (ID!)

The ID of the Project.

CloneProjectInput

Autogenerated input type of CloneProject.

Input fields

NameDescription

body (String)

The description of the project.

clientMutationId (String)

A unique identifier for the client performing the mutation.

includeWorkflows (Boolean!)

Whether or not to clone the source project's workflows.

name (String!)

The name of the project.

public (Boolean)

The visibility of the project, defaults to false (private).

sourceId (ID!)

The source project to clone.

targetOwnerId (ID!)

The owner ID to create the project under.

CloneTemplateRepositoryInput

Autogenerated input type of CloneTemplateRepository.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

description (String)

A short description of the new repository.

includeAllBranches (Boolean)

Whether to copy all branches from the template to the new repository. Defaults to copying only the default branch of the template.

name (String!)

The name of the new repository.

ownerId (ID!)

The ID of the owner for the new repository.

repositoryId (ID!)

The Node ID of the template repository.

visibility (RepositoryVisibility!)

Indicates the repository's visibility level.

CloseIssueInput

Autogenerated input type of CloseIssue.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

issueId (ID!)

ID of the issue to be closed.

stateReason (IssueClosedStateReason)

The reason the issue is to be closed.

ClosePullRequestInput

Autogenerated input type of ClosePullRequest.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

pullRequestId (ID!)

ID of the pull request to be closed.

CommitAuthor

Specifies an author for filtering Git commits.

Input fields

NameDescription

emails ([String!])

Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.

id (ID)

ID of a User to filter by. If non-null, only commits authored by this user will be returned. This field takes precedence over emails.

CommitContributionOrder

Ordering options for commit contribution connections.

Input fields

NameDescription

direction (OrderDirection!)

The ordering direction.

field (CommitContributionOrderField!)

The field by which to order commit contributions.

CommitMessage

A message to include with a new commit.

Input fields

NameDescription

body (String)

The body of the message.

headline (String!)

The headline of the message.

CommittableBranch

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 fields

NameDescription

branchName (String)

The unqualified name of the branch to append the commit to.

id (ID)

The Node ID of the Ref to be updated.

repositoryNameWithOwner (String)

The nameWithOwner of the repository to commit to.

ContributionOrder

Ordering options for contribution connections.

Input fields

NameDescription

direction (OrderDirection!)

The ordering direction.

ConvertProjectCardNoteToIssueInput

Autogenerated input type of ConvertProjectCardNoteToIssue.

Input fields

NameDescription

body (String)

The body of the newly created issue.

clientMutationId (String)

A unique identifier for the client performing the mutation.

projectCardId (ID!)

The ProjectCard ID to convert.

repositoryId (ID!)

The ID of the repository to create the issue in.

title (String)

The title of the newly created issue. Defaults to the card's note text.

ConvertPullRequestToDraftInput

Autogenerated input type of ConvertPullRequestToDraft.

Input fields

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

pullRequestId (ID!)

ID of the pull request to convert to draft.

CreateBranchProtectionRuleInput

Autogenerated input type of CreateBranchProtectionRule.

Input fields

NameDescription

allowsDeletions (Boolean)

Can this branch be deleted.

allowsForcePushes (Boolean)

Are force pushes allowed on this branch.

blocksCreations (Boolean)

Is branch creation a protected operation.

by