TutorialsNo-code & Automation

How to get live gold prices in Zapier

Pull live gold prices into Zapier via Webhooks by Zapier, Custom Request GET, hourly Schedule trigger, downstream to Slack, Sheets, or Airtable.

27 Apr 2026 · 3 min read

To get live gold prices in Zapier, build a 2-step Zap: a Schedule trigger (hourly), then a Webhooks by Zapier → Custom Request GET to api.goldprice.dev/v1/spot/XAU-USD-SPOT with your API key in the X-API-Key header. The free tier covers 5,000 calls/month, no credit card. Tested April 2026 against Zapier (Webhooks by Zapier requires a paid plan; Schedule trigger is on Free).

Get your goldprice.dev API key

Sign up for a free account at goldprice.dev/onboarding. Your dashboard shows a key starting with ga_live_. You will paste it into the Zap's Webhooks step in step 3; Zapier stores headers as encrypted Zap settings, not in plaintext exports.

The free tier includes 5,000 calls/month and gold spot in 31 currencies. No credit card required.

Create the Zap with a Schedule trigger

From Create → Zap, pick the Schedule by Zapier trigger. Choose Every Hour (hourly is the safe free-tier default; every-15-min uses 2,880 calls/month, within Free). Pick a minute offset (e.g. :00). Test the trigger and continue.

Add Webhooks by Zapier → Custom Request GET

Add an action: Webhooks by Zapier → Custom Request. Custom Request mode is required because the simpler GET action does not expose Headers configuration. Fill the fields below.

Zapier · Webhooks Custom Request fields
# zapier: Webhooks by Zapier: Custom Request GET# curl-equivalent: https://api.goldprice.dev/v1/spot/XAU-USD-SPOTMethod: GETURL: https://api.goldprice.dev/v1/spot/XAU-USD-SPOTData Pass-Through?: falseData: (leave empty)Unflatten: yesBasic Auth: (leave empty)Headers:  X-API-Key: ga_live_replace_with_your_key_here  Accept: application/json

Test the action and inspect parsed fields

Click Test action. Zapier auto-parses the JSON response and exposes every field as a usable token (price, bid, computed_at, etc.) for downstream steps. Add a third step to write the result somewhere, Slack message, Google Sheets row, Airtable record. Free Zapier supports 2 steps; multi-step Zaps require Starter or higher.

Switch currency or metal

Symbols are METAL-CURRENCY-SPOT. To track multiple symbols, duplicate the Zap (one per symbol), Zapier does not natively iterate URLs in a single Zap unless you add a Looping by Zapier step (paid). Multi-currency examples below.

Zapier · multi-currency variants
# USD spot, defaultURL: https://api.goldprice.dev/v1/spot/XAU-USD-SPOTURL: https://api.goldprice.dev/v1/spot/XAU-INR-SPOTURL: https://api.goldprice.dev/v1/spot/XAU-EUR-SPOT# Silver in USDURL: https://api.goldprice.dev/v1/spot/XAG-USD-SPOT

Expected output

JSON
{  "symbol": "XAU",  "quote_currency": "USD",  "unit": "troy_ounce",  "contract_type": "spot",  "price": "4012.75",  "is_stale": false,  "computed_at": "2026-10-23T07:00:18.221118+00:00"}

Zapier displays the parsed response in the Test panel. Downstream steps reference fields by name, the price token is what you typically pipe into a Slack message body or a Sheets cell value.

Common errors

CodeWhat you seeFix
401Test action returns 401 Unauthorized in the run logAPI key missing or invalid. Edit the Webhooks step → Headers, replace the value of X-API-Key with a fresh key from your dashboard. Re-test. Zapier caches the previous test response, clicking Test action again re-fires.
429Sporadic 429 Too Many Requests in the Zap run historySchedule cadence too aggressive for your tier. Hourly = 720 calls/month (inside free tier). Every-15-min = 2,880/month (also inside Free). Count other Zaps and retries; see /pricing for paid plans. Add a Filter by Zapier step after the Webhook with Status code is 200 to halt downstream steps on transient errors.
N/AWebhooks step shows raw JSON string instead of parsed fields in downstream tokensYou used the simpler GET action instead of Custom Request, or you set Unflatten to no. Custom Request with Unflatten = yes exposes nested fields (e.g. sources__0__display_name) to downstream tokens.

Going further

  • Add a Filter step after the Webhook for price > threshold to convert this into a price-alert Zap
  • Pipe the response into a Google Sheets row-append for an audit log of every refresh
  • Add a Formatter by Zapier step to format the timestamp from ISO 8601 into a friendly date for Slack messages
  • Duplicate the Zap once per metal (gold, silver, copper) for a multi-asset alerting setup
  • Use Looping by Zapier (paid) to iterate over a list of symbols in one Zap instead of duplicating

Questions

How often does the price update?

The spot endpoint refreshes every 60 seconds (licensed live spot data; Free/keyless delayed 15 minutes, paid live). Zapier has no native cache, each Schedule fire = one fresh API call. Match the trigger cadence to your downstream needs and the free-tier quota.

Will this fit the free tier with auto-refresh?

Yes at hourly cadence, 720 calls/month, inside the 5,000-call free tier. Every-15-min = 2,880/month, also inside Free. For higher volume, see /pricing for paid plans. Free Zapier also caps tasks at 100/month, so hourly schedule + downstream Slack post = 1,440 tasks/month → also requires a paid Zapier plan.

Can I use this commercially?

Commercial use is allowed on every plan. Paid plans need no credit link; Free requires a visible link to goldprice.dev near the prices.

Why Custom Request instead of the simpler GET?

The simple GET action does not expose Headers. Without headers, you cannot send X-API-Key, and the API requires authentication. Custom Request adds the Headers field (and Method, Body, etc.) needed for any header-authenticated REST call.

What metals are supported?

Gold (XAU), silver (XAG), copper (HG), platinum and palladium are not offered on any tier. Substitute the metal code in the URL, e.g. /v1/spot/XAG-USD-SPOT.

Is the free tier really free?

Yes, 5,000 calls/month, no credit card, no expiration. Get the key at /onboarding.

Can I have Claude write this for me?

Yes. Open Claude Desktop with the goldprice.dev MCP server installed and ask: Build a Zapier Zap that GETs goldprice.dev /v1/spot/XAU-USD-SPOT hourly via Webhooks by Zapier Custom Request, sends the X-API-Key header, and posts the price into a Slack channel. The MCP server gives Claude the live schema, so generated step configs use correct field names on first try.

Keep reading

Start with a free API key

5,000 requests a month on the free plan. No credit card.

Get a free key