OpenBB-finance/OpenBB · error · OpenBBError
Provider '{name}' not found in the registry.Available provid
Error message
Provider '{name}' not found in the registry.Available providers: {list(self.registry.providers.keys())} What it means
OpenBBError from QueryExecutor.get_provider: it lowercases the requested provider name and looks it up in the provider registry (built from installed openbb-<provider> packages). If the name is absent - misspelled, or the package simply not installed in this environment - it raises this error listing every registered provider name.
Source
Thrown at openbb_platform/core/openbb_core/provider/query_executor.py:23
from openbb_core.app.model.abstract.error import OpenBBError
from openbb_core.provider.abstract.fetcher import Fetcher
from openbb_core.provider.abstract.provider import Provider
from openbb_core.provider.registry import Registry, RegistryLoader
from pydantic import SecretStr
class QueryExecutor:
"""Class to execute queries from providers."""
def __init__(self, registry: Registry | None = None) -> None:
"""Initialize the query executor."""
self.registry = registry or RegistryLoader.from_extensions()
def get_provider(self, provider_name: str) -> Provider:
"""Get a provider from the registry."""
name = provider_name.lower()
if name not in self.registry.providers:
raise OpenBBError(
f"Provider '{name}' not found in the registry.Available providers: {list(self.registry.providers.keys())}"
)
return self.registry.providers[name]
def get_fetcher(self, provider: Provider, model_name: str) -> type[Fetcher]:
"""Get a fetcher from a provider."""
if model_name not in provider.fetcher_dict:
raise OpenBBError(
f"Fetcher not found for model '{model_name}' in provider '{provider.name}'."
)
return provider.fetcher_dict[model_name]
@staticmethod
def filter_credentials(
credentials: dict[str, SecretStr] | None,
provider: Provider,
require_credentials: bool,
) -> dict[str, str]:View on GitHub (pinned to 3e071fcc2c)
Solutions
- Pick a provider from the list in the error message (or obb.coverage.providers)
- Install the desired provider: pip install openbb-polygon
- Fix typos/case in the provider argument or in openbb_settings.json defaults
- Verify you are in the same virtualenv/conda env where the provider was installed
Example fix
# before
res = obb.equity.price.historical('AAPL', provider='polygon') # not installed
# after
pip install openbb-polygon
res = obb.equity.price.historical('AAPL', provider='polygon') Defensive patterns
Strategy: validation
Validate before calling
from openbb import obb
def provider_available(name: str) -> bool:
return name.lower() in set(obb.coverage.providers) Type guard
def is_registered_provider(obb, name: str) -> bool:
return isinstance(name, str) and name.lower() in set(obb.coverage.providers) Try / catch
from openbb_core.app.model.abstract.error import OpenBBError
try:
res = obb.equity.price.historical('AAPL', provider=p)
except OpenBBError as e:
if 'not found in the registry' in str(e):
p = next(iter(set(obb.coverage.providers) & {'fmp', 'yfinance'}))
res = obb.equity.price.historical('AAPL', provider=p)
else:
raise Prevention
- Validate provider names against obb.coverage.providers before requests
- Install provider packages in the same env that runs the app
- Lowercase provider names in configuration to avoid case surprises
When it happens
Trigger: Calling a command with provider='FMP' works (lowercased), but provider='fmpp' or provider='polygon' when openbb-polygon is not installed raises this. Also occurs when a provider package was uninstalled but remains in user defaults, or when running in an environment where only the core is installed.
Common situations: Typos in provider names; assuming a provider ships with openbb core (only some do); virtualenv mismatch where the provider was installed in a different environment; defaults referencing a provider removed after an uninstall; case variants like 'BenZinga' are fine but 'benzinga-pro' is not.
Related errors
- Provider fallback failed. [Providers] {msg}
- Failed to build the OpenBB platform static assets. {e} -> {
- Fetcher not found for model '{model_name}' in provider '{pro
- Unsupported file format. Please use .json or .env files.
- Failed to get Jupyter URL
AI-assisted analysis of OpenBB-finance/OpenBB@3e071fcc2c (2026-08-14).
Data as JSON: /api/errors/bb84112d92e777a3.
Report an issue: GitHub.