Skip to content

Learning DTO

Описание сущностей и типов из src/dto/learning/.

Обогащено snapshot-данными бэкенд-DTO (38 из 38 типов сопоставлено, snapshot от 2026-05-05T13:21:51.699Z).

Содержание


CourseDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/CourseDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
titlestringдаstring
descriptionstring | nullнетstring?
isArchivedbooleanдаbool
requireProctoringbooleanдаbool
regionsCourseRegionDto[]даList<CourseRegionDto>
modulesCourseModuleDto[]даList<CourseModuleDto>
quizQuizSummaryDto | nullнетQuizSummaryDto?
createDateTimestringдаDateTimeOffset
updateDateTimestring | nullнетDateTimeOffset?

Пример

json
{
  "id": 0,
  "title": "string",
  "description": "string",
  "isArchived": false,
  "requireProctoring": false,
  "regions": [],
  "modules": [],
  "quiz": "<quizsummarydto>",
  "createDateTime": "2026-05-05T08:00:00Z",
  "updateDateTime": "2026-05-05T08:00:00Z"
}


CourseModuleDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/CourseModuleDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
courseIdnumberдаint
titlestringдаstring
ordernumberдаint
sectionsCourseSectionDto[]даList<CourseSectionDto>
createDateTimestringдаDateTimeOffset
updateDateTimestring | nullнетDateTimeOffset?

Пример

json
{
  "id": 0,
  "courseId": 0,
  "title": "string",
  "order": 0,
  "sections": [],
  "createDateTime": "2026-05-05T08:00:00Z",
  "updateDateTime": "2026-05-05T08:00:00Z"
}


CourseProgressDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Progress/CourseProgressDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
statusCourseStatusDtoдаCourseStatusDto
lastSectionIdnumber | nullнетint?
completedSectionIdsnumber[]даList<int>
completedAtstring | nullнетDateTime?
proctorTokenstring | nullнетstring?
proctoringProctoringResultDto | nullнетProctoringResultDto?

Пример

json
{
  "status": "<CourseStatusDto>",
  "lastSectionId": 0,
  "completedSectionIds": [],
  "completedAt": "2026-05-05T08:00:00Z",
  "proctorToken": "string",
  "proctoring": "<proctoringresultdto>"
}


CourseRegionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/CourseRegionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
regionCodeIdnumberдаint

Пример

json
{
  "id": 0,
  "regionCodeId": 0
}


CourseSectionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/CourseSectionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
moduleIdnumberдаint
titlestringдаstring
ordernumberдаint
contentHtmlstring | nullнетstring?
videoUrlstring | nullнетstring?
filesSectionFileDto[]даList<SectionFileDto>
createDateTimestringдаDateTimeOffset
updateDateTimestring | nullнетDateTimeOffset?

Пример

json
{
  "id": 0,
  "moduleId": 0,
  "title": "string",
  "order": 0,
  "contentHtml": "string",
  "videoUrl": "https://...",
  "files": [],
  "createDateTime": "2026-05-05T08:00:00Z",
  "updateDateTime": "2026-05-05T08:00:00Z"
}


CourseStatusDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Progress/Enums/CourseStatusDto.cs (feature.learningservice).

Значения

