@@ -63,9 +63,13 @@ pub struct Course {
6363 pub name : String ,
6464 pub title : String ,
6565 pub description : Option < String > ,
66+ /// /api/v8/core/courses/{course_id}
6667 pub details_url : String ,
68+ /// /api/v8/core/courses/{course_id}/unlock
6769 pub unlock_url : String ,
70+ /// /api/v8/core/courses/{course_id}/reviews
6871 pub reviews_url : String ,
72+ /// Typically empty.
6973 pub comet_url : String ,
7074 pub spyware_urls : Vec < String > ,
7175}
@@ -90,9 +94,11 @@ pub struct CourseData {
9094 pub organization_id : Option < u32 > ,
9195 pub disabled_status : Option < String > ,
9296 pub title : Option < String > ,
97+ /// Typically empty.
9398 pub material_url : Option < String > ,
9499 pub course_template_id : Option < u32 > ,
95100 pub hide_submission_results : bool ,
101+ /// Typically empty.
96102 pub external_scoreboard_url : Option < String > ,
97103 pub organization_slug : Option < String > ,
98104}
@@ -143,7 +149,9 @@ pub struct Exercise {
143149 pub soft_deadline : Option < String > ,
144150 pub soft_deadline_description : Option < String > ,
145151 pub checksum : String ,
152+ /// /api/v8/core/exercises/{exercise_id}/submissions
146153 pub return_url : String ,
154+ /// /api/v8/core/exercises/{exercise_id}/download
147155 pub zip_url : String ,
148156 pub returnable : bool ,
149157 pub requires_review : bool ,
@@ -156,8 +164,10 @@ pub struct Exercise {
156164 pub valgrind_strategy : String ,
157165 pub code_review_requests_enabled : bool ,
158166 pub run_tests_locally_action_enabled : bool ,
167+ /// Typically null.
159168 pub latest_submission_url : Option < String > ,
160169 pub latest_submission_id : Option < u32 > ,
170+ /// /api/v8/core/exercises/{exercise_id}/solution/download
161171 pub solution_zip_url : Option < String > ,
162172}
163173
@@ -292,7 +302,9 @@ pub struct ExerciseSubmission {
292302 pub created_at : DateTime < FixedOffset > ,
293303 pub all_tests_passed : bool ,
294304 pub points : Option < String > ,
305+ /// /api/v8/core/submissions/{submission_id}/download
295306 pub submitted_zip_url : String ,
307+ /// https://tmc.mooc.fi/paste/{paste_code}
296308 pub paste_url : Option < String > ,
297309 pub processing_time : Option < u32 > ,
298310 pub reviewed : bool ,
@@ -302,8 +314,11 @@ pub struct ExerciseSubmission {
302314/// post /api/v8/core/exercises/{exercise_id}/submissions
303315#[ derive( Debug , Deserialize , Serialize , JsonSchema , Clone ) ]
304316pub struct NewSubmission {
317+ /// https://tmc.mooc.fi/api/v8/core/submissions/{submission_id}
305318 pub show_submission_url : String ,
319+ /// https://tmc.mooc.fi/paste/{paste_code}
306320 pub paste_url : String , // use Option and serde_with::string_empty_as_none ?
321+ /// https://tmc.mooc.fi/submissions/{submission_id}
307322 pub submission_url : String ,
308323}
309324
@@ -340,17 +355,21 @@ pub struct SubmissionFinished {
340355 pub status : SubmissionStatus ,
341356 pub points : Vec < String > ,
342357 pub valgrind : Option < String > ,
358+ /// https://tmc.mooc.fi/submissions/{submission_id}}
343359 pub submission_url : String ,
360+ /// https://tmc.mooc.fi/exercises/{exercise_id}/solution
344361 pub solution_url : Option < String > ,
345362 pub submitted_at : String ,
346363 pub processing_time : Option < u32 > ,
347364 pub reviewed : bool ,
348365 pub requests_review : bool ,
366+ /// https://tmc.mooc.fi/paste/{paste_code}
349367 pub paste_url : Option < String > ,
350368 pub message_for_paste : Option < String > ,
351369 pub missing_review_points : Vec < String > ,
352370 pub test_cases : Option < Vec < TestCase > > ,
353371 pub feedback_questions : Option < Vec < SubmissionFeedbackQuestion > > ,
372+ /// /api/v8/core/submissions/{submission_id}/feedback
354373 pub feedback_answer_url : Option < String > ,
355374 pub error : Option < String > ,
356375 pub validations : Option < StyleValidationResult > ,
@@ -470,7 +489,9 @@ pub struct Review {
470489 pub review_body : String ,
471490 pub points : Vec < String > ,
472491 pub points_not_awarded : Vec < String > ,
492+ /// https://tmc.mooc.fi/submissions/{submission_id}/reviews
473493 pub url : String ,
494+ /// /api/v8/core/courses/{course_id}/reviews/{review_id}
474495 pub update_url : String ,
475496 pub created_at : DateTime < FixedOffset > ,
476497 pub updated_at : DateTime < FixedOffset > ,
0 commit comments