All APIs

Spot metals price API

Get gold, silver, platinum and palladium spot prices, plus WTI, Brent and copper reference prices derived from futures markets, not physical spot cargo prices.

First request

Quickstart →
curl --request GET \
  --url "https://api.narwhalapi.com/v1/commodities/spot/XAU/USD" \
  --header "Authorization: Bearer $NARWHAL_API_KEY"
Example response Illustrative response · not a live request
{
  "symbol": "XAU-USD",
  "price": "2500.00",
  "currency": "USD",
  "unit": "troy_ounce",
  "timestamp": "2026-08-21T12:00:00Z",
  "stale": true
}

Endpoints

GETGet a spot price or a futures-based reference price./v1/commodities/spot/{commodity}/{currency}
GETGet open, high, low and close bars for gold, silver, platinum, palladium, WTI and BRENT. Copper history is not available yet./v1/commodities/spot/{commodity}/{currency}/bars

How the data works

Commodity codes

Use XAU for gold, XAG for silver, XPT for platinum, XPD for palladium, WTI for WTI crude oil, BRENT for Brent crude oil and XCU for copper.

Latest price

Read the price, timestamp, and stale flag together.

Currencies

Gold is quoted in 31 currencies; silver, platinum, palladium, WTI, BRENT and XCU in USD only.

Keep the quote timestamp visible in your application. A stale quote must not be presented as a fresh market price. Quotes can be stale while markets are closed; the daily 21:00-22:00 UTC pause returns stale: true.

Explore related pages

Physical commodity prices API

Follow palm oil, coal, weekly US retail fuel prices and monthly commodity benchmarks. Each series keeps its market, published units and observation period.

Explore the API →

Common questions

What unit are the prices in?

The unit field is troy_ounce for precious metals, barrel for WTI and BRENT, and pound for XCU. A troy ounce is not an ordinary ounce.

Which currencies are available?

Gold is quoted in 31 currencies; silver, platinum, palladium, WTI, BRENT and XCU in USD only. The coverage list shows every commodity and currency. Other combinations return 404 currency_not_supported.

Make your first request

Get a free API key →