Merge branch 'develop' into feature/refactor-oecd

This commit is contained in:
Danglewood
2026-04-01 09:00:31 -07:00
committed by GitHub
2 changed files with 15 additions and 5 deletions

View File

@@ -5,6 +5,7 @@
from typing import Any
from openbb_core.provider.abstract.fetcher import Fetcher
from openbb_core.app.model.abstract.error import OpenBBError
from openbb_core.provider.standard_models.cik_map import CikMapData, CikMapQueryParams
from pydantic import Field
@@ -48,10 +49,10 @@ class SecCikMapFetcher(
# pylint: disable=import-outside-toplevel
from openbb_sec.utils.helpers import symbol_map
results = {"cik": await symbol_map(query.symbol, query.use_cache)}
if not results:
return {"Error": "Symbol not found."}
return results
cik = await symbol_map(query.symbol, query.use_cache)
if not cik:
raise OpenBBError(f"Symbol '{query.symbol}' not found in SEC database.")
return {"cik": cik}
@staticmethod
def transform_data(

View File

@@ -49,8 +49,17 @@ async def get_all_companies(use_cache: bool = True) -> DataFrame:
else:
response = await amake_request(url, headers=SEC_HEADERS) # type: ignore
df = DataFrame(response).transpose()
if not response or not isinstance(response, dict):
raise OpenBBError(
"Empty or invalid response from SEC company tickers endpoint."
)
df = DataFrame.from_dict(response, orient="index")
cols = ["cik", "symbol", "name"]
if len(df.columns) != len(cols):
raise OpenBBError(
f"Unexpected SEC response format. Expected {len(cols)} fields, got {len(df.columns)}: {df.columns.tolist()}"
)
df.columns = cols
return df.astype(str)