Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
# Autogenerated input type of AcceptTopicSuggestion
input AcceptTopicSuggestionInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the repository.
repositoryId: ID!
# The name of the suggested topic.
name: String!
}
# Autogenerated return type of AcceptTopicSuggestion
type AcceptTopicSuggestionPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The accepted topic.
topic: Topic!
}
# Represents an object which can take actions on GitHub. Typically a User or Bot.
interface Actor {
# A URL pointing to the actor's public avatar.
avatarUrl(
# The size of the resulting square image.
size: Int
): URI!
# The username of the actor.
login: String!
# The HTTP path for this actor.
resourcePath: URI!
# The HTTP URL for this actor.
url: URI!
}
# Autogenerated input type of AddComment
input AddCommentInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the subject to modify.
subjectId: ID!
# The contents of the comment.
body: String!
}
# Autogenerated return type of AddComment
type AddCommentPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The edge from the subject's comment connection.
commentEdge: IssueCommentEdge!
# The subject
subject: Node!
# The edge from the subject's timeline connection.
timelineEdge: IssueTimelineItemEdge!
}
# Represents a 'added_to_project' event on a given issue or pull request.
type AddedToProjectEvent 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
}
# Autogenerated input type of AddProjectCard
input AddProjectCardInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the ProjectColumn.
projectColumnId: ID!
# The content of the card. Must be a member of the ProjectCardItem union
contentId: ID
# The note on the card.
note: String
}
# Autogenerated return type of AddProjectCard
type AddProjectCardPayload {
# The edge from the ProjectColumn's card connection.
cardEdge: ProjectCardEdge!
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The ProjectColumn
projectColumn: Project!
}
# Autogenerated input type of AddProjectColumn
input AddProjectColumnInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the project.
projectId: ID!
# The name of the column.
name: String!
}
# Autogenerated return type of AddProjectColumn
type AddProjectColumnPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The edge from the project's column connection.
columnEdge: ProjectColumnEdge!
# The project
project: Project!
}
# Autogenerated input type of AddPullRequestReviewComment
input AddPullRequestReviewCommentInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the review to modify.
pullRequestReviewId: ID!
# The SHA of the commit to comment on.
commitOID: GitObjectID
# The text of the comment.
body: String!
# The relative path of the file to comment on.
path: String
# The line index in the diff to comment on.
position: Int
# The comment id to reply to.
inReplyTo: ID
}
# Autogenerated return type of AddPullRequestReviewComment
type AddPullRequestReviewCommentPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The newly created comment.
comment: PullRequestReviewComment!
# The edge from the review's comment connection.
commentEdge: PullRequestReviewCommentEdge!
}
# Autogenerated input type of AddPullRequestReview
input AddPullRequestReviewInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the pull request to modify.
pullRequestId: ID!
# The commit OID the review pertains to.
commitOID: GitObjectID
# The contents of the review body comment.
body: String
# The event to perform on the pull request review.
event: PullRequestReviewEvent
# The review line comments.
comments: [DraftPullRequestReviewComment]
}
# Autogenerated return type of AddPullRequestReview
type AddPullRequestReviewPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The newly created pull request review.
pullRequestReview: PullRequestReview!
# The edge from the pull request's review connection.
reviewEdge: PullRequestReviewEdge!
}
# Autogenerated input type of AddReaction
input AddReactionInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the subject to modify.
subjectId: ID!
# The name of the emoji to react with.
content: ReactionContent!
}
# Autogenerated return type of AddReaction
type AddReactionPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The reaction object.
reaction: Reaction!
# The reactable subject.
subject: Reactable!
}
# Autogenerated input type of AddStar
input AddStarInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Starrable ID to star.
starrableId: ID!
}
# Autogenerated return type of AddStar
type AddStarPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The starrable.
starrable: Starrable!
}
# An object that can have users assigned to it.
interface Assignable {
# A list of Users assigned to this object.
assignees(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): UserConnection!
}
# Represents an 'assigned' event on any assignable object.
type AssignedEvent implements Node {
# Identifies the actor who performed the event.
actor: Actor
# Identifies the assignable associated with the event.
assignable: Assignable!
# Identifies the date and time when the object was created.
createdAt: DateTime!
id: ID!
# Identifies the user who was assigned.
user: User
}
# Represents a 'base_ref_changed' event on a given issue or pull request.
type BaseRefChangedEvent implements Node {
# Identifies the actor who performed the event.
actor: Actor
# Identifies the date and time when the object was created.
createdAt: DateTime!
# Identifies the primary key from the database.
databaseId: Int @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
}
# Represents a 'base_ref_force_pushed' event on a given pull request.
type BaseRefForcePushedEvent implements Node {
# Identifies the actor who performed the event.
actor: Actor
# Identifies the after commit SHA for the 'base_ref_force_pushed' event.
afterCommit: Commit
# Identifies the before commit SHA for the 'base_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 'base_ref_force_pushed' event.
ref: Ref
}
# Represents a Git blame.
type Blame {
# The list of ranges from a Git blame.
ranges: [BlameRange!]!
}
# Represents a range of information from a Git blame.
type BlameRange {
# Identifies the recency of the change, from 1 (new) to 10 (old). This is
# calculated as a 2-quantile and determines the length of distance between the
# median age of all the changes in the file and the recency of the current
# range's change.
age: Int!
# Identifies the line author
commit: Commit!
# The ending line for the range
endingLine: Int!
# The starting line for the range
startingLine: Int!
}
# Represents a Git blob.
type Blob implements Node, GitObject {
# An abbreviated version of the Git object ID
abbreviatedOid: String!
# Byte size of Blob object
byteSize: Int!
# The HTTP path for this Git object
commitResourcePath: URI!
# The HTTP URL for this Git object
commitUrl: URI!
id: ID!
# Indicates whether the Blob is binary or text
isBinary: Boolean!
# Indicates whether the contents is truncated
isTruncated: Boolean!
# The Git object ID
oid: GitObjectID!
# The Repository the Git object belongs to
repository: Repository!
# UTF8 text data or null if the Blob is binary
text: String
}
# A special type of user which takes actions on behalf of GitHub Apps.
type Bot implements Node, Actor, UniformResourceLocatable {
# A URL pointing to the GitHub App's public avatar.
avatarUrl(
# The size of the resulting square image.
size: Int
): URI!
# Identifies the date and time when the object was created.
createdAt: DateTime!
# Identifies the primary key from the database.
databaseId: Int @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
# The username of the actor.
login: String!
# The HTTP path for this bot
resourcePath: URI!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# The HTTP URL for this bot
url: URI!
}
# An object that can be closed
interface Closable {
# `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
}
# Represents a 'closed' event on any `Closable`.
type ClosedEvent implements Node {
# Identifies the actor who performed the event.
actor: Actor
# Object that was closed.
closable: Closable!
# Identifies the commit associated with the 'closed' event.
commit: Commit
# Identifies the date and time when the object was created.
createdAt: DateTime!
id: ID!
}
# The Code of Conduct for a repository
type CodeOfConduct {
# The body of the CoC
body: String
# The key for the CoC
key: String!
# The formal name of the CoC
name: String!
# The path to the CoC
url: URI
}
# Collaborators affiliation level with a repository.
enum CollaboratorAffiliation {
# All outside collaborators of an organization-owned repository.
OUTSIDE
# All collaborators with permissions to an organization-owned repository, regardless of organization membership status.
DIRECT
# All collaborators the authenticated user can see.
ALL
}
# Represents a comment.
interface Comment {
# The actor who authored the comment.
author: Actor
# Author's association with the subject of the comment.
authorAssociation: CommentAuthorAssociation!
# The comment body as Markdown.
body: String!
# The comment body rendered to HTML.
bodyHTML: HTML!
# Identifies the date and time when the object was created.
createdAt: DateTime!
# Check if this comment was created via an email reply.
createdViaEmail: Boolean!
# The actor who edited the comment.
editor: Actor
id: ID!
# The moment the editor made the last edit
lastEditedAt: DateTime
# Identifies when the comment was published at.
publishedAt: DateTime
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# Did the viewer author this comment.
viewerDidAuthor: Boolean!
}
# A comment author association with repository.
enum CommentAuthorAssociation {
# Author is a member of the organization that owns the repository.
MEMBER
# Author is the owner of the repository.
OWNER
# Author has been invited to collaborate on the repository.
COLLABORATOR
# Author has previously committed to the repository.
CONTRIBUTOR
# Author has not previously committed to the repository.
FIRST_TIME_CONTRIBUTOR
# Author has not previously committed to GitHub.
FIRST_TIMER
# Author has no association with the repository.
NONE
}
# The possible errors that will prevent a user from updating a comment.
enum CommentCannotUpdateReason {
# You must be the author or have write access to this repository to update this comment.
INSUFFICIENT_ACCESS
# Unable to create comment because issue is locked.
LOCKED
# You must be logged in to update this comment.
LOGIN_REQUIRED
# Repository is under maintenance.
MAINTENANCE
# At least one email address must be verified to update this comment.
VERIFIED_EMAIL_REQUIRED
}
# Represents a 'comment_deleted' event on a given issue or pull request.
type CommentDeletedEvent 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
}
# Represents a Git commit.
type Commit implements Node, GitObject, Subscribable {
# An abbreviated version of the Git object ID
abbreviatedOid: String!
# Authorship details of the commit.
author: GitActor
# Check if the committer and the author match.
authoredByCommitter: Boolean!
# Fetches `git blame` information.
blame(
# The file whose Git blame information you want.
path: String!
): Blame!
# Comments made on the commit.
comments(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): CommitCommentConnection!
# The HTTP path for this Git object
commitResourcePath: URI!
# The HTTP URL for this Git object
commitUrl: URI!
# The datetime when this commit was committed.
committedDate: DateTime!
# Check if commited via GitHub web UI.
committedViaWeb: Boolean!
# Committership details of the commit.
committer: GitActor
# The linear commit history starting from (and including) this commit, in the same order as `git log`.
history(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# If non-null, filters history to only show commits touching files under this path.
path: String
# If non-null, filters history to only show commits with matching authorship.
author: CommitAuthor
# Allows specifying a beginning time or date for fetching commits.
since: GitTimestamp
# Allows specifying an ending time or date for fetching commits.
until: GitTimestamp
): CommitHistoryConnection!
id: ID!
# The Git commit message
message: String!
# The Git commit message body
messageBody: String!
# The commit message body rendered to HTML.
messageBodyHTML: HTML!
# The Git commit message headline
messageHeadline: String!
# The commit message headline rendered to HTML.
messageHeadlineHTML: HTML!
# The Git object ID
oid: GitObjectID!
# The parents of a commit.
parents(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): CommitConnection!
# The Repository this commit belongs to
repository: Repository!
# The HTTP path for this commit
resourcePath: URI!
# Commit signing information, if present.
signature: GitSignature
# Status information for this commit
status: Status
# Returns a URL to download a tarball archive for a repository.
# Note: For private repositories, these links are temporary and expire after five minutes.
tarballUrl: URI!
# Commit's root Tree
tree: Tree!
# The HTTP path for the tree of this commit
treeResourcePath: URI!
# The HTTP URL for the tree of this commit
treeUrl: URI!
# The HTTP URL for this commit
url: URI!
# Check if the viewer is able to change their subscription status for the repository.
viewerCanSubscribe: Boolean!
# Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.
viewerSubscription: SubscriptionState!
# Returns a URL to download a zipball archive for a repository.
# Note: For private repositories, these links are temporary and expire after five minutes.
zipballUrl: URI!
}
# Specifies an author for filtering Git commits.
input CommitAuthor {
# 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.
id: ID
# Email addresses to filter by. Commits authored by any of the specified email addresses will be returned.
emails: [String!]
}
# Represents a comment on a given Commit.
type CommitComment implements Node, Comment, Deletable, Updatable, UpdatableComment, Reactable, RepositoryNode {
# The actor who authored the comment.
author: Actor
# Author's association with the subject of the comment.
authorAssociation: CommentAuthorAssociation!
# Identifies the comment body.
body: String!
# Identifies the comment body rendered to HTML.
bodyHTML: HTML!
# Identifies the commit associated with the comment, if the commit exists.
commit: Commit
# 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
# The actor who edited the comment.
editor: Actor
id: ID!
# The moment the editor made the last edit
lastEditedAt: DateTime
# Identifies the file path associated with the comment.
path: String
# Identifies the line position associated with the comment.
position: Int
# 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 first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# Allows filtering Reactions by emoji.
content: ReactionContent
# Allows specifying the order in which reactions are returned.
orderBy: ReactionOrder
): ReactionConnection!
# The repository associated with this node.
repository: Repository!
# The HTTP path permalink for this commit comment.
resourcePath: URI!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# The HTTP URL permalink for this commit comment.
url: URI!
# Check if the current viewer can delete this object.
viewerCanDelete: 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 CommitComment.
type CommitCommentConnection {
# A list of edges.
edges: [CommitCommentEdge]
# A list of nodes.
nodes: [CommitComment]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type CommitCommentEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: CommitComment
}
# A thread of comments on a commit.
type CommitCommentThread implements Node, RepositoryNode {
# The comments that exist in this thread.
comments(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): CommitCommentConnection!
# The commit the comments were made on.
commit: Commit!
id: ID!
# The file the comments were made on.
path: String
# The position in the diff for the commit that the comment was made on.
position: Int
# The repository associated with this node.
repository: Repository!
}
# The connection type for Commit.
type CommitConnection {
# 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!
}
# An edge in a connection.
type CommitEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: Commit
}
# The connection type for Commit.
type CommitHistoryConnection {
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!
}
# Represents a 'converted_note_to_issue' event on a given issue or pull request.
type ConvertedNoteToIssueEvent 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
}
# Autogenerated input type of CreateProject
input CreateProjectInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The owner ID to create the project under.
ownerId: ID!
# The name of project.
name: String!
# The description of project.
body: String
}
# Autogenerated return type of CreateProject
type CreateProjectPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The new project.
project: Project!
}
# Represents a mention made by one issue or pull request to another.
type CrossReferencedEvent implements Node, UniformResourceLocatable {
# Identifies the actor who performed the event.
actor: Actor
# Identifies the date and time when the object was created.
createdAt: DateTime!
id: ID!
# Reference originated in a different repository.
isCrossRepository: Boolean!
# Identifies when the reference was made.
referencedAt: DateTime!
# The HTTP path for this pull request.
resourcePath: URI!
# Issue or pull request that made the reference.
source: ReferencedSubject!
# Issue or pull request to which the reference was made.
target: ReferencedSubject!
# The HTTP URL for this pull request.
url: URI!
# Checks if the target will be closed when the source is merged.
willCloseTarget: Boolean!
}
# An ISO-8601 encoded date string.
scalar Date
# An ISO-8601 encoded UTC date string.
scalar DateTime
# Autogenerated input type of DeclineTopicSuggestion
input DeclineTopicSuggestionInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the repository.
repositoryId: ID!
# The name of the suggested topic.
name: String!
# The reason why the suggested topic is declined.
reason: TopicSuggestionDeclineReason!
}
# Autogenerated return type of DeclineTopicSuggestion
type DeclineTopicSuggestionPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The declined topic.
topic: Topic!
}
# The possible default permissions for organization-owned repositories.
enum DefaultRepositoryPermissionField {
# Members have read access to org repos by default
READ
# Members have read and write access to org repos by default
WRITE
# Members have read, write, and admin access to org repos by default
ADMIN
}
# Entities that can be deleted.
interface Deletable {
# Check if the current viewer can delete this object.
viewerCanDelete: Boolean!
}
# Autogenerated input type of DeleteProjectCard
input DeleteProjectCardInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The id of the card to delete.
cardId: ID!
}
# Autogenerated return type of DeleteProjectCard
type DeleteProjectCardPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The column the deleted card was in.
column: ProjectColumn!
# The deleted card ID.
deletedCardId: ID!
}
# Autogenerated input type of DeleteProjectColumn
input DeleteProjectColumnInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The id of the column to delete.
columnId: ID!
}
# Autogenerated return type of DeleteProjectColumn
type DeleteProjectColumnPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The deleted column ID.
deletedColumnId: ID!
# The project the deleted column was in.
project: Project!
}
# Autogenerated input type of DeleteProject
input DeleteProjectInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Project ID to update.
projectId: ID!
}
# Autogenerated return type of DeleteProject
type DeleteProjectPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The repository or organization the project was removed from.
owner: ProjectOwner!
}
# Autogenerated input type of DeletePullRequestReview
input DeletePullRequestReviewInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the pull request review to delete.
pullRequestReviewId: ID!
}
# Autogenerated return type of DeletePullRequestReview
type DeletePullRequestReviewPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The deleted pull request review.
pullRequestReview: PullRequestReview!
}
# Represents a 'demilestoned' event on a given issue or pull request.
type DemilestonedEvent 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 'demilestoned' event.
milestoneTitle: String!
# Object referenced by event.
subject: MilestoneItem!
}
# Represents a 'deployed' event on a given pull request.
type DeployedEvent 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
# The deployment associated with the 'deployed' event.
deployment: Deployment!
id: ID!
# PullRequest referenced by event.
pullRequest: PullRequest!
# The ref associated with the 'deployed' event.
ref: Ref
}
# Represents triggered deployment instance.
type Deployment implements Node {
# Identifies the commit sha of the deployment.
commit: Commit
# Identifies the date and time when the object was created.
createdAt: DateTime!
# Identifies the actor who triggered the deployment.
creator: Actor
# Identifies the primary key from the database.
databaseId: Int @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
# The environment to which this deployment was made.
environment: String
id: ID!
# The latest status of this deployment.
latestStatus: DeploymentStatus
# Extra information that a deployment system might need.
payload: String
# Identifies the repository associated with the deployment.
repository: Repository!
# The current state of the deployment.
state: DeploymentState
# A list of statuses associated with the deployment.
statuses(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): DeploymentStatusConnection
}
# The connection type for Deployment.
type DeploymentConnection {
# A list of edges.
edges: [DeploymentEdge]
# A list of nodes.
nodes: [Deployment]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type DeploymentEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: Deployment
}
# The possible states in which a deployment can be.
enum DeploymentState {
# The pending deployment was not updated after 30 minutes.
ABANDONED
# The deployment is currently active.
ACTIVE
# An inactive transient deployment.
DESTROYED
# The deployment experienced an error.
ERROR
# The deployment has failed.
FAILURE
# The deployment is inactive.
INACTIVE
# The deployment is pending.
PENDING
}
# Describes the status of a given deployment attempt.
type DeploymentStatus implements Node {
# Identifies the date and time when the object was created.
createdAt: DateTime!
# Identifies the actor who triggered the deployment.
creator: Actor
# Identifies the deployment associated with status.
deployment: Deployment!
# Identifies the description of the deployment.
description: String
# Identifies the environment URL of the deployment.
environmentUrl: URI
id: ID!
# Identifies the log URL of the deployment.
logUrl: URI
# Identifies the current state of the deployment.
state: DeploymentStatusState!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
}
# The connection type for DeploymentStatus.
type DeploymentStatusConnection {
# A list of edges.
edges: [DeploymentStatusEdge]
# A list of nodes.
nodes: [DeploymentStatus]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type DeploymentStatusEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: DeploymentStatus
}
# The possible states for a deployment status.
enum DeploymentStatusState {
# The deployment is pending.
PENDING
# The deployment was successful.
SUCCESS
# The deployment has failed.
FAILURE
# The deployment is inactive.
INACTIVE
# The deployment experienced an error.
ERROR
}
# Autogenerated input type of DismissPullRequestReview
input DismissPullRequestReviewInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The Node ID of the pull request review to modify.
pullRequestReviewId: ID!
# The contents of the pull request review dismissal message.
message: String!
}
# Autogenerated return type of DismissPullRequestReview
type DismissPullRequestReviewPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The dismissed pull request review.
pullRequestReview: PullRequestReview!
}
# Specifies a review comment to be left with a Pull Request Review.
input DraftPullRequestReviewComment {
# Path to the file being commented on.
path: String!
# Position in the file to leave a comment on.
position: Int!
# Body of the comment to leave.
body: String!
}
# An external identity provisioned by SAML SSO or SCIM.
type ExternalIdentity implements Node {
# The GUID for this identity
guid: String!
id: ID!
# Organization invitation for this SCIM-provisioned external identity
organizationInvitation: OrganizationInvitation
# SAML Identity attributes
samlIdentity: ExternalIdentitySamlAttributes
# SCIM Identity attributes
scimIdentity: ExternalIdentityScimAttributes
# User linked to this external identity
user: User
}
# 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 {
# The NameID of the SAML identity
nameId: String
}
# SCIM attributes for the External Identity
type ExternalIdentityScimAttributes {
# The userName of the SCIM identity
username: String
}
# 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 Gist.
type Gist implements Node, Starrable {
# A list of comments associated with the gist
comments(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): GistCommentConnection!
# Identifies the date and time when the object was created.
createdAt: DateTime!
# The gist description.
description: String
id: ID!
# 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
# A list of users who have starred this starrable.
stargazers(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# Order for connection
orderBy: StarOrder
): StargazerConnection!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# Returns a boolean indicating whether the viewing user has starred this starrable.
viewerHasStarred: Boolean!
}
# Represents a comment on an Gist.
type GistComment implements Node, Comment, Deletable, 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 comment body rendered to HTML.
bodyHTML: HTML!
# Identifies the date and time when the object was created.
createdAt: DateTime!
# Check if this comment was created via an email reply.
createdViaEmail: Boolean!
# The actor who edited the comment.
editor: Actor
# The associated gist.
gist: Gist!
id: ID!
# The moment the editor made the last edit
lastEditedAt: DateTime
# Identifies when the comment was published at.
publishedAt: DateTime
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# Check if the current viewer can delete this object.
viewerCanDelete: 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
}
# Ordering options for gist connections
input GistOrder {
# The field to order repositories by.
field: GistOrderField!
# The ordering direction.
direction: OrderDirection!
}
# Properties by which gist connections can be ordered.
enum GistOrderField {
# Order gists by creation time
CREATED_AT
# Order gists by update time
UPDATED_AT
# Order gists by push time
PUSHED_AT
}
# The privacy of a Gist
enum GistPrivacy {
# Public
PUBLIC
# Secret
SECRET
# Gists that are public and secret
ALL
}
# Represents an actor in a Git commit (ie. an author or committer).
type GitActor {
# A URL pointing to the author's public avatar.
avatarUrl(
# The size of the resulting square image.
size: Int
): URI!
# The timestamp of the Git action (authoring or committing).
date: GitTimestamp
# The email in the Git commit.
email: String
# The name in the Git commit.
name: String
# The GitHub user corresponding to the email field. Null if no such user exists.
user: User
}
# Represents information about the GitHub instance.
type GitHubMetadata {
# Returns a String that's a SHA of `github-services`
gitHubServicesSha: String!
# IP addresses that users connect to for git operations
gitIpAddresses: [String!]
# IP addresses that service hooks are sent from
hookIpAddresses: [String!]
# IP addresses that the importer connects from
importerIpAddresses: [String!]
# Whether or not users are verified
isPasswordAuthenticationVerifiable: Boolean!
# IP addresses for GitHub Pages' A records
pagesIpAddresses: [String!]
}
# Represents a Git object.
interface GitObject {
# An abbreviated version of the Git object ID
abbreviatedOid: String!
# The HTTP path for this Git object
commitResourcePath: URI!
# The HTTP URL for this Git object
commitUrl: URI!
id: ID!
# The Git object ID
oid: GitObjectID!
# The Repository the Git object belongs to
repository: Repository!
}
# A Git object ID.
scalar GitObjectID
# Information about a signature (GPG or S/MIME) on a Commit or Tag.
interface GitSignature {
# Email used to sign this object.
email: String!
# True if the signature is valid and verified by GitHub.
isValid: Boolean!
# Payload for GPG signing object. Raw ODB object without the signature header.
payload: String!
# ASCII-armored signature header from object.
signature: String!
# GitHub user corresponding to the email signing this commit.
signer: User
# The state of this signature. `VALID` if signature is valid and verified by
# GitHub, otherwise represents reason why signature is considered invalid.
state: GitSignatureState!
}
# The state of a Git signature.
enum GitSignatureState {
# Valid signature and verified by GitHub.
VALID
# Invalid signature.
INVALID
# Malformed signature.
MALFORMED_SIG
# Key used for signing not known to GitHub.
UNKNOWN_KEY
# Invalid email used for signing.
BAD_EMAIL
# Email used for signing unverified on GitHub.
UNVERIFIED_EMAIL
# Email used for signing not known to GitHub.
NO_USER
# Unknown signature type.
UNKNOWN_SIG_TYPE
# Unsigned.
UNSIGNED
# Internal error - the GPG verification service is unavailable at the moment.
GPGVERIFY_UNAVAILABLE
# Internal error - the GPG verification service misbehaved.
GPGVERIFY_ERROR
# The usage flags for the key that signed this don't allow signing.
NOT_SIGNING_KEY
# Signing key expired.
EXPIRED_KEY
}
# 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!
}
# 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!
}
# A string containing HTML code.
scalar HTML
# An Issue is a place to discuss ideas, enhancements, tasks, and bugs for a project.
type Issue implements Node, Assignable, Closable, Comment, Updatable, UpdatableComment, Labelable, Lockable, Reactable, RepositoryNode, Subscribable, UniformResourceLocatable {
# A list of Users assigned to this object.
assignees(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): 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!
# Identifies the body of the issue rendered to HTML.
bodyHTML: HTML!
# Identifies the body of the issue rendered to text.
bodyText: String!
# `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
# A list of comments associated with the Issue.
comments(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
# The actor who edited the comment.
editor: Actor
id: ID!
# A list of labels associated with the object.
labels(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): LabelConnection
# The moment the editor made the last edit
lastEditedAt: DateTime
# `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 first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): UserConnection!
# List of project cards associated with this issue.
projectCards(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): ProjectCardConnection!
# 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 first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# Allows filtering Reactions by emoji.
content: ReactionContent
# Allows specifying the order in which reactions are returned.
orderBy: ReactionOrder
): ReactionConnection!
# The repository associated with this node.
repository: Repository!
# The HTTP path for this issue
resourcePath: URI!
# Identifies the state of the issue.
state: IssueState!
# A list of events, comments, commits, etc. associated with the issue.
timeline(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# Allows filtering timeline events by a `since` timestamp.
since: DateTime
): IssueTimelineConnection!
# Identifies the issue title.
title: String!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# The HTTP URL for this issue
url: URI!
# Can user react to this subject
viewerCanReact: 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!
}
# Represents a comment on an Issue.
type IssueComment implements Node, Comment, Deletable, Updatable, UpdatableComment, Reactable, RepositoryNode {
# The actor who authored the comment.
author: Actor
# Author's association with the subject of the comment.
authorAssociation: CommentAuthorAssociation!
# Identifies the comment body.
body: String!
# The comment body rendered to HTML.
bodyHTML: HTML!
# Identifies the body of the issue 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
# The actor who edited the comment.
editor: Actor
id: ID!
# Identifies the issue associated with the comment.
issue: Issue!
# The moment the editor made the last edit
lastEditedAt: DateTime
# 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 first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# Allows filtering Reactions by emoji.
content: ReactionContent
# Allows specifying the order in which reactions are returned.
orderBy: ReactionOrder
): ReactionConnection!
# The repository associated with this node.
repository: Repository!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# Check if the current viewer can delete this object.
viewerCanDelete: Boolean!
# Can user react to this subject
viewerCanReact: Boolean!
# Check if the current viewer can update this object.
viewerCanUpdate: Boolean!
# Reasons why the current viewer can not update this comment.
viewerCannotUpdateReasons: [CommentCannotUpdateReason!]!
# Did the viewer author this comment.
viewerDidAuthor: Boolean!
}
# The connection type for IssueComment.
type IssueCommentConnection {
# A list of edges.
edges: [IssueCommentEdge]
# A list of nodes.
nodes: [IssueComment]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type IssueCommentEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: IssueComment
}
# The connection type for Issue.
type IssueConnection {
# A list of edges.
edges: [IssueEdge]
# A list of nodes.
nodes: [Issue]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# 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 lists of issues can be ordered upon return.
input IssueOrder {
# The field in which to order issues by.
field: IssueOrderField!
# The direction in which to order issues by the specified field.
direction: OrderDirection!
}
# Properties by which issue connections can be ordered.
enum IssueOrderField {
# Order issues by creation time
CREATED_AT
# Order issues by update time
UPDATED_AT
# Order issues by comment count
COMMENTS
}
# Used for return value of Repository.issueOrPullRequest.
union IssueOrPullRequest = Issue | PullRequest
# The possible PubSub channels for an issue.
enum IssuePubSubTopic {
# The channel ID for observing issue updates.
UPDATED
# The channel ID for marking an issue as read.
MARKASREAD
}
# The possible states of an issue.
enum IssueState {
# An issue that is still open
OPEN
# An issue that has been closed
CLOSED
}
# 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 = Commit | IssueComment | CrossReferencedEvent | ClosedEvent | ReopenedEvent | SubscribedEvent | UnsubscribedEvent | ReferencedEvent | AssignedEvent | UnassignedEvent | LabeledEvent | UnlabeledEvent | MilestonedEvent | DemilestonedEvent | RenamedTitleEvent | LockedEvent | UnlockedEvent
# 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
}
# A label for categorizing Issues or Milestones with a given Repository.
type Label implements Node {
# Identifies the label color.
color: String!
id: ID!
# A list of issues associated with this label.
issues(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# A list of label names to filter the pull requests by.
labels: [String!]
# 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 first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# A list of states to filter the pull requests by.
states: [PullRequestState!]
# A list of label names to filter the pull requests by.
labels: [String!]
# The head ref name to filter the pull requests by.
headRefName: String
# The base ref name to filter the pull requests by.
baseRefName: String
# Ordering options for pull requests returned from the connection.
orderBy: IssueOrder
): PullRequestConnection!
# The repository associated with this label.
repository: Repository!
}
# An object that can have labels assigned to it.
interface Labelable {
# A list of labels associated with the object.
labels(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): LabelConnection
}
# The connection type for Label.
type LabelConnection {
# A list of edges.
edges: [LabelEdge]
# A list of nodes.
nodes: [Label]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# Represents a 'labeled' event on a given issue or pull request.
type LabeledEvent implements Node {
# Identifies the actor who performed the event.
actor: Actor
# Identifies the date and time when the object was created.
createdAt: DateTime!
id: ID!
# Identifies the label associated with the 'labeled' event.
label: Label!
# Identifies the `Labelable` associated with the event.
labelable: Labelable!
}
# An edge in a connection.
type LabelEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: Label
}
# Represents a given language found in repositories.
type Language implements Node {
# The color defined for the current language.
color: String
id: ID!
# The name of the current language.
name: String!
}
# A list of languages associated with the parent.
type LanguageConnection {
# A list of edges.
edges: [LanguageEdge]
# A list of nodes.
nodes: [Language]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
# The total size in bytes of files written in that language.
totalSize: Int!
}
# Represents the language of a repository.
type LanguageEdge {
cursor: String!
node: Language!
# The number of bytes of code written in the language.
size: Int!
}
# Ordering options for language connections.
input LanguageOrder {
# The field to order languages by.
field: LanguageOrderField!
# The ordering direction.
direction: OrderDirection!
}
# Properties by which language connections can be ordered.
enum LanguageOrderField {
# Order languages by the size of all files containing the language
SIZE
}
# A respository's open source license
type License {
# 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 <https://spdx.org/licenses>
name: String!
# Customary short name if applicable (e.g, GPLv3)
nickname: String
# The permissions set by the license
permissions: [LicenseRule]!
# Short identifier specified by <https://spdx.org/licenses>
spdxId: String
# URL to the license on <https://choosealicense.com>
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!
}
# An object that can be locked.
interface Lockable {
# `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!
# Object that was locked.
lockable: Lockable!
}
# A public description of a Marketplace category.
type MarketplaceCategory {
# The category's description.
description: String
# The technical description of how apps listed in this category work with GitHub.
howItWorks: String
# 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 {
# 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!
# Whether this listing has been submitted for review from GitHub for approval to be displayed in the Marketplace.
hasApprovalBeenRequested: Boolean!
# Does this listing have any plans with a free trial?
hasPublishedFreeTrialPlans: Boolean!
# Does this listing have a terms of service link?
hasTermsOfService: 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 approved for display in the Marketplace.
isApproved: Boolean!
# Whether this listing has been removed from the Marketplace.
isDelisted: 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 rejected by GitHub for display in the Marketplace.
isRejected: 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.
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.
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.
#
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!
}
# The connection type for MarketplaceListing.
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
}
# 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
}
# Whether or not a PullRequest can be merged.
enum MergeableState {
# The pull request can be merged.
MERGEABLE
# The pull request cannot be merged due to merge conflicts.
CONFLICTING
# The mergeability of the pull request is still being calculated.
UNKNOWN
}
# 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 Milestone object on a given repository.
type Milestone implements Node, UniformResourceLocatable {
# 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 first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# A list of label names to filter the pull requests by.
labels: [String!]
# 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!
# 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!
# The HTTP URL for this milestone
url: URI!
}
# The connection type for Milestone.
type MilestoneConnection {
# A list of edges.
edges: [MilestoneEdge]
# A list of nodes.
nodes: [Milestone]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# Represents a 'milestoned' event on a given issue or pull request.
type MilestonedEvent implements Node {
# Identifies the actor who performed the event.
actor: Actor
# Identifies the date and time when the object was created.
createdAt: DateTime!
id: ID!
# Identifies the milestone title associated with the 'milestoned' event.
milestoneTitle: String!
# Object referenced by event.
subject: MilestoneItem!
}
# An edge in a connection.
type MilestoneEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: Milestone
}
# Types that can be inside a Milestone.
union MilestoneItem = Issue | PullRequest
# The possible states of a milestone.
enum MilestoneState {
# A milestone that is still open.
OPEN
# A milestone that has been closed.
CLOSED
}
# 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
}
# Autogenerated input type of MoveProjectCard
input MoveProjectCardInput {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The id of the card to move.
cardId: ID!
# The id of the column to move it into.
columnId: ID!
# Place the new card after the card with this id. Pass null to place it at the top.
afterCardId: ID
}
# 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 {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The id of the column to move.
columnId: ID!
# Place the new column after the column with this id. Pass null to place it at the front.
afterColumnId: ID
}
# Autogenerated return type of MoveProjectColumn
type MoveProjectColumnPayload {
# A unique identifier for the client performing the mutation.
clientMutationId: String
# The new edge of the moved column.
columnEdge: ProjectColumnEdge!
}
# The root query for implementing GraphQL mutations.
type Mutation {
# Applies a suggested topic to the repository.
acceptTopicSuggestion(input: AcceptTopicSuggestionInput!): AcceptTopicSuggestionPayload
# Adds a comment to an Issue or Pull Request.
addComment(input: AddCommentInput!): AddCommentPayload
# Adds a card to a ProjectColumn. Either `contentId` or `note` must be provided but **not** both.
addProjectCard(input: AddProjectCardInput!): AddProjectCardPayload
# Adds a column to a Project.
addProjectColumn(input: AddProjectColumnInput!): AddProjectColumnPayload
# Adds a review to a Pull Request.
addPullRequestReview(input: AddPullRequestReviewInput!): AddPullRequestReviewPayload
# Adds a comment to a review.
addPullRequestReviewComment(input: AddPullRequestReviewCommentInput!): AddPullRequestReviewCommentPayload
# Adds a reaction to a subject.
addReaction(input: AddReactionInput!): AddReactionPayload
# Adds a star to a Starrable.
addStar(input: AddStarInput!): AddStarPayload
# Creates a new project.
createProject(input: CreateProjectInput!): CreateProjectPayload
# Rejects a suggested topic for the repository.
declineTopicSuggestion(input: DeclineTopicSuggestionInput!): DeclineTopicSuggestionPayload
# Deletes a project.
deleteProject(input: DeleteProjectInput!): DeleteProjectPayload
# Deletes a project card.
deleteProjectCard(input: DeleteProjectCardInput!): DeleteProjectCardPayload
# Deletes a project column.
deleteProjectColumn(input: DeleteProjectColumnInput!): DeleteProjectColumnPayload
# Deletes a pull request review.
deletePullRequestReview(input: DeletePullRequestReviewInput!): DeletePullRequestReviewPayload
# Dismisses an approved or rejected pull request review.
dismissPullRequestReview(input: DismissPullRequestReviewInput!): DismissPullRequestReviewPayload
# Moves a project card to another place.
moveProjectCard(input: MoveProjectCardInput!): MoveProjectCardPayload
# Moves a project column to another place.
moveProjectColumn(input: MoveProjectColumnInput!): MoveProjectColumnPayload
# Removes outside collaborator from all repositories in an organization.
removeOutsideCollaborator(input: RemoveOutsideCollaboratorInput!): RemoveOutsideCollaboratorPayload
# Removes a reaction from a subject.
removeReaction(input: RemoveReactionInput!): RemoveReactionPayload
# Removes a star from a Starrable.
removeStar(input: RemoveStarInput!): RemoveStarPayload
# Set review requests on a pull request.
requestReviews(input: RequestReviewsInput!): RequestReviewsPayload
# Submits a pending pull request review.
submitPullRequestReview(input: SubmitPullRequestReviewInput!): SubmitPullRequestReviewPayload
# Updates an existing project.
updateProject(input: UpdateProjectInput!): UpdateProjectPayload
# Updates an existing project card.
updateProjectCard(input: UpdateProjectCardInput!): UpdateProjectCardPayload
# Updates an existing project column.
updateProjectColumn(input: UpdateProjectColumnInput!): UpdateProjectColumnPayload
# Updates the body of a pull request review.
updatePullRequestReview(input: UpdatePullRequestReviewInput!): UpdatePullRequestReviewPayload
# Updates a pull request review comment.
updatePullRequestReviewComment(input: UpdatePullRequestReviewCommentInput!): UpdatePullRequestReviewCommentPayload
# Updates viewers repository subscription state.
updateSubscription(input: UpdateSubscriptionInput!): UpdateSubscriptionPayload
# Replaces the repository's topics with the given topics.
updateTopics(input: UpdateTopicsInput!): UpdateTopicsPayload
}
# An object with an ID.
interface Node {
# ID of the object.
id: ID!
}
# 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
}
# An account on GitHub, with one or more owners, that has repositories, members and teams.
type Organization implements Node, Actor, ProjectOwner, RepositoryOwner, UniformResourceLocatable {
# A URL pointing to the organization's public avatar.
avatarUrl(
# The size of the resulting square image.
size: Int
): URI!
# Identifies the primary key from the database.
databaseId: Int @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
# The organization's public profile description.
description: String
# The organization's public email.
email: String
id: ID!
# The organization's public profile location.
location: String
# The organization's login name.
login: String!
# A list of users who are members of this organization.
members(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): UserConnection!
# The organization's public profile name.
name: String
# The HTTP path creating a new team
newTeamResourcePath: URI!
# The HTTP URL creating a new team
newTeamUrl: URI!
# The billing email for the organization.
organizationBillingEmail: String
# A list of repositories this user has pinned to their profile
pinnedRepositories(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# If non-null, filters repositories according to privacy
privacy: RepositoryPrivacy
# Ordering options for repositories returned from the connection
orderBy: RepositoryOrder
# Affiliation options for repositories returned from the connection
affiliations: [RepositoryAffiliation]
# If non-null, filters repositories according to whether they have been locked
isLocked: Boolean
): RepositoryConnection!
# Find project by number.
project(
# The project number to find.
number: Int!
): Project
# A list of projects under the owner.
projects(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# 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 HTTP path listing organization's projects
projectsResourcePath: URI!
# The HTTP URL listing organization's projects
projectsUrl: URI!
# A list of repositories that the user owns.
repositories(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# If non-null, filters repositories according to privacy
privacy: RepositoryPrivacy
# Ordering options for repositories returned from the connection
orderBy: RepositoryOrder
# Affiliation options for repositories returned from the connection
affiliations: [RepositoryAffiliation]
# If non-null, filters repositories according to whether they have been locked
isLocked: Boolean
# If non-null, filters repositories according to whether they are forks of another repository
isFork: Boolean
): RepositoryConnection!
# Find Repository.
repository(
# Name of Repository to find.
name: String!
): Repository
# The HTTP path for this user
resourcePath: URI!
# The Organization's SAML Identity Providers
samlIdentityProvider: OrganizationIdentityProvider
# Find an organization's team by its slug.
team(
# The name or slug of the team to find.
slug: String!
): Team
# A list of teams in this organization.
teams(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
# If non-null, filters teams according to privacy
privacy: TeamPrivacy
# If non-null, filters teams according to whether the viewer is an admin or member on team
role: TeamRole
# If non-null, filters teams with query on team name and team slug
query: String
# User logins to filter by
userLogins: [String!]
# Ordering options for teams returned from the connection
orderBy: TeamOrder
# If true, filters teams that are mapped to an LDAP Group (Enterprise only)
ldapMapped: Boolean
# If true, restrict to only root teams
rootTeamsOnly: Boolean = false
): TeamConnection!
# The HTTP path listing organization's teams
teamsResourcePath: URI!
# The HTTP URL listing organization's teams
teamsUrl: URI!
# The HTTP URL for this user
url: URI!
# Organization is adminable by the viewer.
viewerCanAdminister: Boolean!
# Can the current viewer create new projects on this owner.
viewerCanCreateProjects: Boolean!
# Viewer can create repositories on this organization
viewerCanCreateRepositories: Boolean!
# Viewer can create teams on this organization.
viewerCanCreateTeams: Boolean!
# Viewer is a member of this organization.
viewerIsAMember: Boolean!
# The organization's public profile URL.
websiteUrl: URI
}
# The connection type for Organization.
type OrganizationConnection {
# A list of edges.
edges: [OrganizationEdge]
# A list of nodes.
nodes: [Organization]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type OrganizationEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: Organization
}
# An Identity Provider configured to provision SAML and SCIM identities for Organizations
type OrganizationIdentityProvider implements Node {
# The digest algorithm used to sign SAML requests for the Identity Provider.
digestMethod: URI
# External Identities provisioned by this Identity Provider
externalIdentities(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): ExternalIdentityConnection!
id: ID!
# The x509 certificate used by the Identity Provder to sign assertions and responses.
idpCertificate: X509Certificate
# The Issuer Entity ID for the SAML Identity Provider
issuer: String
# Organization this Identity Provider belongs to
organization: Organization
# The signature algorithm used to sign SAML requests for the Identity Provider.
signatureMethod: URI
# The URL endpoint for the Identity Provider's SAML SSO.
ssoUrl: URI
}
# An Invitation for a user to an organization.
type OrganizationInvitation implements Node {
# The email address of the user invited to the organization.
email: String
id: ID!
# The type of invitation that was sent (e.g. email, user).
invitationType: OrganizationInvitationType!
# The user who was invited to the organization.
invitee: User
# The user who created the invitation.
inviter: User!
# The user's pending role in the organization (e.g. member, owner).
role: OrganizationInvitationRole!
}
# The connection type for OrganizationInvitation.
type OrganizationInvitationConnection {
# A list of edges.
edges: [OrganizationInvitationEdge]
# A list of nodes.
nodes: [OrganizationInvitation]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type OrganizationInvitationEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: OrganizationInvitation
}
# The possible organization invitation roles.
enum OrganizationInvitationRole {
# The user is invited to be a direct member of the organization.
DIRECT_MEMBER
# The user is invited to be an admin of the organization.
ADMIN
# The user is invited to be a billing manager of the organization.
BILLING_MANAGER
# The user's previous role will be reinstated.
REINSTATE
}
# The possible organization invitation types.
enum OrganizationInvitationType {
# The invitation was to an existing user.
USER
# The invitation was to an email address.
EMAIL
}
# Information about pagination in a connection.
type PageInfo {
# When paginating forwards, the cursor to continue.
endCursor: String
# When paginating forwards, are there more items?
hasNextPage: Boolean!
# When paginating backwards, are there more items?
hasPreviousPage: Boolean!
# When paginating backwards, the cursor to continue.
startCursor: String
}
# Projects manage issues, pull requests and notes within a project owner.
type Project implements Node, Closable, Updatable {
# The project's description body.
body: String
# The projects description body rendered to HTML.
bodyHTML: HTML!
# `true` if the object is closed (definition of closed may depend on type)
closed: Boolean!
# Identifies the date and time when the object was closed.
closedAt: DateTime
# List of columns in the project
columns(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): 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 @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
# The project's name.
name: String!
# The project's number.
number: Int!
# The project's owner. Currently limited to repositories and organizations.
owner: ProjectOwner!
# List of pending cards in this project
pendingCards(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): ProjectCardConnection!
# The HTTP path for this project
resourcePath: URI!
# Whether the project is open or closed.
state: ProjectState!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# The HTTP URL for this project
url: URI!
# Check if the current viewer can update this object.
viewerCanUpdate: Boolean!
}
# A card in a project.
type ProjectCard implements Node {
# The project column this card is associated under. A card may only belong to one
# project column at a time. The column field will be null if the card is created
# in a pending state and has yet to be associated with a column. Once cards are
# associated with a column, they will not become pending in the future.
#
column: ProjectColumn
# The card content item
content: ProjectCardItem
# Identifies the date and time when the object was created.
createdAt: DateTime!
# The actor who created this card
creator: Actor
# Identifies the primary key from the database.
databaseId: Int @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
# The card note
note: String
# The project that contains this card.
project: Project!
# The column that contains this card.
projectColumn: ProjectColumn! @deprecated(reason: "Use ProjectCard.column instead. The associated column will be null if the card is in a pending state.")
# The HTTP path for this card
resourcePath: URI!
# The state of ProjectCard
state: ProjectCardState
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# The HTTP URL for this card
url: URI!
}
# The connection type for ProjectCard.
type ProjectCardConnection {
# A list of edges.
edges: [ProjectCardEdge]
# A list of nodes.
nodes: [ProjectCard]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type ProjectCardEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: ProjectCard
}
# Types that can be inside Project Cards.
union ProjectCardItem = Issue | PullRequest
# Various content states of a ProjectCard
enum ProjectCardState {
# The card has content only.
CONTENT_ONLY
# The card has a note only.
NOTE_ONLY
# The card is redacted.
REDACTED
}
# A column inside a project.
type ProjectColumn implements Node {
# List of cards in the column
cards(
# Returns the first _n_ elements from the list.
first: Int
# Returns the elements in the list that come after the specified global ID.
after: String
# Returns the last _n_ elements from the list.
last: Int
# Returns the elements in the list that come before the specified global ID.
before: String
): ProjectCardConnection!
# Identifies the date and time when the object was created.
createdAt: DateTime!
# Identifies the primary key from the database.
databaseId: Int @deprecated(reason: "Exposed database IDs will eventually be removed in favor of global Relay IDs.")
id: ID!
# The project column's name.
name: String!
# The project that contains this column.
project: Project!
# The HTTP path for this project column
resourcePath: URI!
# Identifies the date and time when the object was last updated.
updatedAt: DateTime! @deprecated(reason: "General type updated timestamps will eventually be replaced by other field specific timestamps.")
# The HTTP URL for this project column
url: URI!
}
# The connection type for ProjectColumn.
type ProjectColumnConnection {
# A list of edges.
edges: [ProjectColumnEdge]
# A list of nodes.
nodes: [ProjectColumn]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.
totalCount: Int!
}
# An edge in a connection.
type ProjectColumnEdge {
# A cursor for use in pagination.
cursor: String!
# The item at the end of the edge.
node: ProjectColumn
}
# A list of projects associated with the owner.
type ProjectConnection {
# A list of edges.
edges: [ProjectEdge]
# A list of nodes.
nodes: [Project]
# Information to aid in pagination.
pageInfo: PageInfo!
# Identifies the total count of items in the connection.