aio-geojson-geonetnz-quakes
An async GeoJSON client library for GeoNet NZ Quakes feed.
What it is and what it does
This is an async Python client library for the GeoNet NZ Quakes feed, built on top of aio_geojson_client and aiohttp. It retrieves earthquake data from the GeoNet API as GeoJSON and exposes it through a simple async interface. You instantiate a feed object with home coordinates and optional filters (radius in km, minimum magnitude, time window, MMI threshold), then call update() to fetch current earthquake data. The library returns a status code and a list of feed entries, each populated with geometry, coordinates, magnitude, depth, locality, MMI shaking estimate, and quality metadata.
The library also provides a Feed Manager that tracks changes across updates: new earthquakes, updates to existing ones, and removals. This is useful for applications that need to react to feed changes over time—such as home automation systems or emergency alerting. The Feed Manager distinguishes between the last update timestamp (regardless of success) and the last successful update timestamp, allowing consumers to handle intermittent API failures gracefully.
Use it for:
- Home automation: trigger alerts or actions when earthquakes above a certain magnitude occur near a monitored location.
- Emergency response systems: monitor seismic activity in real time and notify stakeholders of significant events in New Zealand.
- Geospatial data aggregation: collect and integrate earthquake data with other location-based services or mapping applications.
- Seismic research: fetch historical and current earthquake data for analysis, filtering by magnitude, depth, and time window.
- Public alerting: build a web or mobile app that displays nearby earthquakes with MMI shaking estimates for user locations.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Provides async access to the GeoNet NZ Quakes feed, parsing earthquake data as GeoJSON with filtering by radius, magnitude, and time interval.
Yes. The package is actively maintained, has no known vulnerabilities, low install friction, and a permissive license. It solves a specific, well-defined problem—async access to New Zealand earthquake data with flexible filtering—and is suitable for production use in home automation, emergency systems, or geospatial applications. The Feed Manager pattern makes it practical for long-running services.
Install
aio-geojson-geonetnz-quakes on PyPI
pip
pip install aio-geojson-geonetnz-quakesuv
uv add aio-geojson-geonetnz-quakespoetry
poetry add aio-geojson-geonetnz-quakesInstalling aio-geojson-geonetnz-quakes
Before you install
Low friction: pure Python wheel with only three runtime dependencies (aio_geojson_client, aiohttp, pytz). Active maintenance since 2019, last commit 2026-07-20, and supports current Python versions (3.11–3.14).
License in practice
Apache-2.0 permissive license allows commercial and private use with minimal restrictions, making it safe to integrate into most projects.
Quickstart
pip install aio-geojson-geonetnz-quakes
import asyncio
from aiohttp import ClientSession
from aio_geojson_geonetnz_quakes import GeonetnzQuakesFeed
async def main():
async with ClientSession() as websession:
feed = GeonetnzQuakesFeed(websession, (-41.2, 174.7), mmi=2,
filter_radius=200,
filter_minimum_magnitude=2.5)
status, entries = await feed.update()
print(status, entries)
asyncio.get_event_loop().run_until_complete(main())
Requires Python 3.11 or later; aiohttp ClientSession must be created and passed to the feed.
Verify before relying
- Whether MMI filtering (Modified Mercalli intensity scale) is available for all regions or only New Zealand.
- Performance characteristics when filtering large result sets by radius or magnitude.
- Whether feed manager state persists across application restarts or requires external storage.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — aio_geojson_client, aiohttp, pytz |
| Maintenance | actively maintained — 46 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 74,146/month — #14,869 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: aio_geojson_geonetnz_quakes-2026.6.0-py3-none-any.whl
Keywords: homeassistant, geojson, new zealand, geonetnz, earthquakes
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
aio-geojson-geonetnz-volcanoAsync client library for retrieving New Zealand…
permissive · top 15,000 on PyPI
georss-ign-sismologia-clientFetches and parses earthquake event data from…
permissive · top 15,000 on PyPI
aio-geojson-clientProvides async access to GeoJSON feeds with…
permissive · top 15,000 on PyPI
aio-geojson-nsw-rfs-incidentsAsync client library for fetching and filtering…
permissive · top 15,000 on PyPI
aio-georss-gdacsProvides async access to Global Disaster Alert…
permissive · top 15,000 on PyPI
aio-georss-clientProvides async access to GeoRSS feeds with…
permissive · top 15,000 on PyPI
georss-qld-bushfire-alert-clientFetches and parses Queensland Bushfire Alert…
permissive · top 15,000 on PyPI
georss-clientA framework for building client libraries that…
permissive · top 15,000 on PyPI
georss-generic-clientProvides generic access to GeoRSS feeds with…
permissive · top 15,000 on PyPI
giosFetches real-time air quality measurements from…
permissive · top 15,000 on PyPI