pbs-client
pbs-client is an offline-first Python client and local SQLite mirror for the Australian PBS Public Data API v3. It mirrors all API resources, retains schedule history locally, and exposes small read helpers for item, restriction/indication, and ATC lookups.
Quick start
uv sync --extra dev
uv run omop-config configure pbs_client
uv run pbs-client init-db
uv run pbs-client sync
The package registers PBSClientConfig with oa-configurator under the
pbs_client tool name. The configuration wizard creates a [tools.pbs_client]
section and a named generic database entry (pbs_db) that can be shared with
downstream packages such as Groundworkers.
For a non-interactive local SQLite setup, the relevant stack configuration is:
[connections.pbs_local]
dialect = "sqlite"
database_name = "/absolute/path/to/pbs_client.db"
[databases.pbs_db]
kind = "generic"
connection = "pbs_local"
[tools.pbs_client]
pbs_db = "pbs_db"
subscription_key = "your-subscription-key"
Set OA_CONFIG_PATH before invoking the commands when using a config file
outside ~/.config/omop/config.toml.
The public API is deliberately rate limited to one request per twenty seconds. The client enforces that interval process-wide, including retries and page continuations. Tests use local fixtures and never call the API.
All configuration — the subscription key, base URL, rate limit, and the
shared mirror database — is read from oa-configurator. There is no
environment-variable or CLI-flag fallback; run uv run omop-config configure pbs_client before using the library or CLI.
Metadata
Release files for pbs-client 0.2.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pbs_client-0.2.0.tar.gz | 62.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pbs_client-0.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 88.4 kB
Release files / pbs_client-0.2.0.tar.gz
| Download URL | pbs_client-0.2.0.tar.gz |
|---|---|
| Size | 62.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
476fabbda404a19da8ac822ae210f3de4f9abcf59c6a985a428bef132086eb2f
|
|
BLAKE2b-256 checksum How to use checksums |
37dc16bf2651d1ecbcd150d45e26b71efefd0dc9b051f79e53e251721801c1b8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 9, 2026.
Transparency logRelease files / pbs_client-0.2.0-py3-none-any.whl
| Download URL | pbs_client-0.2.0-py3-none-any.whl |
|---|---|
| Size | 25.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e1d9602b7f4486c55d8a17a062e4cf93f6f6f21032bc48aabeae616a3ffc74a8
|
|
BLAKE2b-256 checksum How to use checksums |
e7fecf0fcc5b853a84539dcbe4578501105c8ad9bc91b4821ff8e553b110c996
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
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 Sep 9, 2026.
Transparency log