Skip to content

Latest commit

 

History

History
81 lines (44 loc) · 1.68 KB

high_level_api.rst

File metadata and controls

81 lines (44 loc) · 1.68 KB

High-Level API

.. currentmodule:: nbgrader.apps.api

.. versionadded:: 0.5.0

This API is a high-level api that provides access to nbgrader's core functionality, for example assigning, releasing, collecting, and autograding assignments. For example:

from nbgrader.apps import NbGraderAPI
from traitlets.config import Config

# create a custom config object to specify options for nbgrader
config = Config()
config.CourseDirectory.course_id = "course101"

api = NbGraderAPI(config=config)

# assuming source/ps1 exists
api.generate_assignment("ps1")

For details on how to configure the API, see :doc:`/configuration/config_options`.

.. autoclass:: NbGraderAPI

    .. automethod:: __init__

    .. autoattribute:: gradebook

    .. automethod:: get_source_assignments

    .. automethod:: get_released_assignments

    .. automethod:: get_submitted_students

    .. automethod:: get_submitted_timestamp

    .. automethod:: get_autograded_students

    .. automethod:: get_assignment

    .. automethod:: get_assignments

    .. automethod:: get_notebooks

    .. automethod:: get_submission

    .. automethod:: get_submissions

    .. automethod:: get_notebook_submission_indices

    .. automethod:: get_notebook_submissions

    .. automethod:: get_student

    .. automethod:: get_students

    .. automethod:: get_student_submissions

    .. automethod:: get_student_notebook_submissions

    .. automethod:: assign

    .. automethod:: release

    .. automethod:: unrelease

    .. automethod:: collect

    .. automethod:: autograde

    .. automethod:: generate_feedback

    .. automethod:: release_feedback

    .. automethod:: fetch_feedback