ИмяЗначение (TS)ОписаниеКод (C#)
NotStarted00
InProgress11
Completed22

Пример

json
0


CreateAnswerOptionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Requests/CreateAnswerOptionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
textstringдаstring
isCorrectbooleanдаbool
ordernumberдаint

Пример

json
{
  "text": "string",
  "isCorrect": false,
  "order": 0
}


CreateCourseDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/CreateCourseDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
titlestringдаstring
descriptionstring | nullнетstring?
requireProctoringbooleanдаbool
regionCodeIdsnumber[]даList<int>

Пример

json
{
  "title": "string",
  "description": "string",
  "requireProctoring": false,
  "regionCodeIds": []
}


CreateModuleDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/CreateModuleDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
titlestringдаstring
ordernumberдаint

Пример

json
{
  "title": "string",
  "order": 0
}


CreateQuestionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Requests/CreateQuestionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
textstringдаstring
typeQuestionTypeDtoдаQuestionTypeDto
ordernumberдаint
optionsCreateAnswerOptionDto[]даList<CreateAnswerOptionDto>

Пример

json
{
  "text": "string",
  "type": "<QuestionTypeDto>",
  "order": 0,
  "options": []
}


CreateQuizDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Requests/CreateQuizDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
courseIdnumberдаint
titlestringдаstring
passingScorePercentnumberдаint
maxAttemptsnumberдаint
requireRecordingbooleanдаbool
requireVerificationbooleanдаbool
proctorMetricsstring[]даList<string>?
proctorThresholdnumber | nullнетdouble?
proctorTimeoutMinutesnumber | nullнетint?

Пример

json
{
  "courseId": 0,
  "title": "string",
  "passingScorePercent": 0,
  "maxAttempts": 0,
  "requireRecording": false,
  "requireVerification": false,
  "proctorMetrics": [],
  "proctorThreshold": 0,
  "proctorTimeoutMinutes": 0
}


CreateSectionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/CreateSectionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
titlestringдаstring
ordernumberдаint
contentHtmlstring | nullнетstring?
videoUrlstring | nullнетstring?

Пример

json
{
  "title": "string",
  "order": 0,
  "contentHtml": "string",
  "videoUrl": "https://..."
}


ProctoringResultDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/QuizAttempt/ProctoringResultDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
sessionIdstring | nullнетstring?
statusstring | nullнетstring?
riskLevelnumber | nullнетint?
violationsCountnumber | nullнетint?
reportUrlstring | nullнетstring?
trustProtocolUrlstring | nullнетstring?

Пример

json
{
  "sessionId": "uuid",
  "status": "string",
  "riskLevel": 0,
  "violationsCount": 0,
  "reportUrl": "https://...",
  "trustProtocolUrl": "https://..."
}


QuestionTypeDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Enums/QuestionTypeDto.cs (feature.learningservice).

Значения

ИмяЗначение (TS)ОписаниеКод (C#)
SingleChoice11
MultipleChoice22

Пример

json
1


QuizAnswerOptionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/QuizAnswerOptionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
questionIdnumberдаint
textstringдаstring
ordernumberдаint

Пример

json
{
  "id": 0,
  "questionId": 0,
  "text": "string",
  "order": 0
}


QuizAnswerOptionEditDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/QuizAnswerOptionEditDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
questionIdnumberдаint
textstringдаstring
isCorrectbooleanдаbool
ordernumberдаint

Пример

json
{
  "id": 0,
  "questionId": 0,
  "text": "string",
  "isCorrect": false,
  "order": 0
}


QuizAttemptDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/QuizAttempt/QuizAttemptDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
quizIdnumberдаint
userIdnumberдаint
attemptNumbernumberдаint
scorePercentnumber | nullнетint?
isPassedboolean | nullнетbool?
startedAtstringдаDateTimeOffset
finishedAtstring | nullнетDateTimeOffset?
snapshotPassingScorenumberдаint
snapshotMaxAttemptsnumberдаint
createDateTimestringдаDateTimeOffset
proctoringProctoringResultDto | nullнетProctoringResultDto?

Пример

json
{
  "id": 0,
  "quizId": 0,
  "userId": 0,
  "attemptNumber": 0,
  "scorePercent": 0,
  "isPassed": false,
  "startedAt": "2026-05-05T08:00:00Z",
  "finishedAt": "2026-05-05T08:00:00Z",
  "snapshotPassingScore": 0,
  "snapshotMaxAttempts": 0,
  "createDateTime": "2026-05-05T08:00:00Z",
  "proctoring": "<proctoringresultdto>"
}


QuizDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/QuizDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
courseIdnumberдаint
titlestringдаstring
passingScorePercentnumberдаint
maxAttemptsnumberдаint
requireRecordingbooleanдаbool
requireVerificationbooleanдаbool
isArchivedbooleanдаbool
proctorMetricsstring[]даList<string>?
proctorThresholdnumber | nullнетdouble?
proctorTimeoutMinutesnumber | nullнетint?
questionsQuizQuestionDto[]даList<QuizQuestionDto>
createDateTimestringдаDateTimeOffset
updateDateTimestring | nullнетDateTimeOffset?

Пример

json
{
  "id": 0,
  "courseId": 0,
  "title": "string",
  "passingScorePercent": 0,
  "maxAttempts": 0,
  "requireRecording": false,
  "requireVerification": false,
  "isArchived": false,
  "proctorMetrics": [],
  "proctorThreshold": 0,
  "proctorTimeoutMinutes": 0,
  "questions": [],
  "createDateTime": "2026-05-05T08:00:00Z",
  "updateDateTime": "2026-05-05T08:00:00Z"
}


QuizEditDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/QuizEditDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
courseIdnumberдаint
titlestringдаstring
passingScorePercentnumberдаint
maxAttemptsnumberдаint
requireRecordingbooleanдаbool
requireVerificationbooleanдаbool
isArchivedbooleanдаbool
proctorMetricsstring[]даList<string>?
proctorThresholdnumber | nullнетdouble?
proctorTimeoutMinutesnumber | nullнетint?
questionsQuizQuestionEditDto[]даList<QuizQuestionEditDto>
createDateTimestringдаDateTimeOffset
updateDateTimestring | nullнетDateTimeOffset?

Пример

json
{
  "id": 0,
  "courseId": 0,
  "title": "string",
  "passingScorePercent": 0,
  "maxAttempts": 0,
  "requireRecording": false,
  "requireVerification": false,
  "isArchived": false,
  "proctorMetrics": [],
  "proctorThreshold": 0,
  "proctorTimeoutMinutes": 0,
  "questions": [],
  "createDateTime": "2026-05-05T08:00:00Z",
  "updateDateTime": "2026-05-05T08:00:00Z"
}


QuizQuestionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/QuizQuestionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
quizIdnumberдаint
textstringдаstring
typeQuestionTypeDtoдаQuestionTypeDto
ordernumberдаint
optionsQuizAnswerOptionDto[]даList<QuizAnswerOptionDto>

Пример

json
{
  "id": 0,
  "quizId": 0,
  "text": "string",
  "type": "<QuestionTypeDto>",
  "order": 0,
  "options": []
}


QuizQuestionEditDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/QuizQuestionEditDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
quizIdnumberдаint
textstringдаstring
typeQuestionTypeDtoдаQuestionTypeDto
ordernumberдаint
optionsQuizAnswerOptionEditDto[]даList<QuizAnswerOptionEditDto>

Пример

json
{
  "id": 0,
  "quizId": 0,
  "text": "string",
  "type": "<QuestionTypeDto>",
  "order": 0,
  "options": []
}


QuizSummaryDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/QuizSummaryDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
titlestringдаstring
passingScorePercentnumberдаint
maxAttemptsnumberдаint

Пример

json
{
  "id": 0,
  "title": "string",
  "passingScorePercent": 0,
  "maxAttempts": 0
}


ReorderItemDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Common/ReorderItemDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
ordernumberдаint

Пример

json
{
  "id": 0,
  "order": 0
}


ReorderModulesDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/ReorderModulesDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
itemsReorderItemDto[]даList<ReorderItemDto>

Пример

json
{
  "items": []
}


ReorderQuestionsDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Requests/ReorderQuestionsDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
itemsReorderItemDto[]даList<ReorderItemDto>

Пример

json
{
  "items": []
}


ReorderSectionsDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/ReorderSectionsDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
itemsReorderItemDto[]даList<ReorderItemDto>

Пример

json
{
  "items": []
}


SectionFileDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/SectionFileDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberдаint
fileNamestringдаstring
s3Keystringдаstring

Пример

json
{
  "id": 0,
  "fileName": "string",
  "s3Key": "string"
}


StartAttemptDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/QuizAttempt/Requests/StartAttemptDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
quizIdnumberдаint

Пример

json
{
  "quizId": 0
}


StartAttemptResultDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/QuizAttempt/StartAttemptResultDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
attemptIdnumberдаint
attemptNumbernumberдаint
attemptsLeftnumber | nullнетint?
proctorTokenstring | nullнетstring?

Пример

json
{
  "attemptId": 0,
  "attemptNumber": 0,
  "attemptsLeft": 0,
  "proctorToken": "string"
}


SubmitAnswerDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/QuizAttempt/Requests/SubmitAnswerDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
questionIdnumberдаint
selectedOptionIdsnumber[]даList<int>

Пример

json
{
  "questionId": 0,
  "selectedOptionIds": []
}


SubmitAttemptDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/QuizAttempt/Requests/SubmitAttemptDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
answersSubmitAnswerDto[]даList<SubmitAnswerDto>

Пример

json
{
  "answers": []
}


SubmitAttemptResultDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/QuizAttempt/SubmitAttemptResultDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
scorePercentnumberдаint
isPassedbooleanдаbool
correctCountnumberдаint
totalCountnumberдаint
attemptsLeftnumber | nullнетint?
proctoringProctoringResultDto | nullнетProctoringResultDto?

Пример

json
{
  "scorePercent": 0,
  "isPassed": false,
  "correctCount": 0,
  "totalCount": 0,
  "attemptsLeft": 0,
  "proctoring": "<proctoringresultdto>"
}


UpdateAnswerOptionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Requests/UpdateAnswerOptionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumber | nullнетint?
textstringдаstring
isCorrectbooleanдаbool
ordernumberдаint

Пример

json
{
  "id": 0,
  "text": "string",
  "isCorrect": false,
  "order": 0
}


UpdateCourseDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/UpdateCourseDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberда
titlestring | nullнетstring?
descriptionstring | nullнетstring?
requireProctoringboolean | nullнетbool?
regionCodeIdsnumber[]даList<int>?

Пример

json
{
  "id": 0,
  "title": "string",
  "description": "string",
  "requireProctoring": false,
  "regionCodeIds": []
}


UpdateModuleDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/UpdateModuleDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
titlestring | nullнетstring?
ordernumber | nullнетint?

Пример

json
{
  "title": "string",
  "order": 0
}


UpdateQuestionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Requests/UpdateQuestionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
textstring | nullнетstring?
typeQuestionTypeDto | nullнетQuestionTypeDto?
ordernumber | nullнетint?
optionsUpdateAnswerOptionDto[]даList<UpdateAnswerOptionDto>?

Пример

json
{
  "text": "string",
  "type": "<questiontypedto>",
  "order": 0,
  "options": []
}


UpdateQuizDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Quiz/Requests/UpdateQuizDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
idnumberда
courseIdnumber | nullнетint?
titlestring | nullнетstring?
passingScorePercentnumber | nullнетint?
maxAttemptsnumber | nullнетint?
requireRecordingboolean | nullнетbool?
requireVerificationboolean | nullнетbool?
proctorMetricsstring[]даList<string>?
proctorThresholdnumber | nullнетdouble?
proctorTimeoutMinutesnumber | nullнетint?

Пример

json
{
  "id": 0,
  "courseId": 0,
  "title": "string",
  "passingScorePercent": 0,
  "maxAttempts": 0,
  "requireRecording": false,
  "requireVerification": false,
  "proctorMetrics": [],
  "proctorThreshold": 0,
  "proctorTimeoutMinutes": 0
}


UpdateSectionDto

Backend-источник: feature.learningservice/Feature.LearningService/Nuget.LearningApiClient/Dto/Course/Requests/UpdateSectionDto.cs (feature.learningservice).

Поля

ПолеТип (TS)ОбязательноеОписаниеТип (C#)
titlestring | nullнетstring?
ordernumber | nullнетint?
contentHtmlstring | nullнетstring?
videoUrlstring | nullнетstring?

Пример

json
{
  "title": "string",
  "order": 0,
  "contentHtml": "string",
  "videoUrl": "https://..."
}