GitHub v3 REST API

Get a discussion

Get a specific discussion on a team’s page. OAuth access tokens require the read:discussion scope.

Note: You can also specify a team by org_id and team_id using the route GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}.

get
{protocol}://{hostname}/api/v3/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}

Path Parameters

orgstringrequired
team_slugstringrequired

team_slug parameter

discussion_numberintegerrequired

Response

200 application/json

Response

Team Discussion

A team discussion is a persistent record of a free-form conversation within a team.

authorobject | nullrequired

Simple User

Show Child Parameters
bodystringrequired

The main text of the discussion.

Example:Please suggest improvements to our workflow in comments.

body_htmlstringrequired

Example:<p>Hi! This is an area for us to collaborate as a team</p>

body_versionstringrequired

The current version of the body content. If provided, this update operation will be rejected if the given version does not match the latest version on the server.

Example:0307116bbf7ced493b8d8a346c650b71

comments_countintegerrequired

Example:0

comments_urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2343027/discussions/1/comments

created_atstring(date-time)required

Example:2018-01-25T18:56:31Z

last_edited_atstring | null(date-time)required
html_urlstring(uri)required

Example:https://github.com/orgs/github/teams/justice-league/discussions/1

node_idstringrequired

Example:MDE0OlRlYW1EaXNjdXNzaW9uMQ==

numberintegerrequired

The unique sequence number of a team discussion.

Example:42

pinnedbooleanrequired

Whether or not this discussion should be pinned for easy retrieval.

Example:true

privatebooleanrequired

Whether or not this discussion should be restricted to team members and organization administrators.

Example:true

team_urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2343027

titlestringrequired

The title of the discussion.

Example:How can we improve our workflow?

updated_atstring(date-time)required

Example:2018-01-25T18:56:31Z

urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2343027/discussions/1

reactionsobject
Show Child Parameters
get/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}
 
200 application/json

Update a discussion

Edits the title and body text of a discussion post. Only the parameters you provide are updated. OAuth access tokens require the write:discussion scope.

Note: You can also specify a team by org_id and team_id using the route PATCH /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}.

patch
{protocol}://{hostname}/api/v3/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}

Path Parameters

orgstringrequired
team_slugstringrequired

team_slug parameter

discussion_numberintegerrequired

Body

application/json
titlestring

The discussion post’s title.

bodystring

The discussion post’s body text.

Response

200 application/json

Response

Team Discussion

A team discussion is a persistent record of a free-form conversation within a team.

authorobject | nullrequired

Simple User

Show Child Parameters
bodystringrequired

The main text of the discussion.

Example:Please suggest improvements to our workflow in comments.

body_htmlstringrequired

Example:<p>Hi! This is an area for us to collaborate as a team</p>

body_versionstringrequired

The current version of the body content. If provided, this update operation will be rejected if the given version does not match the latest version on the server.

Example:0307116bbf7ced493b8d8a346c650b71

comments_countintegerrequired

Example:0

comments_urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2343027/discussions/1/comments

created_atstring(date-time)required

Example:2018-01-25T18:56:31Z

last_edited_atstring | null(date-time)required
html_urlstring(uri)required

Example:https://github.com/orgs/github/teams/justice-league/discussions/1

node_idstringrequired

Example:MDE0OlRlYW1EaXNjdXNzaW9uMQ==

numberintegerrequired

The unique sequence number of a team discussion.

Example:42

pinnedbooleanrequired

Whether or not this discussion should be pinned for easy retrieval.

Example:true

privatebooleanrequired

Whether or not this discussion should be restricted to team members and organization administrators.

Example:true

team_urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2343027

titlestringrequired

The title of the discussion.

Example:How can we improve our workflow?

updated_atstring(date-time)required

Example:2018-01-25T18:56:31Z

urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2343027/discussions/1

reactionsobject
Show Child Parameters
patch/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}

Body

{ "title": "Welcome to our first team post" }
 
200 application/json

Delete a discussion

