canvas_lms_api/resources/params/
assignment_params.rs1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3
4#[derive(Debug, Default, Serialize, Deserialize)]
5pub struct CreateAssignmentParams {
6 pub name: String,
7 #[serde(skip_serializing_if = "Option::is_none")]
8 pub description: Option<String>,
9 #[serde(skip_serializing_if = "Option::is_none")]
10 pub due_at: Option<DateTime<Utc>>,
11 #[serde(skip_serializing_if = "Option::is_none")]
12 pub unlock_at: Option<DateTime<Utc>>,
13 #[serde(skip_serializing_if = "Option::is_none")]
14 pub lock_at: Option<DateTime<Utc>>,
15 #[serde(skip_serializing_if = "Option::is_none")]
16 pub points_possible: Option<f64>,
17 #[serde(skip_serializing_if = "Option::is_none")]
18 pub grading_type: Option<String>,
19 #[serde(skip_serializing_if = "Option::is_none")]
20 pub submission_types: Option<Vec<String>>,
21 #[serde(skip_serializing_if = "Option::is_none")]
22 pub published: Option<bool>,
23 #[serde(skip_serializing_if = "Option::is_none")]
24 pub assignment_group_id: Option<u64>,
25 #[serde(skip_serializing_if = "Option::is_none")]
26 pub position: Option<u64>,
27 #[serde(skip_serializing_if = "Option::is_none")]
28 pub omit_from_final_grade: Option<bool>,
29}
30
31#[derive(Debug, Default, Serialize, Deserialize)]
32pub struct UpdateAssignmentParams {
33 #[serde(skip_serializing_if = "Option::is_none")]
34 pub name: Option<String>,
35 #[serde(skip_serializing_if = "Option::is_none")]
36 pub description: Option<String>,
37 #[serde(skip_serializing_if = "Option::is_none")]
38 pub due_at: Option<DateTime<Utc>>,
39 #[serde(skip_serializing_if = "Option::is_none")]
40 pub points_possible: Option<f64>,
41 #[serde(skip_serializing_if = "Option::is_none")]
42 pub published: Option<bool>,
43}