Acclaim Badges for EDX

Django, edx
pip install acclaim-badges==0.1.0



PyPI Travis Codecov Documentation Supported Python versions License

Issue badges from Acclaim upon edx course completion.

Acclaim Badges for EDX


Adds a djangoapp to edx which provides a UI and API backend into Acclaim. Once installed, EDX adminstrators will be able to add Acclaim auth tokens and select badges to be issued upon course completion. This app then listens for course complete events, and issues badges if the student obtains a passing score.


  1. Install "acclaim_badges" using pip:

    pip install acclaim_badges
  2. Add "acclaim_badges" to your INSTALLED_APPS setting for EDX lms like this:


Note: this file is usually located at /edx-platform/lms/envs/

  1. Include the acclaim_badges URLconf in your project like this:

    urlpatterns += (
        url(r'^acclaim/', include('acclaim_badges.urls')),
  2. The authorization token field is encypted. create a AES-256 keyset using keyzar:

    $ mkdir fieldkeys
    $ keyczart create --location=fieldkeys --purpose=crypt
    $ keyczart addkey --location=fieldkeys --status=primary --size=256
  3. Add keyset location to /edx-platform/lms/envs/

    ENCRYPTED_FIELDS_KEYDIR = '/path/to/fieldkeys'
  4. Run ./ lms syncdb --settings aws to create the acclaim_badges lms app.


The following useful URLs are made available after installation: /acclaim/tokens/ /acclaim/badge-courses/

  1. Add Acclaim organization and authorization token using /acclaim/tokens/
  2. Define a mapping between badge and course by accessing /acclaim/badge-courses/

Note: when defining a mapping, the dropdown will populate with badge templates if the Acclaim API call is successful (valid token and orgainzation combination are used).


The full documentation is at


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.

PR description template should be automatically applied if you are sending PR from github interface; otherwise you can find it it at

Issue report template should be automatically applied if you are sending it from github UI as well; otherwise you can find it at

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.