Skip to main content

CronBark Python SDK

Python SDK and CLI for CronBark — monitor any cron job with a single decorator.

Preview / Alpha. This SDK is in preview and the CronBark SaaS service is launching soon. The public API may change in backwards-incompatible ways before the 1.0 release.

Install

pip install cronbark

Requires Python 3.9+.

Quickstart

Get an API token from your CronBark dashboard, then pick whichever style fits your job best.

1. Context manager

Wrap any block of code — start is sent on entry, and success or fail (with the traceback) is sent on exit.

import cronbark

cronbark.configure(token="YOUR_TOKEN")

with cronbark.monitor():
    run_backup()

2. Decorator

Instrument an existing function in one line.

import cronbark

@cronbark.job("YOUR_TOKEN")
def generate_report():
    ...

3. CLI — wrap any command

The easiest way to monitor an existing cron entry without touching its source:

cronbark exec --token YOUR_TOKEN "python backup.py"

Use it directly in crontab:

# Before
0 * * * * /usr/bin/python3 /opt/scripts/backup.py

# After
0 * * * * cronbark exec --token YOUR_TOKEN "/usr/bin/python3 /opt/scripts/backup.py"

The CLI captures stdout/stderr, forwards them to CronBark, and exits with the same status code as the wrapped command.

Configuration

The SDK reads configuration from environment variables by default:

Variable Purpose Default
CRONBARK_TOKEN Your job's API token (none — required)
CRONBARK_URL API base URL override (self-hosted, staging, etc.) https://api.cronbark.com

You can also configure the SDK programmatically:

import cronbark

cronbark.configure(
    token="YOUR_TOKEN",
    base_url="https://api.cronbark.com",  # optional
    timeout=10,                            # seconds, optional
)

Public API

Top-level functions exported from the cronbark package:

Symbol Description
configure(token, base_url, timeout) Set global SDK configuration.
monitor(token=None) Context manager — auto start / success / fail.
job(token=None) Decorator wrapping a function with monitor.
ping(token=None) One-shot start + success.
start(token=None) Report execution start.
success(token=None, output=None, metrics=None) Report success.
fail(token=None, error_message=None, output=None) Report failure.
tick(token=None) Heartbeat — report success without a prior start.

CLI commands (cronbark --help):

cronbark exec --token TOKEN "<command>"   # wrap and run a command
cronbark ping TOKEN                     # one-shot start+success
cronbark start TOKEN
cronbark success TOKEN
cronbark fail TOKEN --msg "..."
cronbark tick TOKEN
cronbark discover                       # scan local crontab

All HTTP calls are best-effort: network errors are swallowed and returned as {"status": "error", "message": "..."} so an unreachable monitoring service will never break your job.

Links

License

MIT — see LICENSE.

Metadata

Release files for cronbark 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for cronbark 0.1.0
File Size Uploaded
cronbark-0.1.0.tar.gz 8.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for cronbark 0.1.0
File Interpreter ABI Platform
cronbark-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 17.7 kB

Release files / cronbark-0.1.0.tar.gz

Download URL cronbark-0.1.0.tar.gz
Size 8.7 kB
Tags Source
SHA-256 checksum
How to use checksums
f4b0030fe6e89850678b3eaa2fe7c86c92f8f29914522a7174fd204041014e9c
BLAKE2b-256 checksum
How to use checksums
f8611f7361f0327e12ea34b2712f97b86f2821336ea799d5113fcd4846a5b131
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 20, 2026.

Transparency log

Release files / cronbark-0.1.0-py3-none-any.whl

Download URL cronbark-0.1.0-py3-none-any.whl
Size 9.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
0e9b5de47fb8a20bcda899a54f8dccd12a63780c0c058ccf0bf02294b86181be
BLAKE2b-256 checksum
How to use checksums
84da0a529dd8ad3d15495d729c9ee9eec9c045ac25dec2ad5c0642c0fc5ae3ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 20, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page