Skip to main content

canvas_lms_api/resources/
progress.rs

1use chrono::{DateTime, Utc};
2use serde::{Deserialize, Serialize};
3
4/// A Canvas background job progress object.
5///
6/// Poll [`Progress::completion`] until `workflow_state` is `"completed"` or `"failed"`.
7#[derive(Debug, Clone, Deserialize, Serialize)]
8pub struct Progress {
9    pub id: u64,
10    pub context_id: Option<u64>,
11    pub context_type: Option<String>,
12    pub user_id: Option<u64>,
13    pub tag: Option<String>,
14    pub completion: Option<f64>,
15    pub workflow_state: Option<String>,
16    pub created_at: Option<DateTime<Utc>>,
17    pub updated_at: Option<DateTime<Utc>>,
18    pub message: Option<String>,
19    pub results: Option<serde_json::Value>,
20    pub url: Option<String>,
21}