Commodities Time Series API
See every move in the market-day by day, dollar by dollar.
When you need more than a single closing price for a range of period (up to an year), the Commodities Time Series API delivers. Specify any supported symbol (goldXAU, Brent crude BRENTOIL-SPOT / BRENTOIL-FUT, wheat ZW-SPOT /ZW-FUT, and the rest of our 520+ commodities) plus a start and end date, and you'll receive a complete day-by-day record: open, high, low, and close. The result is a clean JSON timeline you can plot, model, or feed straight into dashboards-so analysts, traders, and researchers always know exactly how the market evolved, not just where it ended. Individual futures delivery months work too, and their daily close is the exchange's settlement price.
Use this endpoint to show daily OHLC values. Then plug in the same range to the fluctuation API for instant % change. Best for summary cards and tooltips.
This combo gives both the journey and the destination.
Features that Turn Data into Insight
Daily price granularity
Track open, high, low, and close (OHLC) for every trading day up to 365 days-ideal for plotting candlestick charts or analyzing daily market behavior with accuracy.
Supports 520+ commodities
From Gold (XAU, in USD per troy ounce) to Brent Crude (BRENTOIL-SPOT / BRENTOIL-FUT, in USD per barrel), you get consistent formatting across metals, energy, agriculture, and industrials.
Several Commodities on One Timeline
The response is keyed by date, then by symbol, so every commodity you ask for sits on the same timeline. Markets close on different holidays, so a commodity is simply left out of any date it has no price for, without hiding the others. Nothing is copied forward or estimated to fill a gap.
Daily Settlement for Futures Delivery Months
Individual futures months likeWTIOIL-FUT-DEC27 return one row per trading day, and their close is the exchange's daily settlement price. Contract month history starts in October 2026, so use the continuous symbol, like WTIOIL-FUT, for longer futures history.Notes
The maximum date range for a single request is 365 days (1 year). The range betweenstartDate and endDate must not exceed this limit.For monthly-updated commodities, only close is meaningful - open, high, and low come back as 0, and each entry is keyed by the first day of the month.API Endpoint
How-To-Guides
How to Use the Commodities Time Series API
Getting started is straightforward. You only need the commodity symbol (like XAU for Gold, BRENTOIL-SPOT / BRENTOIL-FUT for Brent Crude) and the date range that you are looking for.
This endpoint returns daily OHLC candles (Open, High, Low, Close) for every date that data is available - skipping non-trading days automatically.
For example, if you're tracking Gold (XAU) from 2025-01-01 to 2025-03-01, the API will return daily price points for each valid market day within that range.
If the date range includes weekends or holidays, those days are simply excluded from the output.
$ curl -X 'GET' 'https://api.apifreaks.com/v2.0/commodity/time-series?apiKey=API-KEY&symbols=XAU&startDate=2025-01-01&endDate=2025-03-01'
# Response
{
"success": true,
"startDate": "2025-01-01",
"endDate": "2025-03-01",
"rates": {
"2025-01-01": {
"XAU": {
"open": 2659.08,
"high": 2664.85,
"low": 2656.34,
"close": 2662.84
}
},
"2025-01-02": {
"XAU": {
"open": 2658.42,
"high": 2665.25,
"low": 2636.46,
"close": 2638.28
}
},
"2025-01-03": {
"XAU": {
"open": 2658.39,
"high": 2665.23,
"low": 2636.62,
"close": 2639.51
}
},
"2025-01-04": {
Only closing rates are available for monthly-updated commodities. A symbol counts as resolved if it appears on at least one date in the range - missing individual days for an otherwise-resolved symbol aren't reported as errors. If a symbol doesn't appear on any date, it's reported in an unresolved object (as a 206 Partial Content response), sometimes with a suggestions array of close-match symbols.
Chart the Daily Settlement of a Futures Month
Use a contract symbol to get one row per trading day. For contract months, close is the exchange's settlement price.
$ curl -X 'GET' 'https://api.apifreaks.com/v2.0/commodity/time-series?apiKey=API-KEY&symbols=WTIOIL-FUT-DEC26&startDate=2026-10-12&endDate=2026-10-14'
# Response
{
"success": true,
"startDate": "2026-10-12",
"endDate": "2026-10-14",
"rates": {
"2026-10-12": {
"WTIOIL-FUT-DEC26": {
"open": 90.98,
"high": 93.43,
"low": 88.9,
"close": 92.86
}
},
"2026-10-13": {
"WTIOIL-FUT-DEC26": {
"open": 92.4,
"high": 94.09,
"low": 90.85,
"close": 93.17
}
},
"2026-10-14": {
"WTIOIL-FUT-DEC26": {
"open": 93.73,
"high": 94.87,
"low": 93.06,
"close": 93.9
}
}
}
The history stays available after the contract expires, so the same request keeps working for past months.
Frequently Asked Questions
unresolved and not charged, and the rest of the response comes back as usual with a 206 status. If none of the symbols have data in the range, the API returns a 404.Pricing
To access the Commodity Time Series API, API credits are required. Credits are only deducted for successful requests (2xx status code). If a request returns a 4xx or 5xx status code, no credits will be charged, and any previously deducted credits will be refunded.
Each successful Commodity Time Series request costs 50 credits, plus 1 credit for each symbol included in the request.
If you provide both valid and invalid symbols, the API will return a successful 2xx response with only the valid symbols included. No credits are deducted for invalid symbols, and any credits charged for them will be refunded.
Utilize the Credits Usage API to efficiently monitor your recent consumption of both one-off and subscription credits. This API provides a streamlined way to track and manage your credit usage, helping you stay informed about your remaining balance and optimize your resource allocation effectively.