OpenBB-finance/OpenBB · warning · EmptyDataError
No results found for the provided series_id(s).
Error message
No results found for the provided series_id(s).
What it means
Raised in FredSearchFetcher.aextract_data (openbb_fred/models/search.py:212) after the geoFRED 'series/group' endpoint was queried for each requested series_id and none of them returned a series_group payload. This path only runs for search_type='series_id', where the provider enriches IDs with their geoFRED group metadata. It is an EmptyDataError: the requests succeeded but every lookup came back empty.
Source
Thrown at openbb_platform/providers/fred/openbb_fred/models/search.py:212
if query.series_id is not None:
results: list = []
async def get_one(_id: str):
"""Get data for one series."""
data: dict = {}
url = f"https://api.stlouisfed.org/geofred/series/group?series_id={_id}&api_key={api_key}&file_type=json"
response = await fred_get(url)
data = response.get("series_group") # type: ignore
if data:
data.update({"series_id": _id})
results.append(data)
await asyncio.gather(*[get_one(_id) for _id in query.series_id.split(",")])
if results:
return results
raise EmptyDataError("No results found for the provided series_id(s).")
if query.search_type == "release" and query.release_id is None:
url = f"https://api.stlouisfed.org/fred/releases?api_key={api_key}&file_type=json"
response = await fred_get(url)
results = response.get("releases") # type: ignore
if results:
return results
raise OpenBBError(
"Unexpected result while retrieving the list of releases from the FRED API."
)
url = (
"https://api.stlouisfed.org/fred/release/series?"
if query.release_id is not None
else "https://api.stlouisfed.org/fred/series/search?"
)
exclude = (View on GitHub (pinned to 3e071fcc2c)
Solutions
- Use search_type='series_id' only with regionally disaggregated series (e.g. state HPI or unemployment series).
- For national series, call fred_series directly or use fred_search(search_type='full_text').
- Check the ID exists with fred_search(query='<id>') before requesting its group.
Example fix
# before - national series has no geoFRED group obb.economy.fred.search(search_type='series_id', series_id='GDP') # after obb.economy.fred.series(symbol='GDP')
Defensive patterns
Strategy: try-catch
Try / catch
from openbb_core.provider.utils.errors import EmptyDataError
try:
groups = obb.economy.fred.search(search_type='series_id', series_id=','.join(ids))
except EmptyDataError:
groups = None # these IDs have no geoFRED group; fall back to plain series metadata
meta = [obb.economy.fred.series(symbol=i).metadata for i in ids] Prevention
- Use search_type='series_id' only for regionally disaggregated series.
- Pre-check one ID first; if it has no group, skip the group lookup for the batch.
When it happens
Trigger: search_type='series_id' with IDs that have no geographic group (most ordinary national series, e.g. 'GDP' or 'CPIAUCSL'); typos in the comma-separated series_id list; all requested IDs being discontinued series with groups removed.
Common situations: Assuming every FRED series has a geoFRED group - only regionally disaggregated series (state/MSA/county) do; passing a national series ID copied from a different workflow.
Related errors
- The request was returned with no data.
- No data was found for, {query.country}.
- The request was returned empty.
- No data found for the given query. Try adjusting the paramet
- The request was returned empty.
AI-assisted analysis of OpenBB-finance/OpenBB@3e071fcc2c (2026-08-14).
Data as JSON: /api/errors/d950771653501d05.
Report an issue: GitHub.