Metadata-Version: 2.4
Name: z4j-apscheduler
Version: 1.3.0
Summary: z4j scheduler adapter for APScheduler (Apache 2.0)
Project-URL: Changelog, https://github.com/z4jdev/z4j-apscheduler/blob/main/CHANGELOG.md
Project-URL: Documentation, https://z4j.dev
Project-URL: Homepage, https://z4j.com
Project-URL: Issues, https://github.com/z4jdev/z4j-apscheduler/issues
Project-URL: Source, https://github.com/z4jdev/z4j-apscheduler
Author: z4j contributors
License: Apache-2.0
License-File: LICENSE
Keywords: apscheduler,cron,dramatiq,scheduler,z4j
Classifier: Development Status :: 5 - Production/Stable
Classifier: Framework :: AsyncIO
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Classifier: Topic :: System :: Distributed Computing
Classifier: Typing :: Typed
Requires-Python: >=3.11
Requires-Dist: apscheduler>=3.11.2
Requires-Dist: z4j-core<2,>=1.3.0
Description-Content-Type: text/markdown

# z4j-apscheduler

[![PyPI version](https://img.shields.io/pypi/v/z4j-apscheduler.svg)](https://pypi.org/project/z4j-apscheduler/)
[![Python](https://img.shields.io/pypi/pyversions/z4j-apscheduler.svg)](https://pypi.org/project/z4j-apscheduler/)
[![License](https://img.shields.io/pypi/l/z4j-apscheduler.svg)](https://github.com/z4jdev/z4j-apscheduler/blob/main/LICENSE)


**License:** Apache 2.0
**Status:** v1.0.0 - first public release alongside `z4j-dramatiq`.

z4j scheduler-axis adapter for
[APScheduler](https://apscheduler.readthedocs.io/). APScheduler is
engine-agnostic (it can fire anything - Dramatiq actors, bare
callables, Celery signatures, HTTP calls), so this adapter pairs
with **every** engine, not just Dramatiq. The dashboard's
Schedules page uses it as the canonical non-Celery scheduler.

## Install

```bash
pip install z4j[dramatiq,apscheduler]
# or standalone:
pip install z4j-apscheduler
```

## Capabilities

| Token | Status | Note |
|---|---|---|
| `list` | ✅ | Walks `scheduler.get_jobs()` |
| `enable` / `disable` | ✅ | via `scheduler.pause_job(id)` / `resume_job(id)` |
| `trigger_now` | ✅ | `scheduler.modify_job(id, next_run_time=now)` |
| `delete` | ✅ | `scheduler.remove_job(id)` |
| `create` / `update` | ⏸️ | Deferred to v1.1 (same rationale as z4j-rqscheduler) |

## See also

- [`packages/z4j-dramatiq/`](../z4j-dramatiq/) - the most common engine pairing.
- [`docs/ADAPTER.md`](../../docs/ADAPTER.md) - generic adapter guide.

## License

Apache 2.0 - see [LICENSE](LICENSE). This package is deliberately permissively licensed so that proprietary Django / Flask / FastAPI applications can import it without any license concerns.

## Links

- Homepage: <https://z4j.com>
- Documentation: <https://z4j.dev>
- Source: <https://github.com/z4jdev/z4j-apscheduler>
- Issues: <https://github.com/z4jdev/z4j-apscheduler/issues>
- Changelog: [CHANGELOG.md](CHANGELOG.md)
- Security: `security@z4j.com` (see [SECURITY.md](SECURITY.md))