Delete a discussion from a team’s page. OAuth access tokens require the write:discussion scope.

Note: You can also specify a team by org_id and team_id using the route DELETE /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}.

delete
{protocol}://{hostname}/api/v3/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}

Path Parameters

orgstringrequired
team_slugstringrequired

team_slug parameter

discussion_numberintegerrequired

Response

204

Response

delete/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}
 
204

List discussion comments

List all comments on a team discussion. OAuth access tokens require the read:discussion scope.

Note: You can also specify a team by org_id and team_id using the route GET /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments.

get
{protocol}://{hostname}/api/v3/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments

Query Parameters

directionstring

One of asc (ascending) or desc (descending).

Allowed values:ascdesc

Default:desc

per_pageinteger

Results per page (max 100)

Default:30

pageinteger

Page number of the results to fetch.

Default:1

Path Parameters

orgstringrequired
team_slugstringrequired

team_slug parameter

discussion_numberintegerrequired

Response

200 application/json

Response

A reply to a discussion within a team.

authorobject | nullrequired

Simple User

Show Child Parameters
bodystringrequired

The main text of the comment.

Example:I agree with this suggestion.

body_htmlstringrequired

Example:<p>Do you like apples?</p>

body_versionstringrequired

The current version of the body content. If provided, this update operation will be rejected if the given version does not match the latest version on the server.

Example:0307116bbf7ced493b8d8a346c650b71

created_atstring(date-time)required

Example:2018-01-15T23:53:58Z

last_edited_atstring | null(date-time)required
discussion_urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2403582/discussions/1

html_urlstring(uri)required

Example:https://github.com/orgs/github/teams/justice-league/discussions/1/comments/1

node_idstringrequired

Example:MDIxOlRlYW1EaXNjdXNzaW9uQ29tbWVudDE=

numberintegerrequired

The unique sequence number of a team discussion comment.

Example:42

updated_atstring(date-time)required

Example:2018-01-15T23:53:58Z

urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2403582/discussions/1/comments/1

reactionsobject
Show Child Parameters
get/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments
 
200 application/json

Create a discussion comment

Creates a new comment on a team discussion. OAuth access tokens require the write:discussion scope.

This endpoint triggers notifications. Creating content too quickly using this endpoint may result in secondary rate limiting. See “Secondary rate limits” and “Dealing with secondary rate limits” for details.

Note: You can also specify a team by org_id and team_id using the route POST /organizations/{org_id}/team/{team_id}/discussions/{discussion_number}/comments.

post
{protocol}://{hostname}/api/v3/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments

Path Parameters

orgstringrequired
team_slugstringrequired

team_slug parameter

discussion_numberintegerrequired

Body

application/json
bodystringrequired

The discussion comment’s body text.

Response

201 application/json

Response

Team Discussion Comment

A reply to a discussion within a team.

authorobject | nullrequired

Simple User

Show Child Parameters
bodystringrequired

The main text of the comment.

Example:I agree with this suggestion.

body_htmlstringrequired

Example:<p>Do you like apples?</p>

body_versionstringrequired

The current version of the body content. If provided, this update operation will be rejected if the given version does not match the latest version on the server.

Example:0307116bbf7ced493b8d8a346c650b71

created_atstring(date-time)required

Example:2018-01-15T23:53:58Z

last_edited_atstring | null(date-time)required
discussion_urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2403582/discussions/1

html_urlstring(uri)required

Example:https://github.com/orgs/github/teams/justice-league/discussions/1/comments/1

node_idstringrequired

Example:MDIxOlRlYW1EaXNjdXNzaW9uQ29tbWVudDE=

numberintegerrequired

The unique sequence number of a team discussion comment.

Example:42

updated_atstring(date-time)required

Example:2018-01-15T23:53:58Z

urlstring(uri)required

Example:https://api.github.com/organizations/1/team/2403582/discussions/1/comments/1

reactionsobject
Show Child Parameters
post/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments

Body

{ "body": "Do you like apples?" }
 
201 application/json