Oil price API: series values
Series valuesOne series, point by point.
PlansEvery plan
Cost1 call per request
ReturnsUp to 5,000 points
UpdatedAs each source changes
What it is for
Every figure the API holds sits in a series: one code, one unit, one currency, one frequency. This call reads one series' points, oldest first. Find a code with List series, or take it from any other answer.
Without from you get the latest points, as many as limit. With from and to you get that window in full, up to 5,000 points; page through longer ranges by moving from.
Good for
- Charting a country's pump price over years
- A benchmark next to a pump price
- Prices in today's money with
real=latest - One currency across countries with
currency=usd
Parameters 1 in the path, 5 in the query
| Name | Where and type | Required | What it does | Example |
|---|---|---|---|---|
series | path string | required | Goes in the address itself. | crude.brent.europe |
from | query date | optional | First date, YYYY-MM-DD. | 2024-01-01 |
to | query date | optional | Last date, YYYY-MM-DD. | 2024-12-31 |
currency | query ISO 4217 | optional | Convert every price to this currency on its own day, such as usd. | usd |
real | query string | optional | Restate every price in the money of one month with the country's consumer price index: latest, or a month as YYYY-MM such as 2020-01. | latest |
limit | query integer | default 100 | Most recent points when no from is given. Up to 5,000. | 5 |
Try it runs against the live API with your key
No key yet? Get a free one; it is saved in this browser for every page.
The answer 200, application/json
| Field | Type | What it holds | Example |
|---|---|---|---|
series | string | Series code, or the series we hold | "crude.brent.europe" |
unit | string | litre, gallon or barrel | "barrel" |
currency | string | Three letter currency code | "USD" |
values | array | The points, oldest first | {"date":"2026-10-21","value":117.37} |
Example answer real, from what we hold now; long lists cut to three
GET /v1/series/crude.brent.europe?limit=5{ "data": { "series": "crude.brent.europe", "name": "Brent crude oil, spot", "family": "crude", "product": "crude_brent", "country": null, "region": null, "market": "Europe", "unit": "barrel", "currency": "USD", "interval": "day", "first_date": "1987-05-20", "last_date": "2026-10-27", "points": 9117, "values": [ { "date": "2026-10-21", "value": 117.37 }, { "date": "2026-10-22", "value": 125.39 }, { "date": "2026-10-23", "value": 128.3 } ] }, "meta": { "count": 5 } }
Errors every error has the same shape
| HTTP | Code | When | What to do |
|---|---|---|---|
| 401 | unauthorized | No key, or not a valid one | Send your key in the X-API-Key header; your account page shows it. |
| 400 | bad_request | A value is wrong or a required one is missing | The message names the parameter and the form it takes. |
| 422 | unknown_parameter | A parameter this endpoint does not take | Take it out; the parameters this endpoint takes are listed above. |
| 404 | not_found | No record by that series | Check the code; the list endpoint gives every one that exists. |
| 429 | rate_limited | Too many calls this minute | Wait the seconds in the Retry-After header, then call again. |
| 429 | quota_exceeded | Today's calls are used up | Wait for the day to reset at midnight UTC, or move to a larger plan. |
Dates and times are UTC. A point's date is the day its price took effect, or the first day of its week or month for weekly and monthly series. Conversions use each day's own rate, so a converted series moves with both the price and the exchange rate.