type Query { learning_path(id: ID, slug: String, course_id: ID, course_slug: String): LearningPathObjectType circle(id: ID, slug: String): CircleObjectType learning_content_media_library: LearningContentMediaLibraryObjectType learning_content_assignment: LearningContentAssignmentObjectType learning_content_attendance_course: LearningContentAttendanceCourseObjectType learning_content_feedback: LearningContentFeedbackObjectType learning_content_learning_module: LearningContentLearningModuleObjectType learning_content_placeholder: LearningContentPlaceholderObjectType learning_content_rich_text: LearningContentRichTextObjectType learning_content_test: LearningContentEdoniqTestObjectType learning_content_video: LearningContentVideoObjectType learning_content_document_list: LearningContentDocumentListObjectType course_session_attendance_course(id: ID!, assignment_user_id: ID): CourseSessionAttendanceCourseObjectType course(id: ID): CourseObjectType course_session(id: ID): CourseSessionObjectType competence_certificate(id: ID, slug: String): CompetenceCertificateObjectType competence_certificate_list(id: ID, slug: String, course_id: ID, course_slug: String): CompetenceCertificateListObjectType assignment(id: ID, slug: String): AssignmentObjectType assignment_completion(assignment_id: ID!, course_session_id: ID!, learning_content_page_id: ID, assignment_user_id: UUID): AssignmentCompletionObjectType } type LearningPathObjectType implements CoursePageInterface { id: ID path: String! depth: Int! numchild: Int! translation_key: String live: Boolean has_unpublished_changes: Boolean! first_published_at: DateTime last_published_at: DateTime go_live_at: DateTime expire_at: DateTime expired: Boolean! locked: Boolean! locked_at: DateTime locked_by: UserType title: String draft_title: String! slug: String content_type: String url_path: String! owner: UserType """ Der Titel der Seite, dargestellt in Suchmaschinen-Ergebnissen als die verlinkte Überschrift. """ seo_title: String! """ Ob ein Link zu dieser Seite in automatisch generierten Menüs auftaucht. """ show_in_menus: Boolean! """ Die informative Beschreibung, dargestellt in Suchmaschinen-Ergebnissen unter der Überschrift. """ search_description: String! latest_revision_created_at: DateTime frontend_url: String circle: CircleObjectType course: CourseObjectType topics: [TopicObjectType] } interface CoursePageInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType } type CircleObjectType implements CoursePageInterface { description: String! goals: String! id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType learning_sequences: [LearningSequenceObjectType] } type CourseObjectType { id: ID! title: String! category_name: String! slug: String! learning_path: LearningPathObjectType } type LearningSequenceObjectType implements CoursePageInterface { icon: String! id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType learning_units: [LearningUnitObjectType] } type LearningUnitObjectType implements CoursePageInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType learning_contents: [LearningContentInterface] } interface LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } """ The `DateTime` scalar type represents a DateTime value as specified by [iso8601](https://en.wikipedia.org/wiki/ISO_8601). """ scalar DateTime type UserType { """ Erforderlich. 150 Zeichen oder weniger. Nur Buchstaben, Ziffern und @/./+/-/_. """ username: String! first_name: String! last_name: String! id: UUID! avatar_url: String! email: String! language: CoreUserLanguageChoices! } """ Leverages the internal Python implementation of UUID (uuid.UUID) to provide native UUID objects in fields, resolvers and input. """ scalar UUID """An enumeration.""" enum CoreUserLanguageChoices { """Deutsch""" DE """Français""" FR """Italiano""" IT } type TopicObjectType implements CoursePageInterface { is_visible: Boolean! id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType circles: [CircleObjectType] } type LearningContentMediaLibraryObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type LearningContentAssignmentObjectType implements LearningContentInterface { content_assignment: AssignmentObjectType! assignment_type: LearnpathLearningContentAssignmentAssignmentTypeChoices! id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type AssignmentObjectType implements CoursePageInterface { assignment_type: AssignmentAssignmentAssignmentTypeChoices! """ Muss der Auftrag durch eine Expertin oder einen Experten beurteilt werden? """ needs_expert_evaluation: Boolean! competence_certificate: CompetenceCertificateObjectType """Erläuterung der Ausgangslage""" intro_text: String! """Zeitaufwand als Text""" effort_required: String! """Beschreibung der Bewertung""" evaluation_description: String! """URL zum Beurteilungsinstrument""" evaluation_document_url: String! id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType tasks: JSONStreamField evaluation_tasks: JSONStreamField performance_objectives: JSONStreamField max_points: Int learning_content: LearningContentInterface completion(course_session_id: ID!, learning_content_page_id: ID, assignment_user_id: UUID): AssignmentCompletionObjectType } """An enumeration.""" enum AssignmentAssignmentAssignmentTypeChoices { """CASEWORK""" CASEWORK """PREP_ASSIGNMENT""" PREP_ASSIGNMENT """REFLECTION""" REFLECTION """CONDITION_ACCEPTANCE""" CONDITION_ACCEPTANCE """EDONIQ_TEST""" EDONIQ_TEST } type CompetenceCertificateObjectType implements CoursePageInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType assignments: [AssignmentObjectType] } scalar JSONStreamField type AssignmentCompletionObjectType { id: UUID! created_at: DateTime! updated_at: DateTime! submitted_at: DateTime evaluation_submitted_at: DateTime evaluation_user: UserType evaluation_points: Float evaluation_max_points: Float evaluation_passed: Boolean edoniq_extended_time_flag: Boolean! assignment_user: UserType! assignment: AssignmentObjectType! course_session: CourseSessionObjectType! completion_status: AssignmentAssignmentCompletionCompletionStatusChoices! completion_data: GenericScalar additional_json_data: JSONString! task_completion_data: GenericScalar learning_content_page_id: ID } type CourseSessionObjectType { id: ID! created_at: DateTime! updated_at: DateTime! course: CourseObjectType! title: String! start_date: Date end_date: Date attendance_courses: [CourseSessionAttendanceCourseObjectType] assignments: [CourseSessionAssignmentObjectType] edoniq_tests: [CourseSessionEdoniqTestObjectType] documents: [CircleDocumentObjectType] users: [CourseSessionUserObjectsType] } """ The `Date` scalar type represents a Date value as specified by [iso8601](https://en.wikipedia.org/wiki/ISO_8601). """ scalar Date type CourseSessionAttendanceCourseObjectType { id: ID! learning_content: LearningContentAttendanceCourseObjectType due_date: DueDateObjectType location: String! trainer: String! course_session_id: ID learning_content_id: ID attendance_user_list: [AttendanceUserObjectType] } type LearningContentAttendanceCourseObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type DueDateObjectType { id: ID! """Startdatum ist Pflicht""" start: DateTime """Enddatum ist optional""" end: DateTime """Nur aktivieren, wenn man die Felder manuell überschreiben will""" manual_override_fields: Boolean! """Title wird standarmässig vom LearningContent übernommen""" title: String! """Translation Key aus dem Frontend""" assignment_type_translation_key: String! """Translation Key aus dem Frontend""" date_type_translation_key: String! """ Überschreibt den Untertitel bei `assignment_type_translation_key` und `date_type_translation_key` """ subtitle: String! """ URL wird vom LearningContent übernommen (sichtbar für Member/Teilnehmer) """ url: String! course_session: CourseSessionObjectType! } type AttendanceUserObjectType { user_id: UUID! status: AttendanceUserStatus! first_name: String last_name: String email: String } """An enumeration.""" enum AttendanceUserStatus { PRESENT ABSENT } type CourseSessionAssignmentObjectType { id: ID! learning_content: LearningContentAssignmentObjectType submission_deadline: DueDateObjectType evaluation_deadline: DueDateObjectType course_session_id: ID learning_content_id: ID } type CourseSessionEdoniqTestObjectType { id: ID! learning_content: LearningContentEdoniqTestObjectType deadline: DueDateObjectType course_session_id: ID learning_content_id: ID } type LearningContentEdoniqTestObjectType implements LearningContentInterface { content_assignment: AssignmentObjectType id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type CircleDocumentObjectType { id: UUID! name: String! course_session: CourseSessionObjectType! learning_sequence: LearningSequenceObjectType! file_name: String url: String } type CourseSessionUserObjectsType { id: UUID! role: String user_id: UUID first_name: String last_name: String email: String avatar_url: String circles: [CourseSessionUserExpertCircleType] } type CourseSessionUserExpertCircleType { id: ID title: String slug: String } """An enumeration.""" enum AssignmentAssignmentCompletionCompletionStatusChoices { """IN_PROGRESS""" IN_PROGRESS """SUBMITTED""" SUBMITTED """EVALUATION_IN_PROGRESS""" EVALUATION_IN_PROGRESS """EVALUATION_SUBMITTED""" EVALUATION_SUBMITTED } """ The `GenericScalar` scalar type represents a generic GraphQL scalar value that could be: String, Boolean, Int, Float, List or Object. """ scalar GenericScalar """ Allows use of a JSON String for input / output from the GraphQL schema. Use of this type is *not recommended* as you lose the benefits of having a defined, static schema (one of the key benefits of GraphQL). """ scalar JSONString """An enumeration.""" enum LearnpathLearningContentAssignmentAssignmentTypeChoices { """CASEWORK""" CASEWORK """PREP_ASSIGNMENT""" PREP_ASSIGNMENT """REFLECTION""" REFLECTION """CONDITION_ACCEPTANCE""" CONDITION_ACCEPTANCE """EDONIQ_TEST""" EDONIQ_TEST } type LearningContentFeedbackObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type LearningContentLearningModuleObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type LearningContentPlaceholderObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type LearningContentRichTextObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type LearningContentVideoObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type LearningContentDocumentListObjectType implements LearningContentInterface { id: ID title: String slug: String content_type: String live: Boolean translation_key: String frontend_url: String circle: CircleObjectType course: CourseObjectType minutes: Int description: String content: String } type CompetenceCertificateListObjectType implements CoursePageInterface { id: ID path: String! depth: Int! numchild: Int! translation_key: String live: Boolean has_unpublished_changes: Boolean! first_published_at: DateTime last_published_at: DateTime go_live_at: DateTime expire_at: DateTime expired: Boolean! locked: Boolean! locked_at: DateTime locked_by: UserType title: String draft_title: String! slug: String content_type: String url_path: String! owner: UserType """ Der Titel der Seite, dargestellt in Suchmaschinen-Ergebnissen als die verlinkte Überschrift. """ seo_title: String! """ Ob ein Link zu dieser Seite in automatisch generierten Menüs auftaucht. """ show_in_menus: Boolean! """ Die informative Beschreibung, dargestellt in Suchmaschinen-Ergebnissen unter der Überschrift. """ search_description: String! latest_revision_created_at: DateTime frontend_url: String circle: CircleObjectType course: CourseObjectType competence_certificates: [CompetenceCertificateObjectType] } type Mutation { send_feedback(course_session_id: ID!, data: GenericScalar, learning_content_page_id: ID!, submitted: Boolean = false): SendFeedbackMutation update_course_session_attendance_course_users(attendance_user_list: [AttendanceUserInputType]!, id: ID!): AttendanceCourseUserMutation upsert_assignment_completion(assignment_id: ID!, assignment_user_id: UUID, completion_data_string: String, completion_status: AssignmentCompletionStatus, course_session_id: ID!, evaluation_passed: Boolean, evaluation_points: Float, initialize_completion: Boolean, learning_content_page_id: ID): AssignmentCompletionMutation } type SendFeedbackMutation { feedback_response: FeedbackResponseObjectType """May contain more than one error for same field.""" errors: [ErrorType] } type FeedbackResponseObjectType { id: UUID! data: GenericScalar submitted: Boolean! } type ErrorType { field: String! messages: [String!]! } type AttendanceCourseUserMutation { course_session_attendance_course: CourseSessionAttendanceCourseObjectType } input AttendanceUserInputType { user_id: UUID! status: AttendanceUserStatus! } type AssignmentCompletionMutation { assignment_completion: AssignmentCompletionObjectType } """An enumeration.""" enum AssignmentCompletionStatus { IN_PROGRESS SUBMITTED EVALUATION_IN_PROGRESS EVALUATION_SUBMITTED }