API Reference
Programmatic access to real-time prices, ISO averages, and settlement data. RESTful design, JSON responses, no SDK required.
https://api.wattmarkets.com/v1Quick Start
# Get latest prices for all ISOs curl https://api.wattmarkets.com/v1/alerts/prices/latest # Get price summary with ISO averages curl https://api.wattmarkets.com/v1/prices/summary # Get settlement data for a specific date curl https://api.wattmarkets.com/v1/settlement/ERCOT/LZ_HOUSTON/2025-01-20
Authentication
Real-time prices and ISO averages. No authentication required. Rate limited to 20 requests/minute.
Settlement data and historical queries. Requires API key. Contact us for access.
API Key Header
Authorization: Bearer <your-api-key>Endpoints
/api/v1/alerts/prices/latestPublicCurrent prices for all ISOs
Response
[
{
"iso_id": "ERCOT",
"market_type": "RTM",
"prices": {
"LZ_HOUSTON": {
"price_mwh": 42.15,
"timestamp": "2025-01-22T14:30:00Z"
},
"HB_NORTH": {
"price_mwh": 38.90,
"timestamp": "2025-01-22T14:30:00Z"
}
},
"updated_at": "2025-01-22T14:30:00Z"
}
]/api/v1/prices/point/{iso_id}/{node_id}PublicCurrent price and statistics for a specific settlement point
Response
{
"iso_id": "ERCOT",
"node_id": "LZ_HOUSTON",
"display_name": "Houston Hub",
"current": {
"price_mwh": 45.20,
"timestamp": "2025-01-22T14:30:00Z"
},
"hour": {
"high": 52.10,
"low": 38.50,
"avg": 44.80,
"change_pct": 3.2
},
"day": {
"high": 125.00,
"low": 22.50,
"avg": 48.30,
"percentile": 72
}
}/api/v1/prices/summaryPublicPrice summary and averages for all ISOs
Response
{
"timestamp": "2025-01-22T14:30:00Z",
"isos": [
{
"iso_id": "ERCOT",
"avg_price": 45.20,
"min_price": 28.50,
"max_price": 125.00,
"node_count": 8,
"price_range": "normal"
}
]
}/api/v1/grid/changesPublicRecent material price changes
Response
{
"timestamp": "2025-01-22T14:30:00Z",
"changes": [
{
"iso_id": "CAISO",
"type": "price_spike",
"timestamp": "2025-01-22T14:25:00Z",
"description": "SP15 spiked to $125/MWh"
}
],
"message": "2 material changes in the last 60 minutes"
}/api/v1/alerts/prices/streamPublicServer-Sent Events stream for real-time price updates
Response
event: connected
data: {"isos": ["ERCOT", "PJM", "CAISO"]}
event: price
data: {
"iso_id": "ERCOT",
"market_type": "RTM",
"timestamp": "2025-01-22T14:30:05Z",
"prices": {
"LZ_HOUSTON": {"price_mwh": 45.25, "timestamp": "..."}
}
}/api/v1/settlement/{iso}/{node}/{date}LimitedHistorical settlement prices for a specific date
Response
{
"iso_id": "ERCOT",
"node_id": "LZ_HOUSTON",
"date": "2025-01-20",
"prices": [
{ "hour": 0, "da_price": 32.50, "rt_price": 31.80 },
{ "hour": 1, "da_price": 30.25, "rt_price": 29.90 }
],
"metrics": {
"avg": 45.20,
"min": 28.50,
"max": 125.00
}
}/api/v1/settlement/{iso}/{node}LimitedAvailable settlement dates for a node
Response
{
"iso_id": "ERCOT",
"node_id": "LZ_HOUSTON",
"available_dates": [
"2025-01-20",
"2025-01-19",
"2025-01-18"
],
"first_date": "2024-01-01",
"last_date": "2025-01-20"
}Rate Limits
| Tier | Requests/min | Burst |
|---|---|---|
| Public | 20 | 5 |
| Limited (API Key) | 300 | 50 |
| Enterprise | Custom | Custom |
Error Codes
| Code | Meaning |
|---|---|
| 400 | Bad request - invalid parameters |
| 401 | Unauthorized - invalid or missing API key |
| 404 | Not found - resource doesn't exist |
| 429 | Rate limit exceeded |
| 500 | Internal server error |
SDKs & Libraries
Python
pip install wattmarketsComing soon
JavaScript/TypeScript
npm install @wattmarkets/sdkComing soon
API is provided as-is. Data latency and availability may vary. This is not investment advice and should not be used as the sole basis for trading decisions.