River Gauge History API
GET/v1/sensordata/water/gauge/{site}/history
Readings for the last 7 days at a USGS site, newest first, every parameter, with observed_at and ingested_at so a backtest can select what was known at a time. Refreshes every 15 minutes.
Price
$0.02/ callEdge cache
1800s
Uptime 24h
100.00%
p95
223ms
MCP tool
sensordata_water-gauge-site-history
The River Gauge History API provides readings for the last 7 days at a USGS site. The data includes every parameter, with observed_at and ingested_at timestamps. The API refreshes every 15 minutes. Parameters include site, from, to, and limit. The API is priced at $0.020 per request.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
| site* | path | string | |
| from | query | string | |
| to | query | string | |
| limit | query | integer = 500 |
Code
curl
# 1. No key, no payment: the gateway answers 402 with the price
curl -i "https://api.realtimeapi.ai/v1/sensordata/water/gauge/01646500/history"
# 2. Pay: retry with a signed x402 payment (any x402 client builds this header)
curl "https://api.realtimeapi.ai/v1/sensordata/water/gauge/01646500/history" -H "PAYMENT-SIGNATURE: $X402_PAYMENT"TypeScript · @x402/fetch
// npm i @x402/fetch @x402/core @x402/evm viem
import { wrapFetchWithPayment } from "@x402/fetch";
import { x402Client } from "@x402/core/client";
import { ExactEvmScheme } from "@x402/evm/exact/client";
import { privateKeyToAccount } from "viem/accounts";
const client = x402Client.fromConfig({ schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(privateKeyToAccount(PRIVATE_KEY)) }] });
const pay = wrapFetchWithPayment(fetch, client);
const data = await (await pay("https://api.realtimeapi.ai/v1/sensordata/water/gauge/01646500/history")).json();
console.log(data);Python · x402
# pip install "x402[requests,evm]==2.27.0" eth-account
from eth_account import Account
from x402 import x402ClientSync
from x402.http.clients import x402_requests
from x402.mechanisms.evm import EthAccountSigner
from x402.mechanisms.evm.exact import register_exact_evm_client
client = x402ClientSync()
register_exact_evm_client(client, EthAccountSigner(Account.from_key(PRIVATE_KEY)))
session = x402_requests(client)
print(session.get("https://api.realtimeapi.ai/v1/sensordata/water/gauge/01646500/history").json())With an API key
curl "https://api.realtimeapi.ai/v1/sensordata/water/gauge/01646500/history" -H "X-API-Key: $RTAPI_KEY"Frequently asked questions
What is the API endpoint?
The API endpoint is /water/gauge/{site}/history
What parameters are available?
The available parameters are site, from, to, and limit
How often is the data refreshed?
The data is refreshed every 15 minutes