Browse Source

Improve service

* Set maximum number of symbols per request
* Migrate getQuotes to stable API version
pull/4528/head
Thomas Kaul 5 days ago
parent
commit
f1e47bc67a
  1. 16
      apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts

16
apps/api/src/services/data-provider/financial-modeling-prep/financial-modeling-prep.service.ts

@ -325,6 +325,10 @@ export class FinancialModelingPrepService implements DataProviderInterface {
} }
} }
public getMaxNumberOfSymbolsPerRequest() {
return 20;
}
public getName(): DataSource { public getName(): DataSource {
return DataSource.FINANCIAL_MODELING_PREP; return DataSource.FINANCIAL_MODELING_PREP;
} }
@ -341,7 +345,7 @@ export class FinancialModelingPrepService implements DataProviderInterface {
try { try {
const quotes = await fetch( const quotes = await fetch(
`${this.URL}/quote/${symbols.join(',')}?apikey=${this.apiKey}`, `${this.getUrl({ version: 'stable' })}/batch-quote-short?symbols=${symbols.join(',')}&apikey=${this.apiKey}`,
{ {
signal: AbortSignal.timeout(requestTimeout) signal: AbortSignal.timeout(requestTimeout)
} }
@ -451,8 +455,14 @@ export class FinancialModelingPrepService implements DataProviderInterface {
return name; return name;
} }
private getUrl({ version }: { version: number }) { private getUrl({ version }: { version: number | 'stable' }) {
return `https://financialmodelingprep.com/api/v${version}`; const baseUrl = 'https://financialmodelingprep.com';
if (version === 'stable') {
return `${baseUrl}/stable`;
}
return `${baseUrl}/api/v${version}`;
} }
private parseAssetClass(profile: any): { private parseAssetClass(profile: any): {

Loading…
Cancel
Save