The official Python SDK for Task Badger
Project description
Task Badger Python Client
This is the official Python SDK for Task Badger.
For full documentation go to https://docs.taskbadger.net/python/.
Getting Started
Install
pip install --upgrade taskbadger
Client Usage
Configuration
import taskbadger
taskbadger.init(
organization_slug="my-org",
project_slug="my-project",
token="***"
)
Usage with Celery
import taskbadger
from celery import Celery
app = Celery("tasks")
@app.task(bind=True, base=taskbadger.Task)
def my_task(self):
task = self.taskbadger_task
for i in range(1000):
do_something(i)
if i % 100 == 0:
task.update(value=i, value_max=1000)
task.success(value=1000)
API Example
from taskbadger import Task, Action, EmailIntegration, WebhookIntegration
# create a new task with custom data and an action definition
task = Task.create(
"task name",
data={
"custom": "data"
},
actions=[
Action("*/10%,success,error", integration=EmailIntegration(to="me@example.com")),
Action("cancelled", integration=WebhookIntegration(id="webhook:demo")),
]
)
# update the task status to 'processing' and set the value to 0
task.started()
try:
for i in range(100):
do_something(i)
if i!= 0 and i % 10 == 0:
# update the progress of the task
task.update_progress(i)
except Exception as e:
# record task errors
task.error(data={
"error": str(e)
})
raise
# record task success
task.success()
CLI USage
Configuration
$ taskbadger configure
Organization slug: my-org
Project slug: project-x
API Key: XYZ.ABC
Config written to ~/.config/taskbadger/config
Usage Examples
The CLI run command executes your command whilst creating and updating a Task Badger task.
$ taskbadger run "demo task" --action error email to:me@test.com -- path/to/script.sh
Task created: https://taskbadger.net/public/tasks/xyz/
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
taskbadger-1.6.3.tar.gz
(31.7 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file taskbadger-1.6.3.tar.gz.
File metadata
- Download URL: taskbadger-1.6.3.tar.gz
- Upload date:
- Size: 31.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70cc4dac147b2dcb7f7885101f04f7fd3555fa0cfcc47e5cbfc7dbf274494ff7
|
|
| MD5 |
3f61f27eb862c26f5aa660327b88033c
|
|
| BLAKE2b-256 |
67e65337e7e68960d9937ca09f122c542a621b60df1f9696f47c04d6b7efa083
|
File details
Details for the file taskbadger-1.6.3-py3-none-any.whl.
File metadata
- Download URL: taskbadger-1.6.3-py3-none-any.whl
- Upload date:
- Size: 60.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.9.30 {"installer":{"name":"uv","version":"0.9.30","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
38a2ec9216962eaec395de91c6f0e542afbf29f7181368a537fb27e0a4d74d90
|
|
| MD5 |
df7232227520c08cb5d95a359f4a01c0
|
|
| BLAKE2b-256 |
431a1a76622f146459bb4b02b48a028ba1294171b9a6f63311373d39cda66968
|