Skip to main content

Discussions

Reference documentation for GraphQL schema types in the Discussions category.

Mutations

addDiscussionComment

Mutation

Adds a comment to a Discussion, possibly as a reply to another comment.

Input fields for addDiscussionComment

Return fields for addDiscussionComment

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

comment (DiscussionComment)

The newly created discussion comment.

addDiscussionPollVote

Mutation

Vote for an option in a discussion poll.

Input fields for addDiscussionPollVote

Return fields for addDiscussionPollVote

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

pollOption (DiscussionPollOption)

The poll option that a vote was added to.

addUpvote

Mutation

Add an upvote to a discussion or discussion comment.

Input fields for addUpvote

Return fields for addUpvote

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

subject (Votable)

The votable subject.

closeDiscussion

Mutation

Close a discussion.

Input fields for closeDiscussion

Return fields for closeDiscussion

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussion (Discussion)

The discussion that was closed.

createDiscussion

Mutation

Create a discussion.

Input fields for createDiscussion

Return fields for createDiscussion

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussion (Discussion)

The discussion that was just created.

deleteDiscussion

Mutation

Delete a discussion and all of its replies.

Input fields for deleteDiscussion

Return fields for deleteDiscussion

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussion (Discussion)

The discussion that was just deleted.

deleteDiscussionComment

Mutation

Delete a discussion comment. If it has replies, wipe it instead.

Input fields for deleteDiscussionComment

Return fields for deleteDiscussionComment

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

comment (DiscussionComment)

The discussion comment that was just deleted.

markDiscussionCommentAsAnswer

Mutation

Mark a discussion comment as the chosen answer for discussions in an answerable category.

Input fields for markDiscussionCommentAsAnswer

Return fields for markDiscussionCommentAsAnswer

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussion (Discussion)

The discussion that includes the chosen comment.

removeUpvote

Mutation

Remove an upvote to a discussion or discussion comment.

Input fields for removeUpvote

Return fields for removeUpvote

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

subject (Votable)

The votable subject.

reopenDiscussion

Mutation

Reopen a discussion.

Input fields for reopenDiscussion

Return fields for reopenDiscussion

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussion (Discussion)

The discussion that was reopened.

unmarkDiscussionCommentAsAnswer

Mutation

Unmark a discussion comment as the chosen answer for discussions in an answerable category.

Input fields for unmarkDiscussionCommentAsAnswer

Return fields for unmarkDiscussionCommentAsAnswer

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussion (Discussion)

The discussion that includes the comment.

updateDiscussion

Mutation

Update a discussion.

Input fields for updateDiscussion

Return fields for updateDiscussion

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

discussion (Discussion)

The modified discussion.

updateDiscussionComment

Mutation

Update the contents of a comment on a Discussion.

Input fields for updateDiscussionComment

Return fields for updateDiscussionComment

NameDescription

clientMutationId (String)

A unique identifier for the client performing the mutation.

comment (DiscussionComment)

The modified discussion comment.

Objects

Discussion

Object

A discussion in a repository.

Discussion Implements

Fields for Discussion

NameDescription

activeLockReason (LockReason)

Reason that the conversation was locked.

answer (DiscussionComment)

The comment chosen as this discussion's answer, if any.

answerChosenAt (DateTime)

The time when a user chose this discussion's answer, if answered.

answerChosenBy (Actor)

The user who chose this discussion's answer, if answered.

author (Actor)

The actor who authored the discussion.

authorAssociation (CommentAuthorAssociation!)

Author's association with the subject of the comment.

body (String!)

The main text of the discussion post.

bodyHTML (HTML!)

The body rendered to HTML.

bodyText (String!)

The body rendered to text.

category (DiscussionCategory!)

The category for this discussion.

closed (Boolean!)

Indicates if the object is closed (definition of closed may depend on type).

closedAt (DateTime)

Identifies the date and time when the object was closed.

comments (DiscussionCommentConnection!)

The replies to the discussion.

Arguments for comments

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

createdAt (DateTime!)

Identifies the date and time when the object was created.

createdViaEmail (Boolean!)

Check if this comment was created via an email reply.

databaseId (Int)

Identifies the primary key from the database.

editor (Actor)

The actor who edited the comment.

id (ID!)

The Node ID of the Discussion object.

includesCreatedEdit (Boolean!)

Check if this comment was edited and includes an edit with the creation data.

isAnswered (Boolean)

Only return answered/unanswered discussions.

labels (LabelConnection)

A list of labels associated with the object.

Arguments for labels

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

  • orderBy (LabelOrder)

    Ordering options for labels returned from the connection.

lastEditedAt (DateTime)

The moment the editor made the last edit.

locked (Boolean!)

true if the object is locked.

number (Int!)

The number identifying this discussion within the repository.

poll (DiscussionPoll)

The poll associated with this discussion, if one exists.

publishedAt (DateTime)

