# Gold Council — Zapi reference > Gold held by ETFs worldwide, by region, with the gold price alongside. The **Base URL:** `https://api.zpi.web.id` **Auth:** Send `x-api-key: YOUR_KEY` header on every request. Get a free key at https://zpi.web.id/dashboard/keys. **Response envelope:** `{ content, message, errors }` **Rate limit:** 60 req/min on free tier. **Related:** - Detail page: https://zpi.web.id/api/finance/gold-council - Endpoint catalog: https://zpi.web.id/category/finance - Concise index: https://zpi.web.id/llms.txt - Full reference: https://zpi.web.id/llms-full.txt --- ## Gold Council **Category:** finance · **Slug:** `gold-council` **Detail page:** https://zpi.web.id/api/finance/gold-council Gold held by ETFs worldwide, by region, with the gold price alongside. The **Tags:** finance, gold-council ### Etf Holdings Gold held by ETFs worldwide, by region, with the gold price alongside. The - **Method:** `GET` - **Endpoint:** `https://api.zpi.web.id/v1/finance:gold-council/etf-holdings` - **Cache TTL:** 3600s **Parameters:** | Name | Type | Location | Required | Description | |------|------|----------|----------|-------------| | `period` | enum(Weekly|Monthly|Quarterly|Yearly) | query | no | Bucket length. Default Weekly. | | `unit` | enum(tonnes|usd) | query | no | Measure holdings in tonnes of gold or in US dollars. Default tonnes. | | `from` | string | query | no | Earliest bucket date to return, YYYY-MM-DD. | | `to` | string | query | no | Latest bucket date to return, YYYY-MM-DD. | **cURL:** ```bash curl "https://api.zpi.web.id/v1/finance:gold-council/etf-holdings?period=Weekly&unit=tonnes&from=2026-01-01&to=2026-08-14" \ -H "x-api-key: YOUR_API_KEY" ``` **JavaScript / TypeScript:** ```javascript const res = await fetch("https://api.zpi.web.id/v1/finance:gold-council/etf-holdings?period=Weekly&unit=tonnes&from=2026-01-01&to=2026-08-14", { headers: { "x-api-key": process.env.ZAPI_KEY } }); const data = await res.json(); ``` **Python:** ```python import requests r = requests.get("https://api.zpi.web.id/v1/finance:gold-council/etf-holdings?period=Weekly&unit=tonnes&from=2026-01-01&to=2026-08-14", headers={"x-api-key": "YOUR_API_KEY"}) data = r.json() ``` **Example response:** ```json { "asOf": "2026-08-14", "unit": "tonnes", "count": 1222, "items": [ { "asia": null, "date": "2003-02-28", "time": 1046390400000, "other": null, "europe": null, "goldUsOz": 352.68, "northAmerica": 0 }, { "asia": null, "date": "2003-03-28", "time": 1048809600000, "other": 0.03, "europe": null, "goldUsOz": 330.96, "northAmerica": 0 }, { "asia": null, "date": "2003-04-04", "time": 1049414400000, "other": 0.06, "europe": null, "goldUsOz": 329.2, "northAmerica": 8.2 }, { "asia": null, "date": "2003-04-11", "time": 1050019200000, "other": 0.14, "europe": null, "goldUsOz": 322.81, "northAmerica": 8.2 }, { "asia": null, "date": "2003-04-18", "time": 1050624000000, "other": 0.22, "europe": null, "goldUsOz": 325.9, "northAmerica": 8.2 }, { "asia": null, "date": "2003-04-25", "time": 1051228800000, "other": 0.25, "europe": null, "goldUsOz": 332.43, "northAmerica": 8.2 }, { "asia": null, "date": "2003-05-02", "time": 1051833600000, "other": 0.7, "europe": null, "goldUsOz": 336.49, "northAmerica": 9.31 }, { "asia": null, "date": "2003-05-09", "time": 1052438400000, "other": 1.1, "europe": null, "goldUsOz": 343.91, "northAmerica": 9.31 } ], "fields": [ "northAmerica", "europe", "asia", "other", "goldUsOz" ], "labels": [ "Date", "North America", "Europe", "Asia", "Other", "Gold, US$/oz" ], "period": "Weekly", "dataset": "etf-holdings", "periods": [ "Weekly", "Monthly", "Quarterly", "Yearly" ], "provider": "gold-council", "timestampUnit": "ms" } ``` --- ### Etf Summary The gold-ETF flow table the World Gold Council publishes for each period — - **Method:** `GET` - **Endpoint:** `https://api.zpi.web.id/v1/finance:gold-council/etf-summary` - **Cache TTL:** 3600s **Parameters:** | Name | Type | Location | Required | Description | |------|------|----------|----------|-------------| | `period` | enum(Weekly|Monthly|Quarterly|Year to date) | query | no | Reporting period. Default Weekly. | | `scope` | enum(regional|countries|top-inflows|top-outflows) | query | no | Break the table out by region, by country, or by the ten funds with the largest in/outflows. Default regional. | **cURL:** ```bash curl "https://api.zpi.web.id/v1/finance:gold-council/etf-summary?period=Weekly&scope=regional" \ -H "x-api-key: YOUR_API_KEY" ``` **JavaScript / TypeScript:** ```javascript const res = await fetch("https://api.zpi.web.id/v1/finance:gold-council/etf-summary?period=Weekly&scope=regional", { headers: { "x-api-key": process.env.ZAPI_KEY } }); const data = await res.json(); ``` **Python:** ```python import requests r = requests.get("https://api.zpi.web.id/v1/finance:gold-council/etf-summary?period=Weekly&scope=regional", headers={"x-api-key": "YOUR_API_KEY"}) data = r.json() ``` **Example response:** ```json { "asOf": "2026-08-14", "count": 7, "items": [ { "name": "North America", "aumBn": 289.40780885, "aggregate": false, "demandTonnes": 7.36569403, "fundFlowsUsdMn": 1056.34308022, "holdingsTonnes": 2050.21762019, "demandPctOfHoldings": 0.36055937 }, { "name": "Europe", "aumBn": 207.57132772, "aggregate": false, "demandTonnes": 15.14000153, "fundFlowsUsdMn": 2273.84027839, "holdingsTonnes": 1470.42397831, "demandPctOfHoldings": 1.04034689 }, { "name": "Asia", "aumBn": 74.86062459, "aggregate": false, "demandTonnes": 1.08557478, "fundFlowsUsdMn": 175.68401977, "holdingsTonnes": 519.07383647, "demandPctOfHoldings": 0.20957517 }, { "name": "Other", "aumBn": 10.49416976, "aggregate": false, "demandTonnes": 0.00134552, "fundFlowsUsdMn": 17.0043, "holdingsTonnes": 74.41077582, "demandPctOfHoldings": 0.00180827 }, { "name": "Total", "aumBn": 582.33, "aggregate": true, "demandTonnes": 23.59261586, "fundFlowsUsdMn": 3522.87167838, "holdingsTonnes": 4114.12621079, "demandPctOfHoldings": 0.57676133 }, { "name": "Global inflows / Positive Demand", "aumBn": null, "aggregate": true, "demandTonnes": 35.80339519, "fundFlowsUsdMn": 4882.12683066, "holdingsTonnes": null, "demandPctOfHoldings": 0.87527444 }, { "name": "Global outflows / Negative Demand", "aumBn": null, "aggregate": true, "demandTonnes": -12.21077933, "fundFlowsUsdMn": -1359.25515228, "holdingsTonnes": null, "demandPctOfHoldings": -0.29851312 } ], "scope": "regional", "fields": [ "aumBn", "fundFlowsUsdMn", "holdingsTonnes", "demandTonnes", "demandPctOfHoldings" ], "labels": [ "Region", "AUM (bn)", "Fund Flows (US$mn)", "Holdings (tonnes)", "Demand (tonnes)", "Demand (% of holdings)" ], "period": "Weekly", "scopes": [ "regional", "countries", "top-inflows", "top-outflows" ], "dataset": "etf-summary", "periods": [ "Weekly", "Monthly", "Quarterly", "Year to date" ], "provider": "gold-council", "periodTitle": "Week 33 ending 14 Aug 26" } ``` --- ### Etf Flows Gold-ETF fund flows, worldwide, from the body that compiles them. This is the - **Method:** `GET` - **Endpoint:** `https://api.zpi.web.id/v1/finance:gold-council/etf-flows` - **Cache TTL:** 3600s **Parameters:** | Name | Type | Location | Required | Description | |------|------|----------|----------|-------------| | `period` | enum(Weekly|Monthly|Quarterly|Yearly) | query | no | Bucket length. Default Weekly. | | `unit` | enum(tonnes|usd) | query | no | Measure flows in tonnes of gold or in US dollars. Default tonnes. | | `region` | string | query | no | Restrict to one series: North America, Europe, Asia, Other, or Gold Price (rhs). | | `from` | string | query | no | Earliest bucket date to return, YYYY-MM-DD. | | `to` | string | query | no | Latest bucket date to return, YYYY-MM-DD. | **cURL:** ```bash curl "https://api.zpi.web.id/v1/finance:gold-council/etf-flows?period=Weekly&unit=tonnes®ion=North%20America&from=2026-01-01&to=2026-08-14" \ -H "x-api-key: YOUR_API_KEY" ``` **JavaScript / TypeScript:** ```javascript const res = await fetch("https://api.zpi.web.id/v1/finance:gold-council/etf-flows?period=Weekly&unit=tonnes®ion=North%20America&from=2026-01-01&to=2026-08-14", { headers: { "x-api-key": process.env.ZAPI_KEY } }); const data = await res.json(); ``` **Python:** ```python import requests r = requests.get("https://api.zpi.web.id/v1/finance:gold-council/etf-flows?period=Weekly&unit=tonnes®ion=North%20America&from=2026-01-01&to=2026-08-14", headers={"x-api-key": "YOUR_API_KEY"}) data = r.json() ``` **Example response:** ```json { "asOf": "2026-08-14", "unit": "tonnes", "count": 5, "items": [ { "kind": "flow", "name": "North America", "count": 450, "points": [ { "date": "2018-01-05", "time": 1515110400000, "value": -0.395341 }, { "date": "2018-01-12", "time": 1515715200000, "value": -2.6017 }, { "date": "2018-01-19", "time": 1516320000000, "value": 22.334153 }, { "date": "2018-01-26", "time": 1516924800000, "value": 6.571936 }, { "date": "2018-02-02", "time": 1517529600000, "value": -3.908269 }, { "date": "2018-02-09", "time": 1518134400000, "value": -18.747457 }, { "date": "2018-02-16", "time": 1518739200000, "value": 5.801013 }, { "date": "2018-02-23", "time": 1519344000000, "value": 5.468993 } ] }, { "kind": "flow", "name": "Europe", "count": 450, "points": [ { "date": "2018-01-05", "time": 1515110400000, "value": 4.766536 }, { "date": "2018-01-12", "time": 1515715200000, "value": -0.503126 }, { "date": "2018-01-19", "time": 1516320000000, "value": 2.43465 }, { "date": "2018-01-26", "time": 1516924800000, "value": 2.588859 }, { "date": "2018-02-02", "time": 1517529600000, "value": -3.113576 }, { "date": "2018-02-09", "time": 1518134400000, "value": -4.525682 }, { "date": "2018-02-16", "time": 1518739200000, "value": 1.982059 }, { "date": "2018-02-23", "time": 1519344000000, "value": -1.663113 } ] }, { "kind": "flow", "name": "Asia", "count": 450, "points": [ { "date": "2018-01-05", "time": 1515110400000, "value": -0.220841 }, { "date": "2018-01-12", "time": 1515715200000, "value": -1.642201 }, { "date": "2018-01-19", "time": 1516320000000, "value": -0.088196 }, { "date": "2018-01-26", "time": 1516924800000, "value": 1.034353 }, { "date": "2018-02-02", "time": 1517529600000, "value": 0.308218 }, { "date": "2018-02-09", "time": 1518134400000, "value": 1.338946 }, { "date": "2018-02-16", "time": 1518739200000, "value": 4.659395 }, { "date": "2018-02-23", "time": 1519344000000, "value": 0.861011 } ] }, { "kind": "flow", "name": "Other", "count": 450, "points": [ { "date": "2018-01-05", "time": 1515110400000, "value": 0.26391 }, { "date": "2018-01-12", "time": 1515715200000, "value": -0.027532 }, { "date": "2018-01-19", "time": 1516320000000, "value": -0.08664 }, { "date": "2018-01-26", "time": 1516924800000, "value": 0.07 }, { "date": "2018-02-02", "time": 1517529600000, "value": -0.453931 }, { "date": "2018-02-09", "time": 1518134400000, "value": -0.0349 }, { "date": "2018-02-16", "time": 1518739200000, "value": 0.200762 }, { "date": "2018-02-23", "time": 1519344000000, "value": -0.280328 } ] }, { "kind": "reference", "name": "Gold Price (rhs)", "count": 450, "points": [ { "date": "2018-01-05", "time": 1515110400000, "value": 1311.02 }, { "date": "2018-01-12", "time": 1515715200000, "value": 1320.11 }, { "date": "2018-01-19", "time": 1516320000000, "value": 1335.18 }, { "date": "2018-01-26", "time": 1516924800000, "value": 1345.56 }, { "date": "2018-02-02", "time": 1517529600000, "value": 1341.26 }, { "date": "2018-02-09", "time": 1518134400000, "value": 1323.84 }, { "date": "2018-02-16", "time": 1518739200000, "value": 1337.69 }, { "date": "2018-02-23", "time": 1519344000000, "value": 1334.65 } ] } ], "period": "Weekly", "region": null, "dataset": "etf-flows", "periods": [ "Weekly", "Monthly", "Quarterly", "Yearly" ], "provider": "gold-council", "timestampUnit": "ms" } ``` --- _Generated: 2026-08-21T07:46:24.049Z_