Skip to main content

A REST API for managing background tasks in Django

Project description

Django Task API lets you quickly write background tasks for your Django project and easily call then using the provided REST API, or the included JavaScript library.

What does it look like?

Tasks are defined as classes with typed input and output parameters, and a run function with the task implementation, to be called by a worker processes.

from task_api.tasks import Task
from task_api.params import ListParameter, NumberParameter

class SumNumbers(Task):
    name = 'sum'

    inputs = {
        'numbers': ListParameter(NumberParameter())
    }

    outputs = {
        'sum': NumberParameter()
    }

    def run(self, numbers):
        return sum(numbers)

Tasks are easily called and monitored in front-end code using the included JavaScript API. The API supports both promises (will Polyfill for older browsers) and traditional callbacks.

<script src="{% static 'django-task-api.js' %}"></script>

<script type="text/javascript">
    function sumTask(numbers) {
        TaskAPI
            .run('sum', {'numbers': numbers})
            .then(function(json) {
                console.log('Sum: ' + json.outputs.sum)
            })
    }
</script>

Next Steps

Project details


Download files

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

Source Distribution

django-task-api-1.0.3.tar.gz (72.6 kB view details)

Uploaded Source

Built Distribution

django_task_api-1.0.3-py3-none-any.whl (75.7 kB view details)

Uploaded Python 3

File details

Details for the file django-task-api-1.0.3.tar.gz.

File metadata

  • Download URL: django-task-api-1.0.3.tar.gz
  • Upload date:
  • Size: 72.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.5

File hashes

Hashes for django-task-api-1.0.3.tar.gz
Algorithm Hash digest
SHA256 f582200d29cf55332f0bd4224e40e996324a77b680117771f497cfb39d0df175
MD5 e83f43e896120fde4d136664ac77b63e
BLAKE2b-256 41a92dcda97efa41a19e5d78f9d373ebdb9121feb5951de16479fc2eb794f0cb

See more details on using hashes here.

File details

Details for the file django_task_api-1.0.3-py3-none-any.whl.

File metadata

  • Download URL: django_task_api-1.0.3-py3-none-any.whl
  • Upload date:
  • Size: 75.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.19.1 setuptools/40.0.0 requests-toolbelt/0.8.0 tqdm/4.24.0 CPython/3.6.5

File hashes

Hashes for django_task_api-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 ff057b7542485de38d4638f730cddf76b164b3dfe7f4ce6afe61e5c866ba9f86
MD5 e51f447df5a92cf5aa64e6d746a5b08f
BLAKE2b-256 36f1088825f7e468e03fb0595d60f921670aa7ba1ad0fb57294151b4da76970e

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