# GitLab Discussions API

**Canonical:** https://apis.io/apis/gitlab/gitlab-discussions-api/  
**Provider:** GitLab — https://apis.io/providers/gitlab/  
**Base URL:** https://gitlab.com/api/v4  
**Documentation:** https://docs.gitlab.com/api/rest/

GitLab Discussions API is one of 189 APIs that [GitLab](https://apis.io/providers/gitlab/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification and an AsyncAPI event-driven specification. This API exposes 16 JSON Schema definitions. Tagged areas include Discussions. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, authentication docs, an API reference, rate-limit docs, an AsyncAPI specification, and 16 JSON Schemas.

Use this API to manage [discussions](https://docs.gitlab.com/user/discussions/). This includes [comments, threads](https://docs.gitlab.com/user/discussions/), and system notes about changes to an object (for example, when a milestone changes). To manage label notes, use the [resource label events API](https://docs.gitlab.com/api/resource_label_events/).

## Operations (43)

| Method | Path | Summary |
|---|---|---|
| GET | `/api/v4/projects/{id}/issues/{noteable_id}/discussions` | List all discussions for an issue |
| POST | `/api/v4/projects/{id}/issues/{noteable_id}/discussions` | Create an issue discussion |
| GET | `/api/v4/projects/{id}/issues/{noteable_id}/discussions/{discussion_id}` | Retrieve a discussion for an issue |
| PUT | `/api/v4/projects/{id}/issues/{noteable_id}/discussions/{discussion_id}` | Resolve or unresolve an issue discussion |
| GET | `/api/v4/projects/{id}/issues/{noteable_id}/discussions/{discussion_id}/notes` | List comments in an issue discussion |
| POST | `/api/v4/projects/{id}/issues/{noteable_id}/discussions/{discussion_id}/notes` | Add a comment to an issue discussion |
| GET | `/api/v4/projects/{id}/issues/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Retrieve a comment from an issue discussion |
| PUT | `/api/v4/projects/{id}/issues/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Update a comment in an issue discussion |
| DELETE | `/api/v4/projects/{id}/issues/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Delete a comment from an issue discussion |
| GET | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions` | List all discussions for a snippet |
| POST | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions` | Create a snippet discussion |
| GET | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions/{discussion_id}` | Retrieve a discussion for a snippet |
| GET | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions/{discussion_id}/notes` | List comments in a snippet discussion |
| POST | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions/{discussion_id}/notes` | Add a comment to a snippet discussion |
| GET | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Retrieve a comment from a snippet discussion |
| PUT | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Update a comment in a snippet discussion |
| DELETE | `/api/v4/projects/{id}/snippets/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Delete a comment from a snippet discussion |
| GET | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions` | List all discussions for a merge request |
| POST | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions` | Create a merge request discussion |
| GET | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions/{discussion_id}` | Retrieve a discussion for a merge request |
| PUT | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions/{discussion_id}` | Resolve or unresolve a merge request discussion |
| GET | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions/{discussion_id}/notes` | List comments in a merge request discussion |
| POST | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions/{discussion_id}/notes` | Add a comment to a merge request discussion |
| GET | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Retrieve a comment from a merge request discussion |
| PUT | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Update a comment in a merge request discussion |
| DELETE | `/api/v4/projects/{id}/merge_requests/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Delete a comment from a merge request discussion |
| GET | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions` | List all discussions for a commit |
| POST | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions` | Create a commit discussion |
| GET | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions/{discussion_id}` | Retrieve a discussion for a commit |
| GET | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions/{discussion_id}/notes` | List comments in a commit discussion |
| POST | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions/{discussion_id}/notes` | Add a comment to a commit discussion |
| GET | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Retrieve a comment from a commit discussion |
| PUT | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Update a comment in a commit discussion |
| DELETE | `/api/v4/projects/{id}/repository/commits/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Delete a comment from a commit discussion |
| GET | `/api/v4/groups/{id}/epics/{noteable_id}/discussions` | List all discussions for an epic |
| POST | `/api/v4/groups/{id}/epics/{noteable_id}/discussions` | Create an epic discussion |
| GET | `/api/v4/groups/{id}/epics/{noteable_id}/discussions/{discussion_id}` | Retrieve a discussion for an epic |
| PUT | `/api/v4/groups/{id}/epics/{noteable_id}/discussions/{discussion_id}` | Resolve or unresolve an epic discussion |
| GET | `/api/v4/groups/{id}/epics/{noteable_id}/discussions/{discussion_id}/notes` | List comments in an epic discussion |
| POST | `/api/v4/groups/{id}/epics/{noteable_id}/discussions/{discussion_id}/notes` | Add a comment to an epic discussion |
| GET | `/api/v4/groups/{id}/epics/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Retrieve a comment from an epic discussion |
| PUT | `/api/v4/groups/{id}/epics/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Update a comment in an epic discussion |
| DELETE | `/api/v4/groups/{id}/epics/{noteable_id}/discussions/{discussion_id}/notes/{note_id}` | Delete a comment from an epic discussion |

## Machine-readable artifacts (65)

- **OpenAPI** — https://artifacts.apis.io/gitlab/openapi/gitlab-discussions-api-openapi.yml
- **Documentation** — https://docs.gitlab.com/api/openapi/
- **Documentation** — https://docs.gitlab.com/api/issues/
- **Authentication** — https://docs.gitlab.com/api/rest/authentication/
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-put-api-v4-application-settings-request-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-apientities-geo-node-status-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-apientities-geo-site-status-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-apientities-application-setting-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-post-api-v4-geo-status-request-schema.json
- **JSONSchema** — https://artifacts.apis.io/gitlab/json-schema/gitlab-put-api-v4-projects-id-request-schema.json
- **Documentation** — https://docs.gitlab.com/api/merge_requests/
- **Documentation** — https://docs.gitlab.com/api/pipelines/
- **Documentation** — https://docs.gitlab.com/api/jobs/
- **Documentation** — https://docs.gitlab.com/api/runners/
- **Documentation** — https://docs.gitlab.com/api/users/
- **Documentation** — https://docs.gitlab.com/api/repositories/
- **Documentation** — https://docs.gitlab.com/api/commits/
- **Documentation** — https://docs.gitlab.com/api/branches/
- **Documentation** — https://docs.gitlab.com/api/tags/
- **Documentation** — https://docs.gitlab.com/api/releases/
- **Documentation** — https://docs.gitlab.com/api/environments/
- **Documentation** — https://docs.gitlab.com/api/deployments/
- **Documentation** — https://docs.gitlab.com/api/pipeline_schedules/
- **Documentation** — https://docs.gitlab.com/api/labels/
- **Documentation** — https://docs.gitlab.com/api/milestones/
- **Documentation** — https://docs.gitlab.com/api/notes/
- **Documentation** — https://docs.gitlab.com/api/snippets/
- **Documentation** — https://docs.gitlab.com/api/packages/
- **Documentation** — https://docs.gitlab.com/api/container_registry/
- **Documentation** — https://docs.gitlab.com/api/vulnerabilities/
- **Documentation** — https://docs.gitlab.com/api/deploy_keys/
- **Documentation** — https://docs.gitlab.com/api/protected_branches/
- **Documentation** — https://docs.gitlab.com/api/wikis/
- **Documentation** — https://docs.gitlab.com/api/events/
- **Documentation** — https://docs.gitlab.com/api/search/
- **Documentation** — https://docs.gitlab.com/api/namespaces/
- **Documentation** — https://docs.gitlab.com/api/groups/
- **Documentation** — https://docs.gitlab.com/api/projects/
- **Documentation** — https://docs.gitlab.com/api/applications/
- **Documentation** — https://docs.gitlab.com/api/avatar/
- …and 25 more, listed in full on the page.

## Other GitLab APIs (12)

- [GitLab Orbit gRPC API](https://apis.io/apis/gitlab/gitlab-orbit-api/)
- [GitLab GraphQL API](https://apis.io/apis/gitlab/gitlab-graphql-api/)
- [GitLab Applications API](https://apis.io/apis/gitlab/gitlab-applications-api/)
- [GitLab Authorization API](https://apis.io/apis/gitlab/gitlab-authorization-api/)
- [GitLab Broadcast Messages API](https://apis.io/apis/gitlab/gitlab-broadcast-messages-api/)
- [GitLab Groups API](https://apis.io/apis/gitlab/gitlab-groups-api/)
- [GitLab Metadata API](https://apis.io/apis/gitlab/gitlab-metadata-api/)
- [GitLab Project Webhooks API](https://apis.io/apis/gitlab/gitlab-project-webhooks-api/)
- [GitLab Projects API](https://apis.io/apis/gitlab/gitlab-projects-api/)
- [GitLab Tokens API](https://apis.io/apis/gitlab/gitlab-tokens-api/)
- [GitLab User Info API](https://apis.io/apis/gitlab/gitlab-user-info-api/)
- [GitLab Webhook Configuration API](https://apis.io/apis/gitlab/gitlab-webhook-configuration-api/)

## Tags

Discussions

---

Profiled by [API Evangelist](https://apievangelist.com) and published on [APIs.io](https://apis.io/apis/gitlab/gitlab-discussions-api/). The API's provider profile, Kin Score and agent-readiness rating are at https://apis.io/providers/gitlab/.
