Get Macro Multi
Changed onFetch multiple macro series in one request.
series: comma-separated list of country/section, max 5 e.g. ?series=us/cpi,us/unrate,us/gdp start: observation start YYYY-MM-DD (range mode) end: observation end YYYY-MM-DD last_n: max observations per series, newest first (takes precedence over limit) limit: deprecated alias for last_n transform: comma-separated transforms; each series accepts only the supported_transforms listed for its key in GET /api/v1/macro/catalog (mom_* compare with the previous observation, dod_bps with the previous observation of a daily or weekly series, yoy_* with the same date a year earlier, wow_bps with one week earlier) order: "desc" (newest first, default) or "asc"
Each series is fetched concurrently. Partial failures are isolated - they appear in the errors dict and do not affect successful results. FredClient semaphore limits total parallel FRED connections to 3.
Request
- Base URL: https://sugra.ai
- URL: https://sugra.ai/api/v1/macro/multi
- Auth: API key in header x-api-key
Query parameters
Comma-separated country/section pairs (max 5), e.g. us/cpi,us/unrate.
Start date (YYYY-MM-DD).
End date (YYYY-MM-DD) or pagination end.
Return last N observations per series.
Deprecated alias for last_n.
Comma-separated transforms. Each key accepts only the transforms listed for it in /api/v1/macro/catalog (supported_transforms); any other value is a 400. Values: mom_pct, yoy_pct, qoq_ann_pct, dod_bps, wow_bps, mom_pp, yoy_pp, mom_abs, yoy_abs. mom_* compare with the previous observation, whatever the frequency (a day, week, month, quarter or year earlier); dod_bps compares with the previous observation of a daily or weekly series (on a weekly series it equals wow_bps); yoy_* compare with the same date a year earlier; wow_bps compares with one week earlier (5 observations on a daily series, 1 on a weekly one); qoq_ann_pct is the quarter-over-quarter change annualized, offered on the quarterly GDP keys only. Aliases: mom = mom_pct, yoy = yoy_pct, 3m_ann = qoq_ann_pct.
Sort order.
Response
Batch results for up to 5 macro series, with per-series errors isolated.
Example response
{
"meta": {
"endpoint": "/api/v1/fred/us/cpi",
"data_time": "2026-04-16T14:30:00Z",
"response_time": "2026-04-16T14:30:12Z",
"provider": "Sugra API v1.0.1",
"data_age_days": 8.532,
"source": "sugra_crypto",
"attribution": "Short interest and Reg SHO daily short volume data is owned by and sourced from FINRA (Financial Industry Regulatory Authority).",
"fallback_chain": [
"sugra_crypto",
"sugra_finance"
],
"stale_since": "2026-09-08T12:00:00Z",
"period": "2026-Q1",
"notes": "the UKMTO report behind these counts is dated 2026-08-21 and is 11 days old"
}
}Changes
- info
added the non-success response with the status
- info
- breaking
the response's body type changed from
objectto no type for status - breaking
removed the required property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - warning
removed the optional property
from the response with the status - info
added
subschema #3to the response bodyanyOflist for the response status - info
added the non-success response with the status
- info
added the non-success response with the status
- info
added the optional property
/to the response with the status
- breaking