Synergic APIsSynergic APIs

API documentation

US Oil Inventories API

Since 1982

The weekly stocks the market moves on (thousand barrels): US crude since 1982, Cushing hub, the Strategic Petroleum Reserve, total gasoline and distillate fuel oil.

500 req/mo · No credit card required · One key, every API on the platform

  • Checking status…
  • Crude weekly since 1982
  • 5 instruments · Cushing since 2004
  • Thousand barrels (MBBL)
  • Source: EIA Weekly Petroleum Status Report

Base URL & authentication

All endpoints live under one base URL. Authenticate every request with your key in the X-Api-Key header — no OAuth, no signing. The same key works on every API of the platform.

# Base URL
{{GATEWAY_URL}}

# Every request
X-Api-Key: sk_live_YOUR_KEY

Missing or invalid keys return 401 — see errors. The demo endpoint is the only keyless route.

Endpoints

All paths relative to the base URL. Every 200 ships ETag, Cache-Control and RateLimit-* headers.

MethodPathSummary
GET/oil-inventories/latest Free+Latest stocks for every instrument, one call.
GET/oil-inventories/{instrument} Free+Latest stocks for one instrument — crude | cushing | spr | gasoline | distillate.
GET/oil-inventories/{instrument}/history Free+Paginated weekly history per instrument: start/end, limit, keyset via meta.next_end.

Sample — 200 /oil-inventories/latest

{
  "data": [
    { "instrument": "crude", "period": "2026-07-24", "stocks": 438291, "unit": "MBBL", "source": "EIA" },
    { "instrument": "cushing", "period": "2026-07-24", "stocks": 24815, "unit": "MBBL", "source": "EIA" }
  ]
}
Get a free API key 500 req/mo · No credit card required

Errors, auth & limits

One uniform error contract everywhere: { "error": { "code", "message" } } with stable, machine-readable codes — shared by every API on the platform.

StatusCodeWhen
401UNAUTHORIZEDMissing X-Api-Key header, or invalid/revoked key.
400VALIDATION_ERRORBad query/path parameters.
404INSTRUMENT_NOT_FOUND · NO_DATA · NOT_FOUNDUnknown value for the path parameter (the message lists the valid ones), no data for the requested range yet, or unknown route.
429RATE_LIMITEDPer-minute limit of your plan exceeded — check Retry-After.
429QUOTA_EXCEEDEDMonthly cap reached. Nothing is billed on top — resets on the 1st (UTC).
502UPSTREAM_ERRORThe origin API was unreachable — retry shortly.

Data provenance

The EIA Weekly Petroleum Status Report, five headline stock series: US crude oil (since 1982), Cushing OK (since 2004), the Strategic Petroleum Reserve, total motor gasoline and distillate fuel oil — in thousand barrels (MBBL), period = the survey week-ending Friday. This product is not endorsed by or affiliated with the EIA.

Example

curl -H "X-Api-Key: sk_live_YOUR_KEY" \
  https://api.synergicapis.com/oil-inventories/latest

Live demo

Real request against the production API — no key needed here (demo endpoint, 5 requests/minute).

Press the button to fetch the latest official figures.