npm.io
3.0.0 • Published 3d ago

@factset/sdk-factsetbenchmarks

Licence
Apache-2.0
Version
3.0.0
Deps
3
Size
227 kB
Vulns
0
Weekly
0
Stars
55

FactSet

FactSet Benchmarks client library for JavaScript

API Version npm Apache-2 license

FactSet Benchmarks API gives access to Index Constituents, Prices, Returns, and Ratios. For a sample list of identifiers, use the /metrics endpoint. Equity Only - Fixed Income Benchmark support coming soon.

This TypeScript/JavaScript package is automatically generated by the OpenAPI Generator project:

  • API version: 1.11.0
  • SDK version: 3.0.0
  • Build package: com.factset.sdk.codegen.FactSetJavascriptClientCodegen

Requirements

  • Node.js >= 22

Installation

npm
npm install @factset/sdk-utils @factset/sdk-factsetbenchmarks@3.0.0
yarn
yarn add @factset/sdk-utils @factset/sdk-factsetbenchmarks@3.0.0

Usage

  1. Generate authentication credentials.
  2. Setup Node.js environment
    1. Install and activate Node.js >=22. If you're using nvm:

      nvm install 22
      nvm use 22
    2. (optional) Install yarn.

  3. Install dependencies.
  4. Run the following:

The parameter variables defined below are just examples and may potentially contain non valid values. Please replace them with valid values.

Example Code
const { ApiClient, BenchmarkConstituentsApi } = require('@factset/sdk-factsetbenchmarks');
const { ConfidentialClient } = require('@factset/sdk-utils');

const apiClient = ApiClient.instance;

// Examples for each supported authentication method are below,
// choose one that satisfies your use case.

// (Preferred) OAuth 2.0: FactSetOAuth2
// See https://github.com/FactSet/enterprise-sdk#oauth-20
// for information on how to create the app-config.json file
//
// The confidential client instance should be reused in production environments.
// See https://github.com/FactSet/enterprise-sdk-utils-typescript#authentication
// for more information on using the ConfidentialClient class
apiClient.factsetOauth2Client = new ConfidentialClient('/path/to/app-config.json');

// Basic authentication: FactSetApiKey
// See https://github.com/FactSet/enterprise-sdk#api-key
// for information how to create an API key
// const FactSetApiKey = apiClient.authentications['FactSetApiKey'];
// FactSetApiKey.username = 'USERNAME-SERIAL';
// FactSetApiKey.password = 'API-KEY';

const apiInstance = new BenchmarkConstituentsApi();
const ids = SP50; // [String] | Benchmark Identifiers. Reference the helper endpoint **_/id-list** to get a sample list of  valid identifiers. You must be authorized for the `ids` requested, otherwise you will receive an error. <p>***ids limit** =  1 per request*</p>
const opts = {
  'date': "date_example", // String | Date of holding expressed in YYYY-MM-DD format.
  'currency': "currency_example", // String | Currency for response.  Currency code (ISO 4217). For a list of currency codes, see [OA Page 1470](https://my.apps.factset.com/oa/pages/1470).
  'calendar': FIVEDAY // String | Calendar of data returned. The default value is FIVEDAY which displays Monday through Friday, regardless of whether there were trading holidays.
};

// Call api endpoint
apiInstance.getBenchmarkConstituents(ids, opts).then(
  data => {

    console.log('API called successfully. Returned data:');
    console.log(data);
  },
  error => {
    console.error(error);
  },
);

Using a Proxy

To add a HTTP proxy for the API client, you can set the proxyUrl for the ApiClient instance:

const { ApiClient } = require('@factset/sdk-factsetbenchmarks');

const apiClient = ApiClient.instance;
apiClient.setProxyUrl('http://username:password@proxy.example.com:8080');

Documentation for API Endpoints

All URIs are relative to https://api.factset.com/content

Class Method HTTP request Description
factsetbenchmarks.BenchmarkConstituentsApi getBenchmarkConstituents GET /factset-benchmarks/v1/constituents Returns the requested Benchmark Constituents and respective Weights, Price and Market Value.
factsetbenchmarks.BenchmarkConstituentsApi getBenchmarkConstituentsForList POST /factset-benchmarks/v1/constituents Returns the requested Benchmark Constituents and respective Weights, Price and Market Value.
factsetbenchmarks.BenchmarkConstituentsApi getFIBenchmarkConstituents GET /factset-benchmarks/v1/fixed-income-constituents Returns the requested Fixed Income Benchmark Constituents and respective Weights, Price and Market Value.
factsetbenchmarks.BenchmarkConstituentsApi getFIBenchmarkConstituentsForList POST /factset-benchmarks/v1/fixed-income-constituents Returns the requested Benchmark Constituents and respective Weights, Price and Market Value.
factsetbenchmarks.HelperApi getBenchmarkIds GET /factset-benchmarks/v1/id-list Returns a sample list of Benchmark Identifiers and the benchmark categorization to use in other Benchmark API endpoints.
factsetbenchmarks.HelperApi getBenchmarkIdsForList POST /factset-benchmarks/v1/id-list Returns a sample list of Benchmark Identifiers and the benchmark categorization to use in other Benchmark API endpoints.
factsetbenchmarks.IndexLevelApi getBenchmarkRatios GET /factset-benchmarks/v1/ratios Returns the aggregated ratios of a requested benchmark
factsetbenchmarks.IndexLevelApi getBenchmarkRatiosForList POST /factset-benchmarks/v1/ratios Returns the aggregated ratios of a requested benchmark
factsetbenchmarks.IndexLevelApi getIndexHistory GET /factset-benchmarks/v1/index-history Retrieves Index Level Prices and Returns information for a list of identifiers and historical date range.
factsetbenchmarks.IndexLevelApi getIndexHistoryForList POST /factset-benchmarks/v1/index-history Retrieves Index Level Prices and Returns information for a list of identifiers and historical date range.
factsetbenchmarks.IndexLevelApi getIndexReturns GET /factset-benchmarks/v1/index-returns Retrieves cumulative index returns over a specified date range for a list of benchmark identifiers via query parameters
factsetbenchmarks.IndexLevelApi getIndexReturnsForList POST /factset-benchmarks/v1/index-returns Retrieves cumulative index returns over a specified date range for a list of benchmark identifiers via JSON Request body
factsetbenchmarks.IndexLevelApi getIndexSnapshot GET /factset-benchmarks/v1/index-snapshot Index Level Prices, Returns, and related information as of a single date.
factsetbenchmarks.IndexLevelApi getIndexSnapshotForList POST /factset-benchmarks/v1/index-snapshot Retrieves the Index Level Snapshot of Prices and Returns information for a given identifier and single date.

Documentation for Models

Documentation for Authorization

FactSetApiKey
  • Type: HTTP basic authentication
FactSetOAuth2
  • Type: OAuth
  • Flow: application
  • Authorization URL:
  • Scopes: N/A

Contributing

Please refer to the contributing guide.

Copyright 2026 FactSet Research Systems Inc

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Keywords