# Canvas Discussion Topics API

**Canonical:** https://apis.io/apis/canvas/canvas-discussion-topics-api/  
**Provider:** Canvas — https://apis.io/providers/canvas/  
**Base URL:** https://canvas.instructure.com/api/v1  
**Documentation:** https://canvas.instructure.com/doc/api/

Canvas Discussion Topics API is one of 145 APIs that [Canvas](https://apis.io/providers/canvas/) publishes on the [APIs.io](https://apis.io/) network, described by a machine-readable OpenAPI specification. Tagged areas include Discussion Topics. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, authentication docs, a GitHub repository, an API reference, and rate-limit docs.

The Discussion Topics API from Canvas — 36 operation(s) for discussion topics.

## Operations (58)

| Method | Path | Summary |
|---|---|---|
| GET | `/v1/courses/{course_id}/discussion_topics` | List discussion topics |
| POST | `/v1/courses/{course_id}/discussion_topics` | Create a new discussion topic |
| GET | `/v1/groups/{group_id}/discussion_topics` | List discussion topics |
| POST | `/v1/groups/{group_id}/discussion_topics` | Create a new discussion topic |
| PUT | `/v1/courses/{course_id}/discussion_topics/{topic_id}` | Update a topic |
| DELETE | `/v1/courses/{course_id}/discussion_topics/{topic_id}` | Delete a topic |
| GET | `/v1/courses/{course_id}/discussion_topics/{topic_id}` | Get a single topic |
| PUT | `/v1/groups/{group_id}/discussion_topics/{topic_id}` | Update a topic |
| DELETE | `/v1/groups/{group_id}/discussion_topics/{topic_id}` | Delete a topic |
| GET | `/v1/groups/{group_id}/discussion_topics/{topic_id}` | Get a single topic |
| POST | `/v1/courses/{course_id}/discussion_topics/reorder` | Reorder pinned topics |
| POST | `/v1/groups/{group_id}/discussion_topics/reorder` | Reorder pinned topics |
| PUT | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries/{id}` | Update an entry |
| DELETE | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries/{id}` | Delete an entry |
| PUT | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries/{id}` | Update an entry |
| DELETE | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries/{id}` | Delete an entry |
| GET | `/v1/courses/{course_id}/discussion_topics/{topic_id}/summaries` | Find Last Summary |
| POST | `/v1/courses/{course_id}/discussion_topics/{topic_id}/summaries` | Find or Create Summary |
| GET | `/v1/groups/{group_id}/discussion_topics/{topic_id}/summaries` | Find Last Summary |
| POST | `/v1/groups/{group_id}/discussion_topics/{topic_id}/summaries` | Find or Create Summary |
| PUT | `/v1/courses/{course_id}/discussion_topics/{topic_id}/summaries/disable` | Disable summary |
| PUT | `/v1/groups/{group_id}/discussion_topics/{topic_id}/summaries/disable` | Disable summary |
| POST | `/v1/courses/{course_id}/discussion_topics/{topic_id}/summaries/{summary_id}/feedback` | Summary Feedback |
| POST | `/v1/groups/{group_id}/discussion_topics/{topic_id}/summaries/{summary_id}/feedback` | Summary Feedback |
| GET | `/v1/courses/{course_id}/discussion_topics/{topic_id}/view` | Get the full topic |
| GET | `/v1/groups/{group_id}/discussion_topics/{topic_id}/view` | Get the full topic |
| POST | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries` | Post an entry |
| GET | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries` | List topic entries |
| POST | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries` | Post an entry |
| GET | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries` | List topic entries |
| POST | `/v1/courses/{course_id}/discussion_topics/{topic_id}/duplicate` | Duplicate discussion topic |
| POST | `/v1/groups/{group_id}/discussion_topics/{topic_id}/duplicate` | Duplicate discussion topic |
| POST | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries/{entry_id}/replies` | Post a reply |
| GET | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries/{entry_id}/replies` | List entry replies |
| POST | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries/{entry_id}/replies` | Post a reply |
| GET | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries/{entry_id}/replies` | List entry replies |
| GET | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entry_list` | List entries |
| GET | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entry_list` | List entries |
| PUT | `/v1/courses/{course_id}/discussion_topics/{topic_id}/read` | Mark topic as read |
| DELETE | `/v1/courses/{course_id}/discussion_topics/{topic_id}/read` | Mark topic as unread |
| PUT | `/v1/groups/{group_id}/discussion_topics/{topic_id}/read` | Mark topic as read |
| DELETE | `/v1/groups/{group_id}/discussion_topics/{topic_id}/read` | Mark topic as unread |
| PUT | `/v1/courses/{course_id}/discussion_topics/read_all` | Mark all topic as read |
| PUT | `/v1/groups/{group_id}/discussion_topics/read_all` | Mark all topic as read |
| PUT | `/v1/courses/{course_id}/discussion_topics/{topic_id}/read_all` | Mark all entries as read |
| DELETE | `/v1/courses/{course_id}/discussion_topics/{topic_id}/read_all` | Mark all entries as unread |
| PUT | `/v1/groups/{group_id}/discussion_topics/{topic_id}/read_all` | Mark all entries as read |
| DELETE | `/v1/groups/{group_id}/discussion_topics/{topic_id}/read_all` | Mark all entries as unread |
| PUT | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries/{entry_id}/read` | Mark entry as read |
| DELETE | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries/{entry_id}/read` | Mark entry as unread |
| PUT | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries/{entry_id}/read` | Mark entry as read |
| DELETE | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries/{entry_id}/read` | Mark entry as unread |
| POST | `/v1/courses/{course_id}/discussion_topics/{topic_id}/entries/{entry_id}/rating` | Rate entry |
| POST | `/v1/groups/{group_id}/discussion_topics/{topic_id}/entries/{entry_id}/rating` | Rate entry |
| PUT | `/v1/courses/{course_id}/discussion_topics/{topic_id}/subscribed` | Subscribe to a topic |
| DELETE | `/v1/courses/{course_id}/discussion_topics/{topic_id}/subscribed` | Unsubscribe from a topic |
| PUT | `/v1/groups/{group_id}/discussion_topics/{topic_id}/subscribed` | Subscribe to a topic |
| DELETE | `/v1/groups/{group_id}/discussion_topics/{topic_id}/subscribed` | Unsubscribe from a topic |

## Machine-readable artifacts (11)

- **OpenAPI** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/openapi/canvas-discussion-topics-api-openapi.yml
- **Documentation** — https://canvas.instructure.com/doc/api/
- **Authentication** — https://canvas.instructure.com/doc/api/file.oauth.html
- **Pagination** — https://canvas.instructure.com/doc/api/file.pagination.html
- **GitHubRepository** — https://github.com/instructure/canvas-lms
- **APIReference** — https://canvas.instructure.com/doc/api/
- **Swagger** — https://canvas.instructure.com/doc/api/api-docs.json
- **RateLimits** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/rate-limits/canvas-rate-limits.yml
- **OAuthScopes** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/scopes/canvas-scopes.yml
- **ErrorCatalog** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/errors/canvas-problem-types.yml
- **DataModel** — https://raw.githubusercontent.com/api-evangelist/canvas/refs/heads/main/data-model/canvas-data-model.yml

## Other Canvas APIs (12)

- [Canvas LMS GraphQL API](https://apis.io/apis/canvas/canvas-lms-graphql-api/)
- [Canvas LTI Integrations](https://apis.io/apis/canvas/canvas-lti-integrations/)
- [Canvas Courses API](https://apis.io/apis/canvas/canvas-courses-api/)
- [Canvas Access Tokens API](https://apis.io/apis/canvas/canvas-access-tokens-api/)
- [Canvas Accessibility Course Scans API](https://apis.io/apis/canvas/canvas-accessibility-course-scans-api/)
- [Canvas Accessibility Course Statistics API](https://apis.io/apis/canvas/canvas-accessibility-course-statistics-api/)
- [Canvas Account Calendars API](https://apis.io/apis/canvas/canvas-account-calendars-api/)
- [Canvas Account Domain Lookups API](https://apis.io/apis/canvas/canvas-account-domain-lookups-api/)
- [Canvas Account Notifications API](https://apis.io/apis/canvas/canvas-account-notifications-api/)
- [Canvas Account Reports API](https://apis.io/apis/canvas/canvas-account-reports-api/)
- [Canvas Accounts API](https://apis.io/apis/canvas/canvas-accounts-api/)
- [Canvas Accounts (Lti) API](https://apis.io/apis/canvas/canvas-accounts-lti-api/)

## Tags

Discussion Topics

---

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