Skip to main content

canvas_lms_api/resources/
discussion_topic.rs

1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3
4/// A Canvas discussion topic (announcement or discussion board post).
5#[derive(Debug, Clone, Deserialize, Serialize)]
6pub struct DiscussionTopic {
7    pub id: u64,
8    pub course_id: Option<u64>,
9    pub title: Option<String>,
10    pub message: Option<String>,
11    pub html_url: Option<String>,
12    pub posted_at: Option<DateTime<Utc>>,
13    pub last_reply_at: Option<DateTime<Utc>>,
14    pub require_initial_post: Option<bool>,
15    pub user_can_see_posts: Option<bool>,
16    pub discussion_subentry_count: Option<u64>,
17    pub read_state: Option<String>,
18    pub unread_count: Option<u64>,
19    pub subscribed: Option<bool>,
20    pub discussion_type: Option<String>,
21    pub published: Option<bool>,
22    pub locked: Option<bool>,
23    pub pinned: Option<bool>,
24    pub locked_for_user: Option<bool>,
25    pub assignment_id: Option<u64>,
26    pub delayed_post_at: Option<DateTime<Utc>>,
27    pub due_at: Option<DateTime<Utc>>,
28}