Skip to main content

pyaviso

Python client for aviso-server, ECMWF's notification service for data-driven workflows. The repo this package ships from is aviso-client; the installable distribution and the importable module are both named pyaviso.

The package wraps the Rust core via PyO3 bindings. The compiled extension lives at pyaviso._native and a curated Python wrapper at pyaviso.__init__ exposes a Pythonic surface: synchronous AvisoClient and asynchronous AsyncAvisoClient, value types (Notification, NotifyResponse, SchemaCatalog, SchemaResponse), the Trigger builder, the five auth providers (Bearer, Basic, Env, ConfigFile, Chain), the two state stores (MemoryStore, JsonFileStore), and the exception hierarchy rooted at AvisoError.

Installing pyaviso also puts the aviso command-line tool on your PATH, so one install gives you both the importable library and the CLI.

Install

Add pyaviso to a project:

uv add pyaviso

For the standalone CLI:

uv tool install pyaviso

Quickstart

Set two environment variables for the server URL and credentials, then run a listener. pyaviso.Env() reads AVISO_TOKEN (preferred) or the AVISO_USERNAME/AVISO_PASSWORD pair.

export AVISO_BASE_URL=https://aviso.example.org
export AVISO_USERNAME=alice
export AVISO_PASSWORD=wonderland
import os
import pyaviso

client = pyaviso.AvisoClient(base_url=os.environ["AVISO_BASE_URL"], auth=pyaviso.Env())

polygon = [[0, 0], [1, 0], [1, 1], [0, 0]]
for notification in client.listen("test_polygon", filter={"polygon": polygon}):
    print(notification.sequence, notification.payload)

The example uses an event type called test_polygon. Substitute your own if your server has different schemas configured; discover what is there with client.schema().event_types and client.schema_for("<event_type>"). The user-facing Python documentation covers the full surface, including the async client, triggers, state stores, the exception hierarchy, and how schemas work.

License

Apache-2.0. See LICENSE. Copyright 2026 ECMWF and individual contributors.

Release files for pyaviso 2.2.2

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

Source distribution (sdist)

Source distribution for pyaviso 2.2.2
File Size Uploaded
pyaviso-2.2.2.tar.gz 466.8 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for pyaviso 2.2.2
File Interpreter ABI Platform
pyaviso-2.2.2-cp310-abi3-manylinux_2_28_x86_64.whl CPython 3.10 abi3 Linux glibc 2.28+ x86-64 Details
pyaviso-2.2.2-cp310-abi3-manylinux_2_28_aarch64.whl CPython 3.10 abi3 Linux glibc 2.28+ ARM64 Details
pyaviso-2.2.2-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl CPython 3.10 abi3 macOS 11.0+ ARM64, macOS 10.12+ universal2 (ARM64, x86-64), macOS 10.12+ x86-64 Details

Total release size: 23.4 MB

Release files / pyaviso-2.2.2.tar.gz

Download URL pyaviso-2.2.2.tar.gz
Size 466.8 kB
Tags Source
SHA-256 checksum
How to use checksums
f43c3e1a05fc0018933a58060ffb34a452d21d2493fdd0ad18ad28f42b0e6fb6
BLAKE2b-256 checksum
How to use checksums
942865141605a21cda394097cf0adf320ffad07f424f64dedfb371d144828c92
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyaviso-2.2.2-cp310-abi3-manylinux_2_28_x86_64.whl

Download URL pyaviso-2.2.2-cp310-abi3-manylinux_2_28_x86_64.whl
Size 6.0 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64 abi3
SHA-256 checksum
How to use checksums
6256a0f0bd9fffbfb08321057638e5af63d2ad3a4ca1bbc219bdaeabb9537ea7
BLAKE2b-256 checksum
How to use checksums
16dcc15b0fff2f9ba5fda8995d5e2a77303452f61a7381e1b390f68a2053cd47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyaviso-2.2.2-cp310-abi3-manylinux_2_28_aarch64.whl

Download URL pyaviso-2.2.2-cp310-abi3-manylinux_2_28_aarch64.whl
Size 5.9 MB
Tags CPython 3.10 Linux glibc 2.28+ ARM64 abi3
SHA-256 checksum
How to use checksums
c089bfc7e55585ff97734d3b4970e428043d7e6e1af79aad1a6a456c8c917f26
BLAKE2b-256 checksum
How to use checksums
4b5127777b018c2a50c866d66615248e102a3586b9c063cfc1e930dc4821735a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / pyaviso-2.2.2-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl

Download URL pyaviso-2.2.2-cp310-abi3-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl
Size 11.0 MB
Tags CPython 3.10 abi3 macOS 10.12+ universal2 (ARM64, x86-64) macOS 10.12+ x86-64 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
42676cd38825b0e58466705a74520ac5e8aac7001f5724e6a55d61cff1312974
BLAKE2b-256 checksum
How to use checksums
d9ec58af40c128946afa6a17aa6ba3ab50555a0c9638519d72bd127fe16f9a8e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14
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