Identifies when the comment was published at.

reactionGroups ([ReactionGroup!])

A list of reactions grouped by content left on the subject.

reactions (ReactionConnection!)

A list of Reactions left on the Issue.

Arguments for reactions

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

  • orderBy (ReactionOrder)

    Allows specifying the order in which reactions are returned.

repository (Repository!)

The repository associated with this node.

resourcePath (URI!)

The path for this discussion.

stateReason (DiscussionStateReason)

Identifies the reason for the discussion's state.

title (String!)

The title of this discussion.

updatedAt (DateTime!)

Identifies the date and time when the object was last updated.

upvoteCount (Int!)

Number of upvotes that this subject has received.

url (URI!)

The URL for this discussion.

userContentEdits (UserContentEditConnection)

A list of edits to this content.

Arguments for userContentEdits

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

viewerCanClose (Boolean!)

Indicates if the object can be closed by the viewer.

viewerCanDelete (Boolean!)

Check if the current viewer can delete this object.

viewerCanLabel (Boolean!)

Indicates if the viewer can edit labels for this object.

viewerCanReact (Boolean!)

Can user react to this subject.

viewerCanReopen (Boolean!)

Indicates if the object can be reopened by the viewer.

viewerCanSubscribe (Boolean!)

Check if the viewer is able to change their subscription status for the repository.

viewerCanUpdate (Boolean!)

Check if the current viewer can update this object.

viewerCanUpvote (Boolean!)

Whether or not the current user can add or remove an upvote on this subject.

viewerDidAuthor (Boolean!)

Did the viewer author this comment.

viewerHasUpvoted (Boolean!)

Whether or not the current user has already upvoted this subject.

viewerSubscription (SubscriptionState)

Identifies if the viewer is watching, not watching, or ignoring the subscribable entity.

DiscussionCategory

Object

A category for discussions in a repository.

DiscussionCategory Implements

Fields for DiscussionCategory

NameDescription

createdAt (DateTime!)

Identifies the date and time when the object was created.

description (String)

A description of this category.

emoji (String!)

An emoji representing this category.

emojiHTML (HTML!)

This category's emoji rendered as HTML.

id (ID!)

The Node ID of the DiscussionCategory object.

isAnswerable (Boolean!)

Whether or not discussions in this category support choosing an answer with the markDiscussionCommentAsAnswer mutation.

name (String!)

The name of this category.

repository (Repository!)

The repository associated with this node.

slug (String!)

The slug of this category.

updatedAt (DateTime!)

Identifies the date and time when the object was last updated.

DiscussionCategoryConnection

Object

The connection type for DiscussionCategory.

Fields for DiscussionCategoryConnection

NameDescription

edges ([DiscussionCategoryEdge])

A list of edges.

nodes ([DiscussionCategory])

A list of nodes.

pageInfo (PageInfo!)

Information to aid in pagination.

totalCount (Int!)

Identifies the total count of items in the connection.

DiscussionCategoryEdge

Object

An edge in a connection.

Fields for DiscussionCategoryEdge

NameDescription

cursor (String!)

A cursor for use in pagination.

node (DiscussionCategory)

The item at the end of the edge.

DiscussionComment

Object

A comment on a discussion.

DiscussionComment Implements

Fields for DiscussionComment

NameDescription

author (Actor)

The actor who authored the comment.

authorAssociation (CommentAuthorAssociation!)

Author's association with the subject of the comment.

body (String!)

The body as Markdown.

bodyHTML (HTML!)

The body rendered to HTML.

bodyText (String!)

The body rendered to text.

createdAt (DateTime!)

Identifies the date and time when the object was created.

createdViaEmail (Boolean!)

Check if this comment was created via an email reply.

databaseId (Int)

Identifies the primary key from the database.

deletedAt (DateTime)

The time when this replied-to comment was deleted.

discussion (Discussion)

The discussion this comment was created in.

editor (Actor)

The actor who edited the comment.

id (ID!)

The Node ID of the DiscussionComment object.

includesCreatedEdit (Boolean!)

Check if this comment was edited and includes an edit with the creation data.

isAnswer (Boolean!)

Has this comment been chosen as the answer of its discussion?.

isMinimized (Boolean!)

Returns whether or not a comment has been minimized.

lastEditedAt (DateTime)

The moment the editor made the last edit.

minimizedReason (String)

Returns why the comment was minimized. One of abuse, off-topic, outdated, resolved, duplicate, spam, and low-quality. Note that the case and formatting of these values differs from the inputs to the MinimizeComment mutation.

publishedAt (DateTime)

Identifies when the comment was published at.

reactionGroups ([ReactionGroup!])

A list of reactions grouped by content left on the subject.

reactions (ReactionConnection!)

A list of Reactions left on the Issue.

Arguments for reactions

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

  • orderBy (ReactionOrder)

    Allows specifying the order in which reactions are returned.

