Skip to main content

Proctoring subsystem for Open edX

Project description

PyPI Travis Codecov Supported Python versions License

This is the exam proctoring subsystem for the Open edX platform.


Proctored exams are exams with time limits that learners complete while online proctoring software monitors their computers and behavior for activity that might be evidence of cheating. This Python library provides the proctoring implementation used by Open edX.


For authoring documentation, see Including Proctored Exams In Your Course.


To install edx-proctoring:

mkvirtualenv edx-proctoring make install

To run the tests:

make test-all

For a full list of Make targets:

make help


In order to use edx-proctoring, you must obtain an account (and secret configuration - see below) with SoftwareSecure, which provides the proctoring review services that edx-proctoring integrates with.

You will need to turn on the ENABLE_SPECIAL_EXAMS in lms.env.json and cms.env.json FEATURES dictionary:


Also in your lms.env.json and cms.env.json file please add the following:

    "LINK_URLS": {
        "contact_us": "{add link here}",
        "faq": "{add link here}",
        "online_proctoring_rules": "{add link here}",
        "tech_requirements": "{add link here}"

In your lms.auth.json file, please add the following secure information:

    "software_secure": {
        "crypto_key": "{add SoftwareSecure crypto key here}",
        "exam_register_endpoint": "{add endpoint to SoftwareSecure}",
        "exam_sponsor": "{add SoftwareSecure sponsor}",
        "organization": "{add SoftwareSecure organization}",
        "secret_key": "{add SoftwareSecure secret key}",
        "secret_key_id": "{add SoftwareSecure secret key id}",
        "software_download_url": "{add SoftwareSecure download url}"
    'DEFAULT': 'software_secure'

You will need to restart services after these configuration changes for them to take effect.


The code in this repository is licensed under the AGPL 3.0 unless otherwise noted.

Please see LICENSE.txt for details.

How To Contribute

Contributions are very welcome.

Please read How To Contribute for details.

Even though they were written with edx-platform in mind, the guidelines should be followed for Open edX code in general.

Reporting Security Issues

Please do not report security issues in public. Please email

Getting Help

Have a question about this repository, or about Open edX in general? Please refer to this list of resources if you need any assistance.

We don’t maintain a detailed changelog. For details of changes, please see the GitHub commit history.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for edx-proctoring, version 2.2.4
Filename, size File type Python version Upload date Hashes
Filename, size edx_proctoring-2.2.4-py2.py3-none-any.whl (827.9 kB) File type Wheel Python version py2.py3 Upload date Hashes View hashes
Filename, size edx-proctoring-2.2.4.tar.gz (562.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page