How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

GitHub Discussions API

The Discussions API from GitHub — 14 operation(s) for discussions.

GitHub Discussions API is one of 350 APIs that GitHub publishes on the APIs.io network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification.

Tagged areas include Discussions. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, an AsyncAPI specification, and an API reference.

This API exposes 30 operations across 14 paths, and defines 5 schemas. It is described by OpenAPI 3.2.0, at version 1.1.4.

Requests are made against a single base URL, {protocol}://{hostname}/api/v3.

30 operations 14 paths 5 schemas 6 DELETE12 GET4 PATCH8 POST

Metadata

The identity and technical contract details declared by the specification.

Specification
OpenAPI 3.2.0
API Version
1.1.4
Base URL
https://api.github.com
Authentication
HTTP Bearer
Contact
License
Terms of Service
Resource Areas
1

Authentication & Security 1

GitHub Discussions API declares 1 security scheme for authenticating requests. It accepts HTTP bearer tokens (bearerHttpAuthentication).

  • bearerHttpAuthentication — Bearer Token

Paths & Operations 30

Across 14 paths, the API surfaces 30 operations — 6 DELETE, 12 GET, 4 PATCH, 8 POST. Each is listed below with its method, path, parameters, and response codes.

Discussions 30
GET
/orgs/{org}/teams/{team_slug}/discussions
GitHub List Discussions
listDiscussions 6 params → 200
POST
/orgs/{org}/teams/{team_slug}/discussions
GitHub Create Discussion
createDiscussion 2 params body → 201
GET
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}
GitHub Get Discussion
getDiscussion 3 params → 200
PATCH
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}
GitHub Update Discussion
updateDiscussion 3 params body → 200
DELETE
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}
GitHub Delete Discussion
deleteDiscussion 3 params → 204
GET
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments
GitHub List Discussion Comments
listDiscussionComments 6 params → 200
POST
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments
GitHub Create Discussion Comment
createDiscussionComment 3 params body → 201
GET
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}
GitHub Get Discussion Comment
getDiscussionComment 4 params → 200
PATCH
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}
GitHub Update Discussion Comment
updateDiscussionComment 4 params body → 200
DELETE
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}
GitHub Delete Discussion Comment
deleteDiscussionComment 4 params → 204
GET
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions
GitHub List Reactions for Team Discussion Comment
listReactionsForTeamDiscussionComment 7 params → 200
POST
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions
GitHub Create Reaction for Team Discussion Comment
createReactionForTeamDiscussionComment 4 params body → 200201
DELETE
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/comments/{comment_number}/reactions/{reaction_id}
GitHub Delete Team Discussion Comment Reaction
deleteTeamDiscussionCommentReaction 5 params → 204
GET
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions
GitHub List Reactions for Team Discussion
listReactionsForTeamDiscussion 6 params → 200
POST
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions
GitHub Create Reaction for Team Discussion
createReactionForTeamDiscussion 3 params body → 200201
DELETE
/orgs/{org}/teams/{team_slug}/discussions/{discussion_number}/reactions/{reaction_id}
GitHub Delete Team Discussion Reaction
deleteTeamDiscussionReaction 4 params → 204
GET
/teams/{team_id}/discussionsdeprecated
GitHub List Discussions (legacy)
listDiscussionsLegacy 4 params → 200
POST
/teams/{team_id}/discussionsdeprecated
GitHub Create Discussion (legacy)
createDiscussionLegacy 1 param body → 201
GET
/teams/{team_id}/discussions/{discussion_number}deprecated
GitHub Get Discussion (legacy)
getDiscussionLegacy 2 params → 200
PATCH
/teams/{team_id}/discussions/{discussion_number}deprecated
GitHub Update Discussion (legacy)
updateDiscussionLegacy 2 params body → 200
DELETE
/teams/{team_id}/discussions/{discussion_number}deprecated
GitHub Delete Discussion (legacy)
deleteDiscussionLegacy 2 params → 204
GET
/teams/{team_id}/discussions/{discussion_number}/commentsdeprecated
GitHub List Discussion Comments (legacy)
listDiscussionCommentsLegacy 5 params → 200
POST
/teams/{team_id}/discussions/{discussion_number}/commentsdeprecated
GitHub Create Discussion Comment (legacy)
createDiscussionCommentLegacy 2 params body → 201
GET
/teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}deprecated
GitHub Get Discussion Comment (legacy)
getDiscussionCommentLegacy 3 params → 200
PATCH
/teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}deprecated
GitHub Update Discussion Comment (legacy)
updateDiscussionCommentLegacy 3 params body → 200
DELETE
/teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}deprecated
GitHub Delete Discussion Comment (legacy)
deleteDiscussionCommentLegacy 3 params → 204
GET
/teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactionsdeprecated
GitHub List Reactions for Team Discussion Comment (legacy)
listReactionsForTeamDiscussionCommentLegacy 6 params → 200
POST
/teams/{team_id}/discussions/{discussion_number}/comments/{comment_number}/reactionsdeprecated
GitHub Create Reaction for Team Discussion Comment (legacy)
createReactionForTeamDiscussionCommentLegacy 3 params body → 201
GET
/teams/{team_id}/discussions/{discussion_number}/reactionsdeprecated
GitHub List Reactions for Team Discussion (legacy)
listReactionsForTeamDiscussionLegacy 5 params → 200
POST
/teams/{team_id}/discussions/{discussion_number}/reactionsdeprecated
GitHub Create Reaction for Team Discussion (legacy)
createReactionForTeamDiscussionLegacy 2 params body → 201

Schemas 5

The contract defines 5 schemas that model the data the API accepts and returns. The most detailed are nullable-simple-user (21 properties), team-discussion (18 properties), team-discussion-comment (13 properties), reaction-rollup (10 properties). Each schema is shown below with its type and property counts.

team-discussion
object
A team discussion is a persistent record of a free-form conversation within a team.
18 properties 17 required
reaction-rollup
object
10 properties 10 required
team-discussion-comment
object
A reply to a discussion within a team.
13 properties 12 required
reaction
object
Reactions to conversations provide a way to help people express their feelings more simply and effectively.
5 properties 5 required
nullable-simple-user
objectnull
A GitHub user.
21 properties 18 required

Specification

The full machine-readable OpenAPI contract behind this narrative.

Source

github-discussions-api-openapi.yml Raw ↑

Other APIs GitHub publishes across the network.

GitHub Events API
GitHub Feeds API
GitHub Gists API
GitHub Issues API
GitHub Licenses API
GitHub Markdown API
GitHub Meta API
GitHub Notifications API
GitHub Octocat API
GitHub Projects API
GitHub Repos API
GitHub Search API
Where this information came from

This is an independent, third-party profile of GitHub Discussions API, published by API Evangelist. We do not operate, host, resell, or support these APIs, and we are not affiliated with or endorsed by the company unless stated above. Everything here is built from publicly available information — the company's own site, developer portal, documentation, public repositories, and the specifications it publishes for public use. Nothing is obtained by breaching a system, defeating an access control, or using credentials.

The Kin Score and Agent Readiness rating are independently calculated assessments of a company's public API artifacts, scored against a published rubric. They are not certifications, endorsements, security assessments, or audits.

Corrections, re-scores, and removal are free — no partnership or purchase required, and you do not need to justify the request. A removed company is recorded as unrated, never scored zero for having asked. Acknowledgement within one business day; removal within two.

info@apievangelist.com · Read the full data-sourcing policy →
On a security or compliance team? Put security in the subject line and you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.