Skip to main content

A client library for accessing CodeGrade

Project description

CodeGrade API

This library makes it easier to use the CodeGrade API. Its API allows you to automate your usage of CodeGrade. We are currently still busy documenting the entire API, but everything that is possible in the UI of CodeGrade is also possible through the API.

Installation

You can install the library through pypi, simply run python3 -m pip install codegrade. If you want to get a dev version with support for the latest features, simply email support@codegrade.com and we'll provide you with a dev version.

Usage

First, create a client:

import codegrade

# Don't store your password in your code!
with codegrade.login(
    username='my-username',
    password=os.getenv('CG_PASSWORD'),
    tenant='My University',
) as client:
    pass

# Or supply information interactively.
with codegrade.login_from_cli() as client:
    pass

Now call your endpoint and use your models:

from codegrade.models import PatchCourseData

courses = client.course.get_all()
for course in courses:
    client.course.patch(
        PatchCourseData(name=course.name + ' (NEW)'),
        course_id=course.id,
    )

# Or, simply use dictionaries.
for course in courses:
    client.course.patch(
        {"name": course.name + ' (NEW)'},
        course_id=course.id,
    )

For the complete documentation go to https://python.api.codegrade.com.

Backwards compatibility

CodeGrade is constantly upgrading its API, but we try to minimize backwards incompatible changes. We'll announce every backwards incompatible change in the changelog. A new version of the API client is released with every release of CodeGrade, which is approximately every month. To upgrade simply run pip install --upgrade codegrade.

Supported python versions

We support python 3.6 and above, pypy is currently not tested but should work just fine.

License

The library is licensed under AGPL-3.0-only or BSD-3-Clause-Clear.

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

codegrade-16.1.70.tar.gz (254.1 kB view details)

Uploaded Source

Built Distribution

codegrade-16.1.70-py3-none-any.whl (650.6 kB view details)

Uploaded Python 3

File details

Details for the file codegrade-16.1.70.tar.gz.

File metadata

  • Download URL: codegrade-16.1.70.tar.gz
  • Upload date:
  • Size: 254.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for codegrade-16.1.70.tar.gz
Algorithm Hash digest
SHA256 0a69727d3525c4ab92ee94004ec515a48edf6104ba2061fdd8d7f9c682d5e7b3
MD5 e30d9bb567a4eecaf69ca66d846e2111
BLAKE2b-256 2ec55b4210bf53a3dc886f3b73645ff1df8273ce5188d90f8b8a9624ceaacec1

See more details on using hashes here.

File details

Details for the file codegrade-16.1.70-py3-none-any.whl.

File metadata

  • Download URL: codegrade-16.1.70-py3-none-any.whl
  • Upload date:
  • Size: 650.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for codegrade-16.1.70-py3-none-any.whl
Algorithm Hash digest
SHA256 e2dc77c18b3e49224796f7a3fb075239c0d4364c7033669fbaf6e2a4b549b8b0
MD5 c8696a60129ba05ebf6a2381d275fcaf
BLAKE2b-256 71358c1005d57b6295ad3a9411c5ef6d9ec1807657fba7dbffa1a70158f63937

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page