

/api/v1/seasonalityBatch read of compiled seasonality stats for up to 25 symbols in one call, keyed by symbol. Charged per symbol resolved (deduplicated), not per request. A symbol that does not exist comes back as { notFound: true }. The single-symbol endpoint above keeps working unchanged.
| Name | In | Type | Req. | Description |
|---|---|---|---|---|
| symbols | query | string | yes | Comma-separated symbols, case-insensitive. Up to 25. Example: eurusd,xauusd. |
| years | query | integer | no | Years of history to compile (default 15), applied to every symbol in the batch. |
curl -H "Authorization: Bearer afx_live_xxx" \
"https://www.analytics-fx.com/api/v1/seasonality"{
"apiVersion": "v1",
"data": {
"eurusd": { "symbol": "EURUSD", "avgAnnualReturnPct": 1.84, "monthly": [], "best": {}, "worst": {}, "mostConsistent": {} },
"xauusd": { "notFound": true }
},
"meta": { "requestId": "req_sb01", "credits": { "cost": 2, "remaining": 988 } }
}GET /api/v1/seasonality?years=15Create a key at /dashboard/api. The key stays in your browser.