{"record":{"id":"3e86cf80b9239250","repo":"OpenBB-finance/OpenBB","slug":"no-data-found-for-the-given-symbols-3e86cf","errorCode":null,"errorMessage":"No data found for the given symbols.","messagePattern":"No data found for the given symbols\\.","errorType":"exception","errorClass":"EmptyDataError","httpStatus":null,"severity":"warning","filePath":"openbb_platform/providers/fmp/openbb_fmp/models/equity_quote.py","lineNumber":112,"sourceCode":"        base_url = \"https://financialmodelingprep.com/stable/quote?\"\n        symbols = query.symbol.split(\",\")\n        results: list = []\n\n        async def get_one(symbol):\n            \"\"\"Get data for one symbol.\"\"\"\n            url = f\"{base_url}symbol={symbol}&apikey={api_key}\"\n            result = await amake_request(\n                url, response_callback=response_callback, **kwargs\n            )\n            if not result or len(result) == 0:\n                warnings.warn(f\"Symbol Error: No data found for {symbol}\")\n            if result and len(result) > 0:\n                results.extend(result)\n\n        await asyncio.gather(*[get_one(s) for s in symbols])\n\n        if not results:\n            raise EmptyDataError(\"No data found for the given symbols.\")\n\n        return sorted(\n            results,\n            key=(lambda item: (symbols.index(item.get(\"symbol\", len(symbols))))),\n        )\n\n    @staticmethod\n    def transform_data(\n        query: FMPEquityQuoteQueryParams, data: list[dict], **kwargs: Any\n    ) -> list[FMPEquityQuoteData]:\n        \"\"\"Return the transformed data.\"\"\"\n        return [FMPEquityQuoteData.model_validate(d) for d in data]\n","sourceCodeStart":94,"sourceCodeEnd":125,"githubUrl":"https://github.com/OpenBB-finance/OpenBB/blob/3e071fcc2cd9f891cac6040ae60296dba76dab46/openbb_platform/providers/fmp/openbb_fmp/models/equity_quote.py#L94-L125","documentation":"Raised as EmptyDataError by FMPEquityQuote.a_url: quotes are fetched per symbol; each missing symbol only warns ('Symbol Error: No data found for X'). The error is raised only when the aggregated results list is empty, i.e. every requested symbol returned no quote rows.","triggerScenarios":"Calling obb.equity.quote(symbol=...) where all symbols are unknown/delisted on FMP, or the API key/plan returns empty for every per-symbol request.","commonSituations":"Real-time quote endpoints requiring a paid FMP tier while the key is free-tier (each call returns empty, not an error), bulk symbol lists with stale tickers, market data feed outages.","solutions":["Confirm your FMP plan includes real-time quotes (free keys often get empty arrays here)","Read the per-symbol warnings to identify which tickers failed; test a known-good ticker like AAPL alone","Refresh the symbol list (delisted tickers never return quotes)","Catch EmptyDataError and skip or fall back to another provider for the batch"],"exampleFix":"# before\nquotes = obb.equity.quote(symbol='XYZPDQ', provider='fmp')\n\n# after\nfrom openbb_core.provider.utils.errors import EmptyDataError\ntry:\n    quotes = obb.equity.quote(symbol='AAPL,MSFT', provider='fmp')\nexcept EmptyDataError:\n    quotes = obb.equity.quote(symbol='AAPL,MSFT', provider='yfinance')","handlingStrategy":"try-catch","validationCode":"# probe plan capability once with a liquid ticker\nprobe = obb.equity.quote(symbol='AAPL', provider='fmp').results\nif not probe:\n    raise RuntimeError('FMP key/plan returns no quotes; check subscription tier')","typeGuard":"null","tryCatchPattern":"from openbb_core.provider.utils.errors import EmptyDataError\ntry:\n    quotes = await obb.equity.quote.async_(symbol=','.join(symbols), provider='fmp')\nexcept EmptyDataError:\n    quotes = await obb.equity.quote.async_(symbol=','.join(symbols), provider='yfinance')","preventionTips":["Confirm the FMP plan includes real-time quotes before relying on this endpoint","Prune delisted tickers from watchlists periodically","Use a fallback provider chain for quote data"],"tags":["fmp","empty-data","quote","symbol","plan-tier"],"backgroundTag":null,"analyzedSha":"3e071fcc2cd9f891cac6040ae60296dba76dab46","analyzedAt":"2026-08-14T23:40:48.960Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}