From 8091fb927ffb944fe40ddf16cef383694d650c3d Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Mon, 27 Jul 2026 11:54:44 +0200 Subject: [PATCH] Handle delisted asset profiles --- .../financial-modeling-prep.service.ts | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts b/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts index 83e7fb6c2c..856ec1cb82 100644 --- a/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts +++ b/apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts @@ -18,6 +18,7 @@ import { } from '@ghostfolio/common/config'; import { DATE_FORMAT, + isCurrency, isCurrencySymbol, parseDate } from '@ghostfolio/common/helper'; @@ -259,7 +260,11 @@ export class FinancialModelingPrepService ).toFixed(3)} seconds`; } - this.logger.error(message); + if (error instanceof AssetProfileDelistedError) { + this.logger.warn(error.message); + } else { + this.logger.error(message); + } } return response; @@ -478,6 +483,14 @@ export class FinancialModelingPrepService currencyBySymbolMap[symbol] = { currency: assetProfile.currency }; + } else { + const currency = symbol.substring( + symbol.length - DEFAULT_CURRENCY.length + ); + + if (isCurrency(currency)) { + currencyBySymbolMap[symbol] = { currency }; + } } }) );