get_data
Retrieve AEMO NEM observations for dispatch price, generation, or interconnector flows. Apply filters by region, fuel type, or time period.
Instructions
Query an AEMO NEM dataset and return observations.
Examples: # Latest NSW dispatch price (preferred over latest() if you want # a window) resp = await get_data("dispatch_price", filters={"region": "NSW1"})
# Whole-day NSW dispatch price for a specific day
resp = await get_data(
"dispatch_price",
filters={"region": "NSW1"},
start_period="2026-05-13",
end_period="2026-05-13"
)
# Generation by fuel for QLD, current
resp = await get_data("generation_scada", filters={"region": "QLD1"})
# All 6 interconnectors right now
resp = await get_data("interconnector_flows")Returns: DataResponse with records, units, period bounds, NEMWEB source URL, and AEMO attribution.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dataset_id | Yes | Dataset ID like 'dispatch_price'. Use the search endpoint or search tool to discover. | |
| filters | No | Dict of filter key → value(s). Common filters: 'region' (NSW1/QLD1/SA1/TAS1/VIC1), 'interconnector' (V-SA/Basslink/...), 'duid' (unit ID), 'fuel' (black_coal/gas/wind/solar/battery/...). Each dataset's valid filter keys + allowed values are listed in the dataset's detail metadata. | |
| start_period | No | Inclusive start of the period window in AEMO market time (UTC+10). Accepts 'YYYY', 'YYYY-MM', 'YYYY-MM-DD', or 'YYYY-MM-DD HH:MM'. Defaults to None which fetches just the most recent NEMWEB file for the dataset. | |
| end_period | No | Inclusive end. Same format as start_period. | |
| format | No | Response shape. 'records' (default): flat list of observations. 'series': observations grouped by dimensions. 'csv': returns the result as a CSV string in the `csv` field. | records |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| dataset_id | Yes | ||
| dataset_name | Yes | ||
| query | No | ||
| interval_start | No | ||
| interval_end | No | ||
| period | No | Canonical {start, end} period bounds for cross-sister consumers. Populated alongside aemo-specific interval_start/interval_end. | |
| unit | No | ||
| row_count | No | Number of observation rows in records. | |
| records | No | ||
| csv | No | ||
| source | No | Australian Energy Market Operator | |
| attribution | No | Source: Australian Energy Market Operator (AEMO), NEMWEB. Used under AEMO's Copyright Permissions (general permission for any purpose with accurate attribution). https://aemo.com.au/privacy-and-legal-notices/copyright-permissions | |
| source_url | Yes | ||
| retrieved_at | Yes | ||
| stale | No | ||
| stale_reason | No | ||
| truncated_at | No | ||
| server_version | No |