Real-Time Commodity Price API: Gold, Oil & 102 Markets
Query live spot prices for gold, oil, metals, agriculture and more: 102 commodities in one consistent JSON API. 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 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-08-23) |
| 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.
Live API Playground
An interactive API Playground for this endpoint is planned. Until it ships, use the request and response examples below, or your own HTTP client, to try the API live with your key.
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.