Real-Time Commodity Price API: Gold, Oil & 102 Markets
This commodities API returns live spot prices for gold, oil, metals, agriculture and more: 102 commodities in one consistent JSON schema. Every response includes the current price plus daily, weekly, monthly, year-to-date and yearly change, ready to drop into trading tools, dashboards and research pipelines.
Get Your API Key Discover Docs← All financial data endpoints
Why Use FinanceFlowAPI’s Commodity Price API?
Tracking commodity prices usually means integrating a different exchange feed or data vendor for metals, energy and agriculture separately, each with its own format. The Commodity Price API, a commodity data API for metals, energy and agriculture, normalizes 102 commodities across every major category into one schema and one authentication method, so you can add a new market to your product without a new integration.
- One JSON schema for every commodity: no per-source parsing.
- 102 commodities verified live against production, from gold and crude oil to freight indices.
- A dedicated catalog endpoint to discover the exact commodity names available, instead of guessing spellings.
- Same account, API key and billing as the rest of FinanceFlowAPI: Bonds, Currency, Economic Calendar and Economic Indicators data.
Key Capabilities
- Current price plus five change metrics. Every response includes
daily_change,weekly_change_percent,monthly_change_percent,ytd_change_percentandyearly_change_percentalongside the current price, so you get trend context without a second call. - Query by exact commodity name. Request precisely the market you need, e.g.
gold,crude oil,brent. - Built-in discovery.
commodity-cataloglists every commodity name available, so you never have to guess spelling. - Broad category coverage: precious metals, energy, industrial metals & materials, agriculture and commodity indices in one API.
Gold, Oil & Other Popular Commodity Prices via API
Gold and crude oil are two of the most frequently requested markets on the Commodity Price API, and both use the exact same commodity-spot endpoint as every other commodity, just change the name parameter:
- Gold price API:
GET /commodity-spot?api_key=YOUR_API_KEY&name=gold - Oil price API: crude oil (WTI) via
name=crude oil, or Brent vianame=brent - Silver price API:
name=silver - Natural gas price API:
name=natural gas
Each of these returns the same response shape as any other commodity: current price, and daily/weekly/monthly/YTD/yearly change. See Response Schema below for the full field list.
Data Coverage & Trust
| Metric | Value |
|---|---|
| Commodities covered | 102 (verified live via commodity-catalog, 2026-11-11) |
| Categories | Precious metals, energy, industrial metals & materials, agriculture, commodity & freight indices |
| Response format | JSON |
| Historical / time-series data | Not on this endpoint. commodity-spot returns only the current price plus period-over-period % changes, no date-range query. A separate commodity-history endpoint exists in the API for that (see Limitations) |
| Authentication | API key, passed as an api_key query parameter |
| Rate limit | Per-minute request limit, varies by subscription plan. See Pricing & Access below |
| Update frequency | Near real-time, updated approximately every minute per the site’s API documentation |
Data Methodology
Commodity Price API data is aggregated from market and exchange data sources and normalized into one consistent schema (commodity_name, current_price, and five change fields) for every supported commodity, so your integration doesn’t need a different parser per source. Sourced from aggregated third-party market and statistical data providers; the specific vendor and full per-commodity methodology are not published.
Request Example
GET https://financeflowapi.com/api/v1/commodity-spot?api_key=YOUR_API_KEY&name=gold
Response Example
{
"success": true,
"code": 200,
"message": "OK",
"meta": {
"timestamp": 1787480152,
"request_id": "6a8ac858320ea"
},
"data": {
"commodity_name": "gold",
"current_price": 4607.35,
"daily_change": "91.57",
"daily_change_percent": "2.03%",
"weekly_change_percent": "5.30%",
"monthly_change_percent": "11.54%",
"ytd_change_percent": "6.66%",
"yearly_change_percent": "36.59%",
"last_updated": "2026-08-21"
}
}
API Parameters
commodity-spot returns the current price for one commodity:
| Parameter | Required | Description |
|---|---|---|
api_key | Yes | Your FinanceFlowAPI key |
name | Yes | Commodity name exactly as returned by commodity-catalog, e.g. gold, crude oil, brent |
commodity-catalog lists the available commodity names:
| Parameter | Required | Description |
|---|---|---|
api_key | Yes | Your FinanceFlowAPI key |
Response Schema
The data object for commodity-spot:
| Field | Type | Description |
|---|---|---|
commodity_name | string | Commodity name, matches catalog spelling |
current_price | number | Latest price |
daily_change | string (numeric) | Absolute price change vs. the previous day |
daily_change_percent | string | Percent change vs. the previous day |
weekly_change_percent | string | Percent change vs. one week ago |
monthly_change_percent | string | Percent change vs. one month ago |
ytd_change_percent | string | Percent change since the start of the year |
yearly_change_percent | string | Percent change vs. one year ago |
last_updated | string | Date the price was last updated, YYYY-MM-DD |
Each item in data for commodity-catalog:
| Field | Type | Description |
|---|---|---|
name | string | Commodity name |
HTTP Status & Errors
| HTTP code | Meaning | When it happens |
|---|---|---|
200 | OK | Request succeeded, data returned |
400 | Bad request | name missing |
403 | Invalid API key or subscription expired | api_key missing, invalid, or your subscription has expired |
404 | Data not found | Unknown or misspelled commodity name. Unlike some other FinanceFlowAPI endpoints, an unmatched name returns a 404 here, not an empty result |
429 | Rate limit exceeded | You exceeded the per-minute request limit for your subscription plan |
500 | Internal error | Unexpected server-side failure (rare) |
Code Examples
curl "https://financeflowapi.com/api/v1/commodity-spot?api_key=YOUR_API_KEY&name=gold"
import requests
url = "https://financeflowapi.com/api/v1/commodity-spot"
params = {
"api_key": "YOUR_API_KEY",
"name": "gold"
}
response = requests.get(url, params=params)
data = response.json()
print(data)
const params = new URLSearchParams({
api_key: "YOUR_API_KEY",
name: "gold"
});
fetch(`https://financeflowapi.com/api/v1/commodity-spot?${params}`)
.then(res => res.json())
.then(data => console.log(data));
<?php
$params = http_build_query([
'api_key' => 'YOUR_API_KEY',
'name' => 'gold',
]);
$response = file_get_contents("https://financeflowapi.com/api/v1/commodity-spot?{$params}");
$data = json_decode($response, true);
print_r($data);
package main
import (
"encoding/json"
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
params := url.Values{}
params.Add("api_key", "YOUR_API_KEY")
params.Add("name", "gold")
resp, err := http.Get("https://financeflowapi.com/api/v1/commodity-spot?" + params.Encode())
if err != nil {
panic(err)
}
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
var data map[string]interface{}
json.Unmarshal(body, &data)
fmt.Println(data)
}
Use Cases
- Trading platforms. Power buy/sell signals and pricing widgets with live gold, oil and metals data.
- Portfolio & risk dashboards. Track commodity exposure alongside Bonds API and equities data.
- Inflation & macro research. Correlate commodity price moves with Economic Indicators API data like CPI and PPI.
- Price alert bots. Trigger notifications when a commodity’s
daily_change_percentcrosses a threshold.
Who Is This API For?
- Algorithmic and discretionary traders who need live pricing for gold, oil and other markets
- Fintech apps and dashboards that need commodity price context alongside other asset classes
- Publishers and content platforms that need sourced commodity price data
- Procurement and hedging tools monitoring input costs for manufacturing and agriculture businesses
Market Data API
Test Plan
$5.00/month
Historical data, days: 60
Requests limit: 200
Requests Speed limit(per minute): 20
Standard Subscription
$25.00/month
Historical data, years: 5
Requests limit: 10000
Requests Speed limit(per minute): 60
Premium Subscription
$50.00/month
Historical data, years: 20+
Requests limit: 100000
Requests Speed limit(per minute): 120
Limitations
- No historical time-series on this endpoint.
commodity-spotreturns only the current price plus period-over-period % changes, not a date-range history. A separatecommodity-historyendpoint exists in the API (see the full API documentation) but is not yet covered by its own dedicated landing page. namemust match the catalog spelling exactly; there is no free-text or fuzzy search.- Endpoint access and your per-minute rate limit depend on your subscription plan.
FAQ
What is a Commodity Price API?
A Commodity Price API gives you programmatic access to live prices for raw materials and market indices (metals, energy, agriculture and more) in one machine-readable format instead of integrating a different exchange feed per market.
How do I get the gold price via API?
Call commodity-spot with name=gold and your API key. The response includes the current price plus daily, weekly, monthly, year-to-date and yearly change.
How do I get the oil price via API?
Use the same commodity-spot endpoint with name=crude oil for WTI or name=brent for Brent crude.
Which commodities are supported?
102 commodities, verified live against our production API, spanning precious metals, energy, industrial metals & materials, agriculture and commodity/freight indices. Use commodity-catalog to see the full list.
Do you provide historical commodity data?
Not through this endpoint. commodity-spot only returns the current price and period-over-period changes. A separate commodity-history endpoint exists in the API for date-range queries; see the full API documentation.
How do I get started?
Create a FinanceFlowAPI account and choose a plan. See Pricing & Access above for current plans and limits.
Related APIs
- Economic Indicators API. See how commodity prices relate to inflation and other macro indicators.
- Government Bonds API. Track commodity exposure alongside fixed-income data.