Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.
get_api_artifactsOne API's artifacts, grouped by type.
get_openapiThe primary OpenAPI for this API.
find_similar_apisAPIs that look like this one.
apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
resolveTurn a domain, URL or GitHub org into the provider it belongs to.
find_cohortsEvery scored population of providers in the catalog.
All 92 tools →
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/dataquoll-io:dataquoll-io-meta-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we
store it to create your key and to recognise you if you sign in with another
provider. See our Privacy Policy and
Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: DataQuoll Meta API
description: 'DataQuoll turns fragmented Australian public data into answers about locations, events and assets.
Today''s datasets: real-time emergency incidents and warnings (bushfires, floods, storms, earthquakes, rescues, and more) in one GeoJSON schema with CAP-aligned severity, urgency, and certainty fields that carry only what each agency states; disaster declarations reported by LGA as declared-area status; live river gauges with BoM flood classes; and a historical archive. DataQuoll was formerly EmergencyAPI. Standards-validated CAP output is available as an Atom feed via ?format=cap-atom and as per-incident documents via /api/v1/incidents/{id}?format=cap-au, both validated against the OASIS CAP 1.2 schema and the CAP-AU Profile v3.0. Includes real-time incidents, proximity search, and historical audit trail snapshots.
**Disclaimer:** DataQuoll provides aggregated emergency incident data for informational
purposes only. This data is sourced from
official government feeds, community-decoded SA pager feeds and an agency feed whose licence is not published (NT PFES).
It may be delayed, incomplete, or inaccurate. Do not use this API as a substitute for
official emergency warnings.'
version: 1.113.0
contact:
name: DataQuoll Support
url: https://dataquoll.io
license:
name: Proprietary
servers:
- url: https://dataquoll.io
description: Primary host
- url: https://emergencyapi.com
description: Legacy host, identical responses until the announced sunset
security:
- BearerAuth: []
tags:
- name: Meta
description: API metadata and health
paths:
/api/v1/states:
get:
operationId: listStates
summary: Feed health by state
description: Returns the status of each state feed, including last poll time, health, and incident count.
tags:
- Meta
security:
- BearerAuth: []
- PaymentAuth: []
x-payment-info:
offers:
- amount: '80000'
currency: '0x20C000000000000000000000b9537d11c60E8b50'
description: One request
intent: charge
method: tempo
price:
mode: fixed
currency: USD
amount: '0.08'
protocols:
- mpp:
method: tempo
intent: charge
currency: '0x20C000000000000000000000b9537d11c60E8b50'
- x402:
scheme: exact
network: eip155:8453
asset: '0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913'
amount: '80000'
responses:
'200':
description: Feed status for all states
headers:
Payment-Receipt:
$ref: '#/components/headers/PaymentReceipt'
content:
application/json:
schema:
type: object
properties:
states:
type: array
items:
type: object
properties:
state:
type: string
agency:
type: string
status:
type: string
enum:
- healthy
- degraded
- down
- unknown
lastPolled:
type: string
format: date-time
lastSuccess:
type: string
format: date-time
incidentCount:
type: integer
errorCount:
type: integer
'402':
description: 'Pay per request: no key was sent, so the answer is a price. The WWW-Authenticate header carries an MPP Payment challenge; pay it and send the request again with Authorization: Payment. Also sent, with a fresh price, when a payment fails its checks or its price has expired. Only while pay per request is on; otherwise a request without a key gets 401.'
headers:
WWW-Authenticate:
$ref: '#/components/headers/PaymentChallenge'
content:
application/problem+json:
schema:
$ref: '#/components/schemas/ProblemDetails'
application/json:
schema:
$ref: '#/components/schemas/ProblemDetails'
/api/v1/status:
get:
operationId: apiStatus
summary: API health check
description: Returns API health, version, uptime, and a summary of feed statuses.
tags:
- Meta
responses:
'200':
description: API health status
content:
application/json:
schema:
type: object
properties:
status:
type: string
example: ok
version:
type: string
example: 1.16.0
uptime:
type: string
example: 86400s
timestamp:
type: string
format: date-time
counts:
type: object
description: Summary of feed statuses. 'stale' is derived from last_polled_at age (a feed not polled within 2 hours reads as stale, so a dead poller is visible to monitors).
properties:
total:
type: integer
healthy:
type: integer
degraded:
type: integer
down:
type: integer
stale:
type: integer
description: Feeds not polled within 2 hours, derived from last_polled_at age regardless of stored status.
unknown:
type: integer
feeds:
type: array
items:
type: object
properties:
feedId:
type: string
description: 'The feed''s registry id, and the unique key for this entry. `state` and `agency` are NOT unique: two New South Wales RFS feeds and two Tasmanian TasALERT feeds each share a state/agency pair, so use `feedId` when you need to identify one exactly.'
example: nsw-rfs-cap
state:
type: string
agency:
type: string
status:
type: string
enum:
- healthy
- degraded
- down
- stale
- unknown
/api/v1/attribution:
get:
operationId: getAttribution
summary: Data source attributions
description: Returns attribution information for all data sources, including licence details. Required for CC BY compliance.
tags:
- Meta
responses:
'200':
description: Attribution data for all sources
content:
application/json:
schema:
type: object
properties:
description:
type: string
disclaimer:
type: string
count:
type: integer
description: Number of sources returned
sources:
type: array
items:
type: object
properties:
state:
type: string
agency:
type: string
name:
type: string
licence:
type: string
description: The published licence. For the feeds we poll, only a recognised licence (CC BY, CC0, public domain) or an explicit 'Used with permission' statement is shown; anything else (internal working notes, unconfirmed sources) is reported as 'Licence under review — see https://dataquoll.io/compliance'. Other sources state the licence their publisher gives, such as the Open G-NAF EULA, the Open Database License (OpenStreetMap) or Commonwealth copyright.
licenceUrl:
type: string
format: uri
description: The URL of the licence's own text, where we hold one (today, the Creative Commons page for CC licences). Absent where we hold none.
example: https://creativecommons.org/licenses/by/4.0/
url:
type: string
official:
type: boolean
description: true for a licensed statutory feed, false for every other source, such as the community-decoded pager feeds, agency feeds whose licence is not published (NT PFES), union and industry calendars, and OpenStreetMap.
attribution:
type: string
description: Agency-specified attribution text, present only when the source requires it.
/api/v1/schema:
get:
operationId: getSchema
summary: API schema and valid enum values
description: Returns all valid enum values for event types, categories, states, warning levels, and other filterable fields. Use this to discover what values are accepted by filter parameters. No authentication required.
tags:
- Meta
responses:
'200':
description: All valid enum values and category mappings
content:
application/json:
schema:
type: object
properties:
eventTypes:
type: array
items:
type: string
eventCategories:
type: array
items:
type: string
categoryMapping:
type: object
description: Maps each category to its constituent event types
states:
type: array
items:
type: string
warningLevels:
type: array
items:
type: string
statuses:
type: array
items:
type: string
severities:
type: array
items:
type: string
urgencies:
type: array
items:
type: string
certainties:
type: array
items:
type: string
formats:
type: array
items:
type: string
components:
headers:
PaymentChallenge:
description: 'The MPP payment challenge, scheme Payment: the price, the token, where to pay, the realm (dataquoll.io) and when the price expires, 5 minutes after it is issued. Pay it with an MPP client and send the request again with Authorization: Payment.'
schema:
type: string
PaymentReceipt:
description: 'Sent only on the response to a paid request (Authorization: Payment): the receipt for the payment, naming its transaction. Never sent when a key was used.'
schema:
type: string
schemas:
ProblemDetails:
type: object
description: RFC 9457 Problem Details
properties:
type:
type: string
example: https://emergencyapi.com/errors/rate-limit-exceeded
title:
type: string
example: Rate Limit Exceeded
status:
type: integer
example: 429
detail:
type: string
instance:
type: string
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: 'API key in format: eak_live_... . Keys work from any origin by default. A key can optionally be restricted to specific browser origins in the dashboard; a request from a browser origin not on the allowlist is rejected with 403. Requests without an Origin header (server-side) are never blocked by this.'
PaymentAuth:
type: http
scheme: payment
description: 'Pay per request with MPP (the Machine Payments Protocol), for an agent with no API key. Send the request with no Authorization header and the 402 response carries the price in its WWW-Authenticate header. Pay it in USDC.e on Tempo with an MPP client, then send the request again with `Authorization: Payment <credential>`; the response carries a Payment-Receipt header. Offered only on the operations that list it, and only while pay per request is on. A request with a Bearer key is never charged. Prices, receipts and refunds: https://docs.dataquoll.io/machine-payments'
x-service-info:
docs:
homepage: https://dataquoll.io
apiReference: https://docs.dataquoll.io
llms: https://dataquoll.io/llms.txt