Al-Farabi Kazakh National University grades API

The grades API from Al-Farabi Kazakh National University — 9 operation(s) for grades.

OpenAPI Specification

al-farabi-kazakh-national-university-grades-api-openapi.yml Raw ↑
openapi: 3.0.3
info:
  title: Open edX agreements grades API
  description: APIs for access to Open edX information
  contact:
    email: dl@kaznu.kz
  version: v1
servers:
- url: https://open.kaznu.kz/api
security:
- Basic: []
tags:
- name: grades
paths:
  /grades/v1/courses/:
    get:
      operationId: grades_v1_courses_list
      description: Gets a course progress status.
      tags:
      - grades
      parameters:
      - name: cursor
        in: query
        required: false
        description: The pagination cursor value.
        schema:
          type: string
      - name: page_size
        in: query
        required: false
        description: Number of results to return per page.
        schema:
          type: integer
      responses:
        '200':
          description: ''
  /grades/v1/courses/{course_id}/:
    get:
      operationId: grades_v1_courses_read
      description: Gets a course progress status.
      tags:
      - grades
      parameters:
      - name: course_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
  /grades/v1/gradebook/{course_id}/:
    get:
      operationId: grades_v1_gradebook_read
      description: 'Checks for course author access for the given course by the requesting user.

        Calls the view function if has access, otherwise raises a 403.'
      tags:
      - grades
      parameters:
      - name: course_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
  /grades/v1/gradebook/{course_id}/bulk-update:
    post:
      operationId: grades_v1_gradebook_bulk-update_create
      description: 'Checks for course author access for the given course by the requesting user.

        Calls the view function if has access, otherwise raises a 403.'
      tags:
      - grades
      parameters:
      - name: course_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '201':
          description: ''
  /grades/v1/gradebook/{course_id}/grading-info:
    get:
      operationId: grades_v1_gradebook_grading-info_list
      description: 'Checks for course author access for the given course by the requesting user.

        Calls the view function if has access, otherwise raises a 403.'
      tags:
      - grades
      parameters:
      - name: course_id
        in: path
        required: true
        schema:
          type: string
      - name: page
        in: query
        required: false
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        in: query
        required: false
        description: Number of results to return per page.
        schema:
          type: integer
      responses:
        '200':
          description: ''
  /grades/v1/policy/courses/{course_id}/:
    get:
      operationId: grades_v1_policy_courses_read
      summary: '**Use Case**'
      description: "Get the course grading policy.\n\n**Example requests**:\n\n    GET /api/grades/v1/policy/courses/{course_id}/\n\n**Response Values**\n\n    * assignment_type: The type of the assignment, as configured by course\n      staff. For example, course staff might make the assignment types Homework,\n      Quiz, and Exam.\n\n    * count: The number of assignments of the type.\n\n    * dropped: Number of assignments of the type that are dropped.\n\n    * weight: The weight, or effect, of the assignment type on the learner's\n      final grade."
      tags:
      - grades
      parameters:
      - name: course_id
        in: path
        required: true
        schema:
          type: string
      - name: page
        in: query
        required: false
        description: A page number within the paginated result set.
        schema:
          type: integer
      - name: page_size
        in: query
        required: false
        description: Number of results to return per page.
        schema:
          type: integer
      responses:
        '200':
          description: ''
  /grades/v1/section_grades_breakdown/:
    get:
      operationId: grades_v1_section_grades_breakdown_list
      summary: '**Use Cases**'
      description: "Get a list of all grades for all sections, optionally filtered by a course ID or list of usernames.\n\n**Example Requests**\n\n    GET /api/grades/v1/section_grades_breakdown\n\n    GET /api/grades/v1/section_grades_breakdown?course_id={course_id}\n\n    GET /api/grades/v1/section_grades_breakdown?username={username},{username},{username}\n\n    GET /api/grades/v1/section_grades_breakdown?course_id={course_id}&username={username}\n\n**Query Parameters for GET**\n\n    * course_id: Filters the result to course grade status for the course corresponding to the\n        given course ID. The value must be URL encoded. Optional.\n\n    * username: List of comma-separated usernames. Filters the result to the course grade status\n        of the given users. Optional.\n\n    * page_size: Number of results to return per page. Optional.\n\n**Response Values**\n\n    If the request for information about the course grade status is successful, an HTTP 200 \"OK\" response\n    is returned.\n\n    The HTTP 200 response has the following values.\n\n    * results: A list of the course grading status matching the request.\n\n        * course_id: Course ID of the course in the course grading status.\n\n        * user: Username of the user in the course enrollment.\n\n        * passed: Boolean flag for user passing the course.\n\n        * current_grade: An integer representing the current grade of the course.\n\n        * section_breakdown: A summary of each course section's grade.\n\n        A dictionary in the section_breakdown list has the following keys:\n            * percent: A float percentage for the section.\n            * label: A short string identifying the section. Preferably fixed-length. E.g. \"HW  3\".\n            * detail: A string explanation of the score. E.g. \"Homework 1 - Ohms Law - 83% (5/6)\"\n            * category: A string identifying the category.\n            * prominent: A boolean value indicating that this section should be displayed as more prominent\n                than other items.\n\n    * next: The URL to the next page of results, or null if this is the\n        last page.\n\n    * previous: The URL to the next page of results, or null if this\n        is the first page.\n\n    If the user is not logged in, a 401 error is returned.\n\n    If the user is not global staff, a 403 error is returned.\n\n    If the specified course_id is not valid or any of the specified usernames\n    are not valid, a 400 error is returned.\n\n    If the specified course_id does not correspond to a valid course or if all the specified\n    usernames do not correspond to valid users, an HTTP 200 \"OK\" response is returned with an\n    empty 'results' field."
      tags:
      - grades
      parameters:
      - name: cursor
        in: query
        required: false
        description: The pagination cursor value.
        schema:
          type: string
      - name: page_size
        in: query
        required: false
        description: Number of results to return per page.
        schema:
          type: integer
      responses:
        '200':
          description: ''
  /grades/v1/submission_history/{course_id}/:
    get:
      operationId: grades_v1_submission_history_read
      description: "Get submission history details. This submission history is related to only\nProblemBlock and it doesn't support LegacyLibraryContentBlock or ContentLibraries\nas of now.\n\n**Usecases**:\n\n    Users with GlobalStaff status can retrieve everyone's submission history.\n\n**Example Requests**:\n\n    GET /api/grades/v1/submission_history/{course_id}\n    GET /api/grades/v1/submission_history/{course_id}/?username={username}\n\n**Query Parameters for GET**\n\n    * course_id: Course id to retrieve submission history.\n    * username: Single username for which this view will retrieve the submission history details.\n\n**Response Values**:\n\n    If there's an error while getting the submission history an empty response will\n    be returned.\n    The submission history response has the following attributes:\n\n        * Results: A list of submission history:\n            * course_id: Course id\n            * course_name: Course name\n            * user: Username\n            * problems: List of problems\n                * location: problem location\n                * name: problem's display name\n                * submission_history: List of submission history\n                    * state: State of submission.\n                    * grade: Grade.\n                    * max_grade: Maximum possible grade.\n                * data: problem's data."
      tags:
      - grades
      parameters:
      - name: course_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
  /grades/v1/subsection/{subsection_id}/:
    get:
      operationId: grades_v1_subsection_read
      description: 'Returns subection grade data, override grade data and a history of changes made to

        a specific users specific subsection grade.'
      tags:
      - grades
      parameters:
      - name: subsection_id
        in: path
        required: true
        schema:
          type: string
      responses:
        '200':
          description: ''
components:
  securitySchemes:
    Basic:
      type: http
      scheme: basic