curl --request GET \
--url https://gdeltcloud.com/api/v2/macro/observations \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/macro/observations"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gdeltcloud.com/api/v2/macro/observations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"series_id": "DGS10",
"data": [
{
"date": "2026-06-26",
"value": 4.27,
"vintage": "2026-06-27"
},
{
"date": "2026-06-25",
"value": 4.31,
"vintage": "2026-06-26"
}
],
"pagination": {
"limit": 25,
"cursor": null,
"next_cursor": "25"
},
"applied_filters": {
"series_id": "DGS10",
"date_start": "2023-06-30",
"as_of": "2026-06-27",
"ignored": {}
},
"meta": {
"attribution": "This product uses data from the Federal Reserve Bank of St. Louis (FRED) but is not endorsed or certified by it.",
"source": "Federal Reserve Bank of St. Louis (FRED)"
}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}List FRED observations
Point-in-time observations for a single series. Optional as_of selects the vintage known on/before that date (ALFRED — no look-ahead); otherwise the latest vintage is returned. When no dates are given, returns the most-recent observations across the full available history, bounded by limit — page further back via next_cursor; there is no fixed trailing window. Discover a valid series_id via GET /api/v2/macro/series. Requires a plan with Macro & economic data access (can_use_macro) — see Pricing for the plans that include it.
curl --request GET \
--url https://gdeltcloud.com/api/v2/macro/observations \
--header 'Authorization: Bearer <token>'import requests
url = "https://gdeltcloud.com/api/v2/macro/observations"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://gdeltcloud.com/api/v2/macro/observations', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"success": true,
"series_id": "DGS10",
"data": [
{
"date": "2026-06-26",
"value": 4.27,
"vintage": "2026-06-27"
},
{
"date": "2026-06-25",
"value": 4.31,
"vintage": "2026-06-26"
}
],
"pagination": {
"limit": 25,
"cursor": null,
"next_cursor": "25"
},
"applied_filters": {
"series_id": "DGS10",
"date_start": "2023-06-30",
"as_of": "2026-06-27",
"ignored": {}
},
"meta": {
"attribution": "This product uses data from the Federal Reserve Bank of St. Louis (FRED) but is not endorsed or certified by it.",
"source": "Federal Reserve Bank of St. Louis (FRED)"
}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}{
"success": false,
"error": "<string>",
"code": "<string>",
"details": {}
}Authorizations
GDELT Cloud API key. Send as Authorization: Bearer gdelt_sk_....
Query Parameters
FRED series ID (required). To discover valid IDs, call GET /api/v2/macro/series with no filters
Observation window start YYYY-MM-DD. Defaults to the beginning of the series; with no start date the response returns the most-recent observations by limit, with older history reachable via next_cursor.
Observation window end YYYY-MM-DD.
Vintage date YYYY-MM-DD — return values as they were known on/before this date (point-in-time, no look-ahead).
Rows per page (1–100).
1 <= x <= 100Pagination cursor (offset) from a prior response's next_cursor.
Response
A page of observations for the series, most recent first. Each row: date, value, vintage (the realtime_start the value became known). Echoes series_id and includes the FRED non-endorsement meta.