replies (DiscussionCommentConnection!)

The threaded replies to this comment.

Arguments for replies

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

replyTo (DiscussionComment)

The discussion comment this comment is a reply to.

resourcePath (URI!)

The path for this discussion comment.

updatedAt (DateTime!)

Identifies the date and time when the object was last updated.

upvoteCount (Int!)

Number of upvotes that this subject has received.

url (URI!)

The URL for this discussion comment.

userContentEdits (UserContentEditConnection)

A list of edits to this content.

Arguments for userContentEdits

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

viewerCanDelete (Boolean!)

Check if the current viewer can delete this object.

viewerCanMarkAsAnswer (Boolean!)

Can the current user mark this comment as an answer?.

viewerCanMinimize (Boolean!)

Check if the current viewer can minimize this object.

viewerCanReact (Boolean!)

Can user react to this subject.

viewerCanUnmarkAsAnswer (Boolean!)

Can the current user unmark this comment as an answer?.

viewerCanUnminimize (Boolean!)

Check if the current viewer can unminimize this object.

viewerCanUpdate (Boolean!)

Check if the current viewer can update this object.

viewerCanUpvote (Boolean!)

Whether or not the current user can add or remove an upvote on this subject.

viewerCannotUpdateReasons ([CommentCannotUpdateReason!]!)

Reasons why the current viewer can not update this comment.

viewerDidAuthor (Boolean!)

Did the viewer author this comment.

viewerHasUpvoted (Boolean!)

Whether or not the current user has already upvoted this subject.

DiscussionCommentConnection

Object

The connection type for DiscussionComment.

Fields for DiscussionCommentConnection

NameDescription

edges ([DiscussionCommentEdge])

A list of edges.

nodes ([DiscussionComment])

A list of nodes.

pageInfo (PageInfo!)

Information to aid in pagination.

totalCount (Int!)

Identifies the total count of items in the connection.

DiscussionCommentEdge

Object

An edge in a connection.

Fields for DiscussionCommentEdge

NameDescription

cursor (String!)

A cursor for use in pagination.

node (DiscussionComment)

The item at the end of the edge.

DiscussionConnection

Object

The connection type for Discussion.

Fields for DiscussionConnection

NameDescription

edges ([DiscussionEdge])

A list of edges.

nodes ([Discussion])

A list of nodes.

pageInfo (PageInfo!)

Information to aid in pagination.

totalCount (Int!)

Identifies the total count of items in the connection.

DiscussionEdge

Object

An edge in a connection.

Fields for DiscussionEdge

NameDescription

cursor (String!)

A cursor for use in pagination.

node (Discussion)

The item at the end of the edge.

DiscussionPoll

Object

A poll for a discussion.

DiscussionPoll Implements

Fields for DiscussionPoll

NameDescription

discussion (Discussion)

The discussion that this poll belongs to.

id (ID!)

The Node ID of the DiscussionPoll object.

options (DiscussionPollOptionConnection)

The options for this poll.

Arguments for options

  • after (String)

    Returns the elements in the list that come after the specified cursor.

  • before (String)

    Returns the elements in the list that come before the specified cursor.

  • first (Int)

    Returns the first n elements from the list.

  • last (Int)

    Returns the last n elements from the list.

question (String!)

The question that is being asked by this poll.

totalVoteCount (Int!)

The total number of votes that have been cast for this poll.

viewerCanVote (Boolean!)

Indicates if the viewer has permission to vote in this poll.

viewerHasVoted (Boolean!)

Indicates if the viewer has voted for any option in this poll.

DiscussionPollOption

Object

An option for a discussion poll.

DiscussionPollOption Implements

Fields for DiscussionPollOption

NameDescription

id (ID!)

The Node ID of the DiscussionPollOption object.

option (String!)

The text for this option.

poll (DiscussionPoll)

The discussion poll that this option belongs to.

totalVoteCount (Int!)

The total number of votes that have been cast for this option.

viewerHasVoted (Boolean!)

Indicates if the viewer has voted for this option in the poll.

DiscussionPollOptionConnection

Object

The connection type for DiscussionPollOption.

Fields for DiscussionPollOptionConnection

NameDescription

edges ([DiscussionPollOptionEdge])

A list of edges.

nodes ([DiscussionPollOption])

A list of nodes.

pageInfo (PageInfo!)

Information to aid in pagination.

totalCount (Int!)

Identifies the total count of items in the connection.

DiscussionPollOptionEdge

Object

An edge in a connection.

Fields for DiscussionPollOptionEdge

NameDescription

cursor (String!)

A cursor for use in pagination.

node (DiscussionPollOption)

The item at the end of the edge.

PinnedDiscussion

Object

A Pinned Discussion is a discussion pinned to a repository's index page.

PinnedDiscussion Implements

Fields for PinnedDiscussion

NameDescription

createdAt (DateTime!)

Identifies the date and time when the object was created.