From da6591fca01a082612b94e5fdaa9ea7c5771d334 Mon Sep 17 00:00:00 2001 From: Thomas Kaul <4159106+dtslvr@users.noreply.github.com> Date: Wed, 23 Aug 2023 18:51:02 +0200 Subject: [PATCH] Bugfix/fix base url in trackinsight data enhancer (#2258) * Fix base url * Update changelog --- CHANGELOG.md | 4 ++++ .../trackinsight/trackinsight.service.ts | 22 ++++++++++++++----- 2 files changed, 21 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index b08b7d4fb..4366b0383 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Refreshed the cryptocurrencies list - Improved the _OSS Friends_ page +### Fixed + +- Fixed an issue with the _Trackinsight_ data enhancer for asset profile data + ## 1.302.0 - 2023-08-20 ### Changed diff --git a/apps/api/src/services/data-provider/data-enhancer/trackinsight/trackinsight.service.ts b/apps/api/src/services/data-provider/data-enhancer/trackinsight/trackinsight.service.ts index a18d82449..2c9f1b7a8 100644 --- a/apps/api/src/services/data-provider/data-enhancer/trackinsight/trackinsight.service.ts +++ b/apps/api/src/services/data-provider/data-enhancer/trackinsight/trackinsight.service.ts @@ -7,7 +7,7 @@ import got from 'got'; @Injectable() export class TrackinsightDataEnhancerService implements DataEnhancerInterface { - private static baseUrl = 'https://data.trackinsight.com'; + private static baseUrl = 'https://www.trackinsight.com/data-api'; private static countries = require('countries-list/dist/countries.json'); private static countriesMapping = { 'Russian Federation': 'Russia' @@ -33,14 +33,22 @@ export class TrackinsightDataEnhancerService implements DataEnhancerInterface { } const profile = await got( - `${TrackinsightDataEnhancerService.baseUrl}/data-api/funds/${symbol}.json` + `${TrackinsightDataEnhancerService.baseUrl}/funds/${symbol}.json` ) .json() .catch(() => { - return {}; + return got( + `${TrackinsightDataEnhancerService.baseUrl}/funds/${ + symbol.split('.')?.[0] + }.json` + ) + .json() + .catch(() => { + return {}; + }); }); - const isin = profile.isin?.split(';')?.[0]; + const isin = profile?.isin?.split(';')?.[0]; if (isin) { response.isin = isin; @@ -55,7 +63,11 @@ export class TrackinsightDataEnhancerService implements DataEnhancerInterface { `${TrackinsightDataEnhancerService.baseUrl}/holdings/${ symbol.split('.')?.[0] }.json` - ); + ) + .json() + .catch(() => { + return {}; + }); }); if (holdings?.weight < 0.95) {