openapi: 3.0.3 info: title: Factset Analytics Datastore About Snapshots API description: Allow clients to fetch precalculated Analytics through predeterministic URLs. contact: name: FactSet Research Systems url: https://developer.factset.com/contact email: api@factset.com license: name: Apache License, Version 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 version: 1.0.0 servers: - url: https://api.factset.com description: Production - url: https://api-sandbox.factset.com description: Sandbox security: - basicAuth: [] tags: - name: Snapshots paths: /factset-benchmarks/v1/index-snapshot: get: summary: Factset Index Level Prices, Returns, and Related Information as of a Single Date. operationId: getIndexSnapshot tags: - Snapshots description: 'Retrieves Index Level Prices and Returns information as of a specific date. Simply submit a valid Benchmark ID (you can use the /id-list endpoint for a sample list of ids), and date and retrieve Index Level Prices, Returns, and related information. ' parameters: - $ref: '#/components/parameters/indexIds' - $ref: '#/components/parameters/requestedDate' - $ref: '#/components/parameters/returnType' - $ref: '#/components/parameters/currency' - $ref: '#/components/parameters/calendar' responses: '200': description: An array of Index Level Prices and Returns information as of a single date content: application/json: schema: $ref: '#/components/schemas/indexSnapshotResponse' examples: Index Level Prices and Returns snapshot for S&P 500 and Russell 3000 as of 2020-08-06: $ref: '#/components/examples/resultofIndexSnapshotMultiple' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '415': $ref: '#/components/responses/415' '500': $ref: '#/components/responses/500' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: summary: Factset Retrieves the Index Level Snapshot of Prices and Returns Information for a Given Identifier and Single Date. operationId: getIndexSnapshotForList tags: - Snapshots description: 'Retrieves Index Level Prices and Returns information as aligned with FactSet''s Benchmark Data Feed solution. Simply submit a valid Benchmark ID (you can use the /id-list endpoint for a sample list of ids), and date and retrieve Index Level Prices, Returns, and related information. ' requestBody: required: true description: Requests the Index Level Snapshot for a requested list of identifiers and specified date. content: application/json: schema: $ref: '#/components/schemas/indexSnapshotRequest' responses: '200': description: An array of Index Level Prices and Returns information as of a single date. content: application/json: schema: $ref: '#/components/schemas/indexSnapshotResponse' examples: Index Level Prices and Returns snapshot for S&P 500 and Russell 3000 as of 2020-08-06: $ref: '#/components/examples/resultofIndexSnapshotMultiple' '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '415': $ref: '#/components/responses/415' '500': $ref: '#/components/responses/500' x-microcks-operation: delay: 0 dispatcher: FALLBACK /DFSnapshot: get: summary: Factset Request a Snapshot of Exchange Data for a List of Symbols. operationId: get_DFSnapshot tags: - Snapshots description: "\n`ids` and `oc` are required parameters, but only one can be used based on request. Use `ids` for regular snapshot requests, and `oc` for requesting an option chain. \n\n**Try it Out** feature is available using a pre-recorded sandbox environment. Follow Try it Out inscrutions on each parameter to develop a request and view a sample server response.\n\n'*You must be logged into the Developer Portal and obtain an **[API Key](https://developer.factset.com/factset/api-key-listing)** for ''Try it Out'' to receive a successful server response. Select **Authorize** button or visit **[Authentication Support](https://developer.factset.com/authentication)** for more details.*'\n" parameters: - $ref: '#/components/parameters/ids' - $ref: '#/components/parameters/oc' - $ref: '#/components/parameters/fields' - $ref: '#/components/parameters/sf' - $ref: '#/components/parameters/format' - $ref: '#/components/parameters/serv' - $ref: '#/components/parameters/req_id' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DFSnapshot_Response' example: Error: - 0 - '' FDS-USA: Key: FDS-USA:D Stale: '' Fields: '50': LAST_Price: '291.7' '509': BID: '291.6' '609': ASK: '291.78' Host: FactSet IBM-USA: Key: IBM-USA:D Stale: '' Fields: '50': LAST_Price: '140.84' '509': BID: '140.83' '609': ASK: '140.85' Request ID: '' Requested Fields: ASK,BID,LAST_Price Requested Symbols: FDS-USA,IBM-USA,TSLA-USA Service: '' TSLA-USA: Key: TSLA-USA:D Stale: '' Fields: '50': LAST_Price: '236.45' '509': BID: '236.43' '609': ASK: '236.5' application/xml: schema: $ref: '#/components/schemas/DFSnapshot_Response' example: IBM-USA FactSet text/csv: schema: $ref: '#/components/schemas/DFSnapshot_Response' example: REQ_SYM,KEY,ASK,BID,LAST_Price FDS-USA,FDS-USA:D,291.12,291.01,291.06 IBM-USA,IBM-USA:D,140.72,140.7,140.7 TSLA-USA,TSLA-USA:D,235.73,235.61,235.69 '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: summary: Factset Snap Exchange Data. Use if Url Lengh of 2,048 Is Exceeded. operationId: post_DFSnapshot tags: - Snapshots description: Request Snapshot exchange data. Use POST when your URL length exceeds 2,048 characters. parameters: - $ref: '#/components/parameters/ids' - $ref: '#/components/parameters/oc' - $ref: '#/components/parameters/fields' - $ref: '#/components/parameters/sf' - $ref: '#/components/parameters/format' - $ref: '#/components/parameters/serv' - $ref: '#/components/parameters/req_id' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/DFSnapshot_Response' example: Error: - 0 - '' FDS-USA: Key: FDS-USA:D Stale: '' Fields: '50': LAST_Price: '291.7' '509': BID: '291.6' '609': ASK_1: '291.78' Host: FactSet IBM-USA: Key: IBM-USA:D Stale: '' Fields: '50': LAST_Price: '140.84' '509': BID: '140.83' '609': ASK: '140.85' Request ID: '' Requested Fields: ASK_1,BID_1,LAST_1 Requested Symbols: FDS-USA,IBM-USA,TSLA-USA Service: '' TSLA-USA: Key: TSLA-USA:D Stale: '' Fields: '50': LAST_Price: '236.45' '509': BID: '236.43' '609': ASK: '236.5' application/xml: schema: $ref: '#/components/schemas/DFSnapshot_Response' example: IBM-USA FactSet text/csv: schema: $ref: '#/components/schemas/DFSnapshot_Response' example: REQ_SYM,KEY,ASK,BID,LAST_Price FDS-USA,FDS-USA:D,291.12,291.01,291.06 IBM-USA,IBM-USA:D,140.72,140.7,140.7 TSLA-USA,TSLA-USA:D,235.73,235.61,235.69 '402': $ref: '#/components/responses/402' '403': $ref: '#/components/responses/403' x-microcks-operation: delay: 0 dispatcher: FALLBACK /factset-funds/v1/returns-snapshot: get: tags: - Snapshots summary: Factset Get Fund Returns Over Pre-defined Time Horizons as of a Specific Date. operationId: getFundsReturnsSnapshot description: "Get Fund Returns over pre-defined time horizons as of a specific date. Use the date parameter to set the perspective date, and adjust the return type to include or exclude dividends using the dividendAdjust parameter. Returns Ranges include - \n* oneWeek\n* oneMonth\n* threeMonth\n* yearToDate\n* oneYear\n* threeYear\n* threeYearAnnualized\n* fiveYear\n* fiveYearAnnualized\n" parameters: - $ref: '#/components/parameters/ids_2' - $ref: '#/components/parameters/dateSnapshot' - $ref: '#/components/parameters/dividendAdjust' responses: '200': description: The Returns Snapshot response object. content: application/json: schema: $ref: '#/components/schemas/fundsReturnsSnapshotResponse' '400': $ref: '#/components/responses/400_2' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403_2' '415': $ref: '#/components/responses/415_2' '500': $ref: '#/components/responses/500' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Snapshots summary: Factset Get Fund Returns Over Pre-defined Time Horizons as of a Specific Date. description: "Get Fund Returns over pre-defined time horizons as of a specific date. Use the date parameter to set the perspective date, and adjust the return type to include or exclude dividends using the dividendAdjust parameter. Returns Ranges include - \n* oneWeek\n* oneMonth\n* threeMonth\n* yearToDate\n* oneYear\n* threeYear\n* threeYearAnnualized\n* fiveYear\n* fiveYearAnnualized \n" operationId: getFundsReturnsSnapshotForList requestBody: required: true description: The Returns Snapshot request body, allowing the user to specify a list of ids. content: application/json: schema: $ref: '#/components/schemas/fundsReturnsSnapshotRequest' responses: '200': description: The Returns Snapshot response object. content: application/json: schema: $ref: '#/components/schemas/fundsReturnsSnapshotResponse' '400': $ref: '#/components/responses/400_2' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403_2' '415': $ref: '#/components/responses/415_2' '500': $ref: '#/components/responses/500' x-microcks-operation: delay: 0 dispatcher: FALLBACK /factset-prices/v1/returns-snapshot: get: tags: - Snapshots summary: Factset Returns the Price Performance of the Security and Annualized Compound Total Returns. operationId: getReturnsSnapshot description: "Retrieves various return periods as of a given date for a requested list of securities. This endpoint is very helpful for quickly retrieving a list of pre-calculated returns for application development.

Return periods include\n * oneDay\n * weekToDate\n * monthToDate\n * quarterToDate\n * yearToDate\n * oneMonth\n * threeMonth\n * sixMonth\n * nineMonth\n * oneYear\n * twoYearAnnualized\n * threeYearAnnualized\n * fiveYearAnnualized\n * tenYearAnnualized\n * twentyYearAnnualized\n * thirtyYearAnnualized\n * ipoToDateAnnualized\n

\n" parameters: - $ref: '#/components/parameters/idsMax2000' - $ref: '#/components/parameters/dateRs' - $ref: '#/components/parameters/calendar_2' - $ref: '#/components/parameters/currency_2' - $ref: '#/components/parameters/dividendAdjustSnapshot' responses: '200': description: Array of returns-snapshot objects for the list of ids requested content: application/json: schema: $ref: '#/components/schemas/returnsSnapshotResponse' examples: Return details for IBM-US with compound return type: $ref: '#/components/examples/singleRSCompundRTResponse' Requesting returns details for Multiple companies with simple return type: $ref: '#/components/examples/multipleRSSimpleRTResponse' '400': $ref: '#/components/responses/400_3' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403_3' '415': $ref: '#/components/responses/415_3' '500': $ref: '#/components/responses/500' x-microcks-operation: delay: 0 dispatcher: FALLBACK post: tags: - Snapshots summary: Factset Returns the Price Performance of the Security and Annualized Compound Total Returns. description: "Retrieves various return periods as of a given date for a requested list of securities. This endpoint is very helpful for quickly retrieving a list of pre-calculated returns for application development.

Return periods include\n * oneDay\n * weekToDate\n * monthToDate\n * quarterToDate\n * yearToDate\n * oneMonth\n * threeMonth\n * sixMonth\n * nineMonth\n * oneYear\n * twoYearAnnualized\n * threeYearAnnualized\n * fiveYearAnnualized\n * tenYearAnnualized\n * twentyYearAnnualized\n * thirtyYearAnnualized\n * ipoToDateAnnualized\n

\n" operationId: getReturnsSnapshotForList requestBody: required: true description: Request object for Returns-Snapshot. content: application/json: schema: $ref: '#/components/schemas/returnsSnapshotRequest' examples: Return details for IBM-US with compound return type: $ref: '#/components/examples/singleRSCompundRT' Requesting returns details for multiple companies with simple return type: $ref: '#/components/examples/multipleRSSimpleRT' responses: '200': description: Array of returns-snapshot objects for the list of ids requested content: application/json: schema: $ref: '#/components/schemas/returnsSnapshotResponse' examples: Return details for IBM-US with compound return type: $ref: '#/components/examples/singleRSCompundRTResponse' Requesting returns details for multiple companies with simple return type: $ref: '#/components/examples/multipleRSSimpleRTResponse' '400': $ref: '#/components/responses/400_3' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403_3' '415': $ref: '#/components/responses/415_3' '500': $ref: '#/components/responses/500' x-microcks-operation: delay: 0 dispatcher: FALLBACK components: parameters: calendar_2: name: calendar in: query schema: type: string enum: - FIVEDAY - SEVENDAY - LOCAL default: FIVEDAY description: Calendar of data returned. SEVENDAY includes weekends. LOCAL calendar will default to the securities' trading calendar which excludes date records for respective holiday periods. example: FIVEDAY dividendAdjustSnapshot: name: dividendAdjust in: query description: "Controls the dividend reinvestment for the returns calculation. Dividends will be reinvested on the date the dividends go ex (when the dividends belong to the seller rather than the buyer). Visit [OA 8748](https://my.apps.factset.com/oa/pages/8748) for calculation methodology.\n * **PRICE** = Price Change - Dividends Excluded.\n * **EXDATE** = Simple Return - Dividends Received on exdate but not reinvested. Dividends accumulated throughout the specified period are added to the price at the end of the period.\n * **EXDATE_C** = Compound Return - Dividends reinvested on exdate. Dividends accumulated throughout the specified period are used to buy more shares of stock in the company.\n" required: false schema: type: string enum: - PRICE - EXDATE - EXDATE_C default: PRICE oc: description: Option Chain, accepts one underlying symbol for which the option chain will be returned. **Required** if not using `ids`.

**Try it Out** - Only available for BABA-USA

name: oc in: query schema: type: string ids: description: Requested symbols or securities. **Required** if not using `oc`. This is a comma-seperated list with a maximum of 500. Each symbol can be a FactSet Exchange Symbol, CUSIP, or SEDOL. This can be used in combination with `chain` parameter to pull in a custom portfolio.

**Try it out** - Choose one or multiple - IBM-USA, BABA-USA, WALMEX-MX, 7203-TKS, VOD-LON, NPN-JSE, MABAX, NZF, SPY-USA, AGG-USA, GLD-USA, AOR-USA, MNA-USA, UUP-USA, SP50-SPX, ESX-STX, XAO-ASX, WD-MSX, NG00-USA, GC00-USA, CC00-USA, C00-USA, FC00-USA, ER00-USA, EURUSD-FX1, USDMXN-FX1, AUDJPY-FX1, EURCZK-FX1, USDILS-FX1, USDZAR-FX1, US10YY-TU1, FDS#190621C00145000-USA, FDS#190621P00145000-USA. *Leave blank if you are trying the `oc` parameter*.

name: ids in: query schema: type: string required: false returnType: name: returnType in: query required: false schema: type: string enum: - GROSS - NET default: GROSS description: The return type adjustment used in returns response items. Adjustment can be made for GROSS and NET dividends that will be included in the return calculation. The service will default to GROSS. fields: description: 'All available fields. This is a comma-seperated list (no spaces). **Required** only when using `oc`. Otherwise, leave blank to return all fields by default. See definitions for details on available field names and Field ID #s. The Data Service Manual has complete reference.

**Try it Out** - All fields available. Use either FID # or name. For `oc`, recommend to use BID_1,ASK_1,STRIKE_PRICE.' name: fields in: query schema: type: string dividendAdjust: name: dividendAdjust in: query schema: type: string enum: - DIV - NO_DIV default: DIV description: "Controls the dividend inclusion for the NAV returns calculations, where - \n* DIV = Include Dividends, Total Return\n* NO_DIV = Exclude Dividends, Simple Return\n" indexIds: name: ids in: query required: true explode: false schema: type: array items: type: string minItems: 1 maxItems: 500 description: Benchmark Identifiers. Reference the helper endpoint **/id-list** to get a sample list of valid identifiers.

***ids limit** = 500 per request*

*

Make note, GET Method URL request lines are also limited to a total length of 8192 bytes (8KB). In cases where the service allows for thousands of ids, which may lead to exceeding this request line limit of 8KB, its advised for any requests with large request lines to be requested through the respective "POST" method.

* dateRs: name: date in: query required: false schema: type: string description: 'The date in **YYYY-MM-DD** format. This controls the perspective dates to the calculate the returns. If left blank, the API will default to previous close. Future dates (T+1) are not accepted in this endpoint. ' example: '2019-07-07' dateSnapshot: name: date in: query required: false schema: type: string description: 'The date requested for a given date range in YYYY-MM-DD format. The date MUST be equal to or less than the `priceRecentDate` found within the /summary endpoint. ' example: '2018-12-31' req_id: name: req_id in: query description: Request Identification String. Can be used by the application to keep track of requests. The id is not used by this service, however, it is included in the XML response.

**Try it Out** - any value can be passed through.

required: false schema: type: string currency_2: name: currency in: query schema: type: string description: Currency code for adjusting prices. Default is Local. For a list of currency ISO codes, visit [Online Assistant Page 1470](https://oa.apps.factset.com/pages/1470). example: USD sf: description: "Symbol Filters, ability to apply filtering to the result of an option chain `oc` request based on available fields and values for the symbols. `sf`=VALUE_[filter],[field],[value]\n * **VALUE_MINMAX** - Field value will be within specified interval. ex. - VALUE_MINMAX,BID_1,min,max\n * **VALUE_EQUALS** - Field value will equal specified value. ex. - VALUE_EQUALS,BID_1,value\n * **VALUE_NOT_EQUALS** - Field value will not equal specified value. ex. - VALUE_NOT_EQUALS,BID_1,value\n \n **Try it Out** - depends on fields used. Example - VALUE_MINMAX,STRIKE_PRICE,120,130 \n" name: sf in: query schema: type: string requestedDate: name: date in: query required: false schema: type: string description: Date of holding expressed in YYYY-MM-DD format. idsMax2000: name: ids in: query schema: type: array items: type: string minItems: 1 maxItems: 2000 required: true explode: false description: The requested list of security identifiers. Accepted ID types include Market Tickers, SEDOL, ISINs, CUSIPs, or FactSet Permanent Ids.

***ids limit** = 2000 per request*

*

Make note, GET Method URL request lines are also limited to a total length of 8192 bytes (8KB). In cases where the service allows for thousands of ids, which may lead to exceeding this request line limit of 8KB, its advised for any requests with large request lines to be requested through the respective "POST" method.

* examples: oneEquityId: summary: One Equity Market Identifier value: - AAPL-USA multipleEquityIds: summary: Multiple Equity Market Identifiers value: - FDS-US - AAPL-US - MSFT-US currency: name: currency in: query required: false schema: type: string description: Currency for response. ids_2: name: ids in: query schema: type: array items: type: string minItems: 1 maxItems: 1000 required: true explode: false description: 'The requested fund identifier. FactSet Identifiers, tickers, CUSIP, SEDOL, and ISIN are accepted inputs.

***ids limit** = 1000 per request*

*

Make note, GET Method URL request lines are also limited to a total length of 8192 bytes (8KB). In cases where the service allows for thousands of ids, which may lead to exceeding this request line limit of 8KB, its advised for any requests with large request lines to be requested through the respective "POST" method.

* ' examples: oneId: summary: One Market Identifier value: - MABAX-US multipleIds: summary: Multiple Market Identifiers value: - MABAX-US - FCNTX-US calendar: name: calendar in: query schema: type: string enum: - FIVEDAY - SEVENDAY default: FIVEDAY description: Calendar of data returned. SEVENDAY includes weekends. example: FIVEDAY format: name: format description: The format of the output file.

**Try it Out** - All formats available

in: query schema: type: string default: XML enum: - XML - JSON - CSV serv: description: "The Data Service that handles the request for the specified symbols. Available live services are - \n * **FDS1** -Production Data Service\n * **FDS_FUND** -Fundamental Data Service used for End-of-Day data.\n\n**Try it Out** - use FDS1\n" name: serv in: query schema: type: string enum: - FDS1 - FDS_FUND examples: badRequestInvalidParameters_3: summary: Bad Request - Invalid Parameters description: This error message occurs when a request parameter is used in which is not recognized by the service. Please revise your request to include only the parameters listed in the specification. Typical causes are spelling mistakes and use of improper casing. value: status: Bad Request timestamp: '2020-06-12 15:58:54.068' path: /factset-prices/v1/{endpoint} message: 'Invalid Parameter (s): fakeParameterName1 fakeParameterName2. Please modify your request to use parameters outlined in the specification for this endpoint.' subErrors: null badRequestReadTimeout_2: summary: Bad Request - Read Timeout description: This error may be returned if it takes more than 29 seconds to hear back from the data fetch service. value: status: Bad Request timestamp: '2019-11-04 16:18:38.949' path: /factset-funds/v1/{endpoint} message: The request took too long. Try again with a smaller request. subErrors: null unsupportedMediaType: summary: Unsupported Media Type description: This bad request occurs when the media type passed in the request is not supported. Currently the APIs only support 'application/json'. value: status: Unsupported Media Type timestamp: '2020-07-02 09:42:27.237' path: /factset-benchmarks/v1/{endpoint} message: text/html media type is not supported. Supported media types are application/json subErrors: null badRequestReadTimeout: summary: Bad Request - Read Timeout description: This error may be returned if it takes more than 29 seconds to hear back from the data fetch service. value: status: Bad Request timestamp: '2020-07-02 16:18:38.949' path: /factset-benchmarks/v1/{endpoint} message: The request took too long. Try again with a smaller request. subErrors: null forbidden_3: summary: Forbidden description: The USERNAME-SERIAL attempted to request the endpoint is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization. value: status: Forbidden timestamp: '2020-06-12 16:08:51.731' path: /factset-prices/v1/{endpoint} message: USERNAME-SERIAL does not have permission to use /factset-prices/v1/{endpoint} subErrors: null badRequestFutureDate_3: summary: Bad Request - Future Date description: This error message occurs when a future date is requested in the startDate and endDate parameters. Please revise your request to include dates as of today's current date or any prior historical date. value: status: Bad Request timestamp: '2020-06-12 15:52:48.091' path: /factset-prices/v1/{endpoint} message: The use of future dates is not applicable in this endpoint. Please revise your request to include dates up to today's current date. subErrors: null badRequestMalformedJSON_2: summary: Bad Request - Malformed JSON Request description: This error may be returned when the request body is specified as JSON, but is not in proper JSON format. value: status: Bad Request timestamp: '2019-11-05 09:48:29.18' path: /factset-funds/v1/{endpoint} message: Malformed JSON Request subErrors: null singleRSCompundRTResponse: summary: Requesting returns details for single company with compound return type. description: Returns result for the given ticker price performance and annualized returns analysis with compound return type. value: data: - currency: USD date: '2020-09-10' dividendAdjust: EXDATE_C fiveYearAnnualized: 18.892164 fsymId: HTM0LK-R ipoToDateAnnualized: 23.792849 monthToDate: -5.05054 nineMonth: 15.2164345 oneDay: 0 oneMonth: 3.3678055 oneYear: 28.326284 quarterToDate: 9.109688 sixMonth: 21.335184 tenYearAnnualized: 20.567951 thirtyYearAnnualized: null threeMonth: 5.634606 threeYearAnnualized: 17.971731 twentyYearAnnualized: null twoYearAnnualized: 14.737806 weekToDate: -2.1489859 yearToDate: 15.517509 requestId: GOOGL-US forbidden_2: summary: Forbidden description: The USERNAME-SERIAL attempted to request the endpoint is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization. value: status: Forbidden timestamp: '2020-06-12 16:08:51.731' path: /factset-funds/v1/{endpoint} message: USERNAME-SERIAL does not have permission to use /factset-funds /v1/{endpoint} subErrors: null badRequestMoreThanOneBenchmarkIdentifier: summary: Bad Request - More Than One Benchmark Identifier description: This error message occurs when user is passing more than one identifier as an input. value: status: Bad Request timestamp: '2020-07-02 12:37:52.731' path: /factset-benchmarks/v1/constituents message: You submitted 2 ids. The max number of ids you may submit is 1. Please try again with fewer ids. subErrors: null notWritable: summary: Internal Server Error - Not Writable description: This error may be returned when the server encounters an error writing the JSON response. value: status: Internal Server Error timestamp: '2019-11-05 09:48:29.18' path: /factset-benchmarks/v1/{endpoint} message: Error writing JSON output subErrors: null generalException: summary: Internal Server Error - General Exception description: This is the most general error that can be returned to by the service. Please `Report Issue` to FactSet. value: status: Internal Server Error timestamp: '2019-11-01 10:36:01.944' path: /factset-benchmarks/v1/{endpoint} message: Unexpected error subErrors: null badRequestFutureDate: summary: Bad Request - Future Date description: This error message occurs when a future date is requested in the date parameters. Please revise your request to include dates as of today's current date or any prior historical date. value: status: Bad Request timestamp: '2020-06-30 13:38:36.528' path: /factset-benchmarks/v1/{endpoint} message: The use of future dates is not applicable in this endpoint. Please revise your request to include dates up to today's current date. subErrors: null forbidden: summary: Forbidden description: The USERNAME-SERIAL attempted to request the endpoint/ID which is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization. value: status: Forbidden timestamp: '2020-07-02 17:21:52.197' path: /factset-benchmarks/v1/{endpoint} message: User is not authorized for the id requested, please reach out to FactSet for support subErrors: null badRequestMalformedJSON: summary: Bad Request - Malformed JSON Request description: This error may be returned when the request body is specified as JSON. But is not in proper JSON format. value: status: Bad Request timestamp: '2020-07-02 11:59:09.649' path: /factset-benchmarks/v1/{endpoint} message: Malformed JSON Request subErrors: null multipleRSSimpleRT: summary: Requesting returns details for Multiple companies with simple return type. description: Returns result for the given tickers price performance and annualized returns analysis with simple return type. value: ids: - GOOGL-US - IBM-US date: '2020-10-09' dividendAdjust: EXDATE calendar: FIVEDAY currency: USD badRequestInvalidParameters: summary: Bad Request - Passing invalid Benchmark Identifier description: This error message occurs when user is passing Invalid Identifier. Please use the helper endpoint */id-list* for sample Benchmark Identifiers. value: status: Forbidden timestamp: '2020-07-10 15:01:43.634' path: /factset-benchmarks/v1/constituents message: User is not authorized for the id requested, please reach out to FactSet for support subErrors: null badRequestRequiredParameter_3: summary: Bad Request - Required Parameter Missing description: This error message occurs when the request does not include the required parameters. Required parameters are indicated with a red asterisks symbol in the specification file. value: status: Bad Request timestamp: '2020-06-12 15:48:42.016' path: /factset-prices/v1/{endpoint} message: The parameter 'ids' is required and may not be empty. subErrors: null badRequestDateFormat: summary: Bad Request - Date Format description: This bad request occurs when a request doesn't use the YYYY-MM-DD in the date parameters. To resolve, convert your date to YYYY-MM-DD. value: status: Bad Request timestamp: '2020-07-02 11:52:36.464' path: /factset-benchmarks/v1/{endpoint} message: 'The date parameter must be in the following date format: YYYY-MM-DD' subErrors: null badRequestReadTimeout_3: summary: Bad Request - Read Timeout description: This error may be returned if it takes more than 29 seconds to hear back from the data fetch service. value: status: Bad Request timestamp: '2019-11-04 16:18:38.949' path: /factset-prices/v1/{endpoint} message: The request took too long. Try again with a smaller request. subErrors: null singleRSCompundRT: summary: Requesting returns details for single company with compound return type. description: Returns result for the given ticker price performance and annualized returns analysis with compound return type. value: ids: - GOOGL-US date: '2020-10-09' dividendAdjust: EXDATE_C calendar: FIVEDAY currency: USD badRequestDateFormat_3: summary: Bad Request - Date Format description: This bad request occurs when a request doesn't use the YYYY-MM-DD in the date parameters. To resolve, convert your date to YYYY-MM-DD. value: status: Bad Request timestamp: '2019-10-31 16:08:07.945' path: /factset-prices/v1/{endpoint} message: 'The date parameter ''startDate'' must be in the following date format: YYYY-MM-DD' subErrors: null badRequestMalformedJSON_3: summary: Bad Request - Malformed JSON Request description: This error may be returned when the request body is specified as JSON, but is not in proper JSON format. value: status: Bad Request timestamp: '2019-11-05 09:48:29.18' path: /factset-prices/v1/{endpoint} message: Malformed JSON Request subErrors: null badRequestInvalidParameters_2: summary: Bad Request - Invalid Parameters description: This error message occurs when a request parameter is used in which is not recognized by the service. Please revise your request to include only the parameters listed in the specification. Typical causes are spelling mistakes and use of improper casing. value: status: Bad Request timestamp: '2020-06-12 15:58:54.068' path: /factset-funds/v1/{endpoint} message: 'Invalid Parameter (s): fakeParameterName1 fakeParameterName2. Please modify your request to use parameters outlined in the specification for this endpoint.' subErrors: null unsupportedMediaType_3: summary: Unsupported Media Type description: This bad request occurs when the media type passed in the request is not supported. Currently the APIs only support 'application/json'. value: status: Unsupported Media Type timestamp: '2019-11-05 09:42:27.237' path: /factset-prices/v1/{endpoint} message: text/html media type is not supported. Supported media types are application/json subErrors: null badRequestDateFormat_2: summary: Bad Request - Date Format description: This bad request occurs when a request doesn't use the YYYY-MM-DD in the date parameters. To resolve, convert your date to YYYY-MM-DD. value: status: Bad Request timestamp: '2019-10-31 16:08:07.945' path: /factset-funds/v1/{endpoint} message: 'The date parameter ''startDate'' must be in the following date format: YYYY-MM-DD' subErrors: null badRequestRequiredParameter_2: summary: Bad Request - Required Parameter Missing description: This error message occurs when the request does not include the required parameters. Required parameters are indicated with a red asterisks symbol in the specification file. value: status: Bad Request timestamp: '2020-06-12 15:48:42.016' path: /factset-funds/v1/{endpoint} message: The parameter 'ids' is required and may not be empty. subErrors: null resultofIndexSnapshotMultiple: summary: Index Snapshot of Prices and Returns for Two Companies as of 2020-08-06 description: The Price and Returns of S&P 500 and Russell 3000 as of 2020-08-06 value: data: - constituentNumber: 505 currency: LOCAL date: '2020-08-06' fsymId: SP50 marketValue: 27696158.012077 name: S&P 500 price: 3349.15600690205 priceReturnPercent1D: 0.642620385795123 priceReturnPercentQTD: 8.02735451465131 priceReturnPercentYTD: 3.66394447660916 requestId: SP50 returnType: GROSS totalReturnLevel: 6870.86168040129 totalReturnPercent1D: 0.653957589855003 totalReturnPercentQTD: 8.17415047623613 totalReturnPercentYTD: 4.84152796547426 - constituentNumber: 3000 currency: LOCAL date: '2020-08-06' fsymId: R.3000 marketValue: 32954409.7735481 name: Russell 3000 price: 3596.989378 priceReturnPercent1D: 0.502392266457519 priceReturnPercentQTD: 8.22378331718046 priceReturnPercentYTD: 3.47683663855225 requestId: R.3000 returnType: GROSS totalReturnLevel: 10597.086657 totalReturnPercent1D: 0.513265793869122 totalReturnPercentQTD: 8.35826463942657 totalReturnPercentYTD: 4.59191053652597 badRequestFutureDate_2: summary: Bad Request - Future Date description: This error message occurs when a future date is requested in the startDate and endDate parameters. Please revise your request to include dates as of today's current date or any prior historical date. value: status: Bad Request timestamp: '2020-06-12 15:52:48.091' path: /factset-funds/v1/{endpoint} message: The use of future dates is not applicable in this endpoint. Please revise your request to include dates up to today's current date. subErrors: null unauthenticated: summary: User Authentication Failed description: This occurs when a user is not properly authenticated or recognized by the service. Please double check the USERNAME-SERIAL and API-Key used to request and ensure you are within the IP range specified for the Key. Report Issue under 401 error for help with troubleshooting. value: status: User Authentication Failed timestamp: '2020-07-02 16:08:07.945' path: /factset-benchmarks/v1/{endpoint} message: User Authentication Failed. subErrors: null unsupportedMediaType_2: summary: Unsupported Media Type description: This bad request occurs when the media type passed in the request is not supported. Currently the APIs only support 'application/json'. value: status: Unsupported Media Type timestamp: '2019-11-05 09:42:27.237' path: /factset-funds/v1/{endpoint} message: text/html media type is not supported. Supported media types are application/json subErrors: null multipleRSSimpleRTResponse: summary: Requesting returns details for multiple companies with simple return type. description: Returns result for the given tickers returns and annualized returns analysis with simple return type. value: data: - currency: USD date: '2020-09-10' dividendAdjust: EXDATE fiveYearAnnualized: 18.892164 fsymId: HTM0LK-R ipoToDateAnnualized: 23.792849 monthToDate: -5.05054 nineMonth: 15.2164345 oneDay: 0 oneMonth: 3.3678055 oneYear: 28.326284 quarterToDate: 9.109688 requestId: GOOGL-US sixMonth: 21.335184 tenYearAnnualized: 20.567951 thirtyYearAnnualized: null threeMonth: 5.634606 threeYearAnnualized: 17.971731 twentyYearAnnualized: null twoYearAnnualized: 14.737806 weekToDate: -2.1489859 yearToDate: 15.517509 - currency: USD date: '2020-09-10' dividendAdjust: EXDATE fiveYearAnnualized: 0.68179286 fsymId: SJY281-R ipoToDateAnnualized: 6.5760174 monthToDate: -0.851506 nineMonth: -5.0556364 oneDay: 0 oneMonth: -3.8155913 oneYear: -11.230612 quarterToDate: 2.5834322 requestId: IBM-US sixMonth: 0.60111284 tenYearAnnualized: 2.7469 thirtyYearAnnualized: 7.513745 threeMonth: -4.604602 threeYearAnnualized: -0.49068186 twentyYearAnnualized: 1.8993893 twoYearAnnualized: -3.8598573 weekToDate: -0.03270507 yearToDate: -5.1477075 badRequestRequiredParameter: summary: Bad Request - Required Parameter Missing description: This error message occurs when the request does not include the required parameters. Required parameters are indicated with a red asterisks symbol in the specification file. value: status: Bad Request timestamp: '2020-06-30 13:22:09.053' path: /factset-benchmarks/v1/{endpoint} message: The parameter 'ids' is required and may not be empty. subErrors: null schemas: ids: type: array items: type: string minItems: 1 maxItems: 1000 description: 'The requested Fund Identifier. FactSet Identifiers, tickers, CUSIP and SEDOL are accepted input.

***ids limit** = 1000 per request*

*

Make note, GET Method URL request lines are also limited to a total length of 8192 bytes (8KB). In cases where the service allows for thousands of ids, which may lead to exceeding this request line limit of 8KB, its advised for any requests with large request lines to be requested through the respective "POST" method.

* ' example: - MABAX - FCNTX fundsReturnsSnapshotRequest: title: Returns Snapshot Request Body description: Returns Request Body type: object properties: ids: $ref: '#/components/schemas/ids' date: $ref: '#/components/schemas/dateSnapshot' dividendAdjust: $ref: '#/components/schemas/dividendAdjust' required: - ids requestedDate: title: Date type: string description: Date of holding expressed in YYYY-MM-DD format. example: '2020-08-06' currency: title: Currency type: string description: Currency for response. example: USD returnsSnapshot: title: Returns Snapshot Object type: object properties: fsymId: description: FactSet Security Identifier. Six alpha-numeric characters, excluding vowels, with a -S suffix (XXXXXX-S), resolved from the requestId of the Fund requested. type: string example: FNK7XP-S x-fds-fql-formula: FSYM_SECURITY_PERM_ID('SECURITY') nullable: true oneWeek: description: The one-week return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: 2.38777459407833 x-fds-fql-formula: FFD_TRET({date},"1WK","NAV",{dividendAdjust}) nullable: true oneMonth: description: The one-month return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: 7.52256770310935 x-fds-fql-formula: FFD_TRET({date},"1MON","NAV",{dividendAdjust}) nullable: true threeMonth: description: The three-month return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: 13.8004246284501 x-fds-fql-formula: FFD_TRET({date},"3MON","NAV",{dividendAdjust}) nullable: true yearToDate: description: The year-to-date return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: 13.1398416886544 x-fds-fql-formula: FFD_TRET({date},"YTD","NAV",{dividendAdjust}) nullable: true oneYear: description: The one-year return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: 40.2223675604972 x-fds-fql-formula: FFD_TRET({date},"1YR","NAV",{dividendAdjust}) nullable: true threeYear: description: The three-year return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: null x-fds-fql-formula: FFD_TRET({date},"3YR","NAV",{dividendAdjust}) nullable: true threeYearAnnualized: description: The three-year annualized return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: null x-fds-fql-formula: FFD_TRET_ANN({date},"3YR","NAV",{dividendAdjust}) nullable: true fiveYear: description: The five-year return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: 25.2970433246628 x-fds-fql-formula: FFD_TRET({date},"3YR","NAV",{dividendAdjust}) nullable: true fiveYearAnnualized: description: The five year annualized return for the requested id and date. The return type is determined by including or excluding dividends through the dividendAdjust parameter. type: number format: double example: null x-fds-fql-formula: FFD_TRET_ANN({date},"5YR","NAV",{dividendAdjust}) nullable: true date: description: The date of the return in YYYY-MM-DD format. type: string format: date example: '2021-03-30' nullable: true requestId: description: The requested Id sent as input. type: string example: MABAX dateSnapshot: type: string description: 'The date requested for a given date range in YYYY-MM-DD format. The date MUST be equal to or less than the `priceRecentDate` found within the /summary endpoint. ' example: '2019-01-01' calendar: title: Calendar type: string enum: - FIVEDAY - SEVENDAY default: FIVEDAY description: Calendar of data returned. SEVENDAY includes weekends. example: FIVEDAY returnsSnapshot_2: title: Return Snapshot Object type: object properties: fsymId: description: Factset Regional Security Identifier. Six alpha-numeric characters, excluding vowels, with an -R suffix (XXXXXX-R). Identifies the security's best regional security data series per currency. For equities, all primary listings per region and currency are allocated a regional-level permanent identifier. The regional-level permanent identifier will be available once a SEDOL representing the region/currency has been allocated and the identifiers are on FactSet. type: string example: SJY281-R nullable: true date: description: Specific reference date for the period expressed in YYYY-MM-DD format. type: string format: date example: '2020-09-09' nullable: true currency: description: 'Currency ISO code. For more details, visit [Online Assistant Page #1470](https://oa.apps.factset.com/pages/1470).' type: string example: USD nullable: true requestId: description: Identifier that was used for the request. type: string example: IBM-US oneDay: description: Returns the price performance of the security for the previous one day from the given date. type: number format: double example: 0.86627007 nullable: true oneMonth: description: Returns the price performance of the security for the past one month. type: number format: double example: -2.1606863 nullable: true threeMonth: description: Returns the price performance of the security for the past three months. type: number format: double example: -7.2874727 nullable: true sixMonth: description: Returns the price performance of the security for the past six months. type: number format: double example: 3.7772775 nullable: true nineMonth: description: Returns the price performance of the security for the past nine months. type: number format: double example: -8.706689 nullable: true oneYear: description: Returns the price performance of the security for the past one year. type: number format: double example: -14.263678 nullable: true quarterToDate: description: Returns the price performance of the security from the previous calendar quarter end to the given date. type: number format: double example: 1.2337565 nullable: true weekToDate: description: Returns the price performance of the security from the previous week (usually Friday) to the given date. type: number format: double example: -0.03270507 nullable: true monthToDate: description: Returns the price performance of the security from the previous month-end to the given date. type: number format: double example: -0.851506 nullable: true yearToDate: description: Returns the price performance of the security from the previous calendar year-end to the given date. type: number format: double example: -8.788413 nullable: true twoYearAnnualized: description: Returns the annualized compound total return for two years. type: number format: double example: -3.7836754 nullable: true threeYearAnnualized: description: Returns the annualized compound total return for three years. type: number format: double example: -0.49112806 nullable: true fiveYearAnnualized: description: Returns the annualized compound total return for five years. type: number format: double example: 0.8408688 nullable: true tenYearAnnualized: description: Returns the annualized compound total return for ten years. type: number format: double example: 2.8786583 nullable: true twentyYearAnnualized: description: Returns the annualized compound total return for twenty years. type: number format: double example: 1.8996516 nullable: true thirtyYearAnnualized: description: Returns the annualized compound total return for thirty years. type: number format: double example: 7.5250373 nullable: true ipoToDateAnnualized: description: Returns the annualized compound total return from the ipo date. The calculation uses the closing price as of the IPO date, and not the IPO price itself. type: number format: double example: 6.5763993 nullable: true dividendAdjust: description: "Controls the dividend reinvestment for the returns calculation. Dividends will be reinvested on the date the dividends go ex (when the dividends belong to the seller rather than the buyer). Visit [OA 8748](https://my.apps.factset.com/oa/pages/8748) for calculation methodology.\n * **PRICE** = Price Change - Dividends Excluded.\n * **EXDATE** = Simple Return - Dividends Received on exdate but not reinvested. Dividends accumulated throughout the specified period are added to the price at the end of the period.\n * **EXDATE_C** = Compound Return - Dividends reinvested on exdate. Dividends accumulated throughout the specified period are used to buy more shares of stock in the company.\n" type: string example: PRICE nullable: true DFSnapshot_Response: type: object description: sample response properties: Error: description: error value example: 0 type: array items: $ref: '#/components/schemas/errorResponse_2' symbol1: description: first symbol from `ids` or `chain` type: array items: $ref: '#/components/schemas/fields' example: [] Host: description: host name example: FactSet type: string symbol2: description: second symbol from `ids` or `chain` list type: string example: example_value dateRS: type: string description: 'The date in **YYYY-MM-DD** format. This controls the perspective dates to the calculate the returns. If left blank, the API will default to previous close. Future dates (T+1) are not accepted in this endpoint. ' example: '2019-12-31' fields: type: object description: All available fields in service. FID = Field ID Number. properties: Exchange: description: 'Field ID # 20. Exchange ISO-Code. Enumeration in Data Service Manual.' type: string example: example_value product: description: 'Field ID # 4. Product identifier. Enumeration in Data Service Manual.' type: string example: example_value Bid: description: 'Field ID # 509. Current bid price' type: number example: '500123' Bid_Date: description: 'Field ID # 386. Current bid date' type: string example: example_value Bid_Time: description: 'Field ID # 385. Current bid time' type: integer example: 10 Bid_Vol: description: 'Field ID # 505. Current bid size' type: integer example: 10 Bid_Tick: description: 'Field ID # 518. Current bid tick direction. Enumeration in Data Service Manual.' type: string example: example_value Bid_Close: description: 'Field ID # 648. Official Closing Bid' type: number example: 42.5 Bid_Close_Date: description: 'Field ID # 1062. Official Closing Bid Date' type: string example: example_value Bid_Close_Vol: description: 'Field ID # 296. Official Closing Bid Volume' type: integer example: 10 Bid_Exch: description: 'Field ID # 506. Exchange of the current bid price. Enumeration in Data Service Manual.' type: string example: example_value Ask: description: 'Field ID # 609. Current ask price' type: number example: 42.5 Ask_Date: description: 'Field ID # 388. Current ask date' type: string example: example_value Ask_Time: description: 'Field ID # 387. Current ask time' type: integer example: 10 Ask_Vol: description: 'Field ID # 605. Current ask size' type: integer example: 10 Ask_Close: description: 'Field ID # 649. Official Closing ask' type: number example: 42.5 Ask_Close_Date: description: 'Field ID # 1064. Official Closing ask Date' type: string example: example_value Ask_Close_Vol: description: 'Field ID # 297. Official Closing ask Volume' type: integer example: 10 Ask_Exch: description: 'Field ID # 606. Exchange of the current ask price. Enumeration in Data Service Manual.' type: string example: example_value Short_Sale_Indicator: description: 'Field ID # 277. Flag to indicate if a security is restricted from being sold short' type: integer example: 10 Quote_Condition: description: 'Field ID # 38. Current Quote Condition. Enumeration in Data Service Manual.' type: string example: example_value Last_Price: description: 'Field ID # 50. Official last trade price' type: number example: 42.5 Last_Date: description: 'Field ID # 384. Last Date' type: string example: example_value Last_Time: description: 'Field ID # 383. Official last traded time' type: integer example: 10 Last_Vol: description: 'Field ID # 31. Official last traded volume' type: integer example: 10 Last_Tick: description: 'Field ID # 25. Official last tick. Enumeration in Data Service Manual.' type: string example: example_value Official_Close: description: 'Field ID # 526. Official Close/Close Range 1 Price' type: number example: 42.5 Official_Close_Time: description: 'Field ID # 1065. Official Close/Close Range 1 Time' type: integer example: 10 Last_Exch: description: 'Field ID # 33. Official last traded exchange. Enumeration in Data Service Manual.' type: string example: example_value Settlement: description: 'Field ID # 815. Settle Price' type: number example: 42.5 Traded_Price: description: 'Field ID # 912. Last traded Price' type: number example: 42.5 Traded_Date: description: 'Field ID # 868. Last traded Date' type: string example: example_value Traded_Time: description: 'Field ID # 916. Last traded Time' type: integer example: 10 Traded_Vol: description: 'Field ID # 918. Last traded Volume' type: integer example: 10 Traded_Condition: description: 'Field ID # 1098. Last traded trade condition' type: string example: example_value Net_Change: description: 'Field ID # 662. Official last change' type: number example: 42.5 Percent_Change: description: 'Field ID # 816. Official last percentage change' type: number example: 42.5 Premkt_Price: description: 'Field ID # 1019. Unofficial last premarket trade price' type: number example: 42.5 Premkt_Time: description: 'Field ID # 1075. Unofficial last premarket traded time' type: integer example: 10 Premkt_Vol: description: 'Field ID # 1832. Unofficial last premarket traded volume' type: integer example: 10 Premkt_CVol: description: 'Field ID # 1836. Unofficial last premarket cumulative volume' type: integer example: 10 Postmkt_Price: description: 'Field ID # 2029. Unofficial last post market trade price' type: number example: 42.5 Postmkt_Time: description: 'Field ID # 1076. Unofficial last post market traded time' type: integer example: 10 Postmkt_Vol: description: 'Field ID # 1860. Unofficial last post market traded volume' type: integer example: 10 Postmkt_Cvol: description: 'Field ID # 1864. Unofficial last post market cumulative volume' type: integer example: 10 Offbook_Cum_Vol: description: 'Field ID # 528. Off Book Cumulative Volume' type: integer example: 10 Official_Bid_Close: description: 'Field ID # 448. The bid close price of today' type: number example: 42.5 Official_Ask_Close: description: 'Field ID # 476. The ask close price of today' type: number example: 42.5 Mid_Date: description: 'Field ID # 136. Current mid date' type: string example: example_value Mid_Time: description: 'Field ID # 135. Current mid price time' type: integer example: 10 Cvol: description: 'Field ID # 132. Cumulative volume' type: integer example: 10 Turnover: description: 'Field ID # 341. Turnover' type: number example: 42.5 Vwap: description: 'Field ID # 780. Volume Weighted Average Price' type: number example: 42.5 Trade_Count: description: 'Field ID # 267. Cumulative trade count' type: integer example: 10 Block_Trade_Count: description: 'Field ID # 269. Cumulative block count' type: integer example: 10 Block_Cvol: description: 'Field ID # 271. Cumulative block volume' type: integer example: 10 Prev_Close: description: 'Field ID # 208. Previous trading days Close' type: number example: 42.5 Close_Date: description: 'Field ID # 1051. Previous trading days Closing Date' type: string example: example_value Prev_Close_Unadj: description: 'Field ID # 892. Unadjusted Previous trading days Close' type: number example: 42.5 Prev_Close_2: description: 'Field ID # 1172. Previous trading days Close late rollover[1]' type: number example: 42.5 Prev_Close_Unadj_2: description: 'Field ID # 1176. Unadjusted Previous trading days Close late rollover' type: number example: 42.5 Lower_Trading_Band: description: 'Field ID # 1093. Lower trading band' type: number example: 42.5 Upper_Trading_Band: description: 'Field ID # 1087. Upper trading band' type: number example: 42.5 Buy_Imbalance: description: 'Field ID # 495. NYSE buy imbalance' type: integer example: 10 Sell_Imbalance: description: 'Field ID # 496. NYSE sell imbalance' type: integer example: 10 Nas_Buy_Imbalance: description: 'Field ID # 948. NAS buy imbalance' type: integer example: 10 Nas_Sell_Imbalance: description: 'Field ID # 949. NAS sell imbalance' type: integer example: 10 Open: description: 'Field ID # 158. The Open Range 1 or Open Price' type: number example: 42.5 High: description: 'Field ID # 107. Current high for the day' type: number example: 42.5 Low: description: 'Field ID # 307. Current low for the day' type: number example: 42.5 Venue: description: 'Field ID # 530. Venue' type: string example: example_value Buy_Id: description: 'Field ID # 1820. Buy Id' type: string example: '500123' Sell_Id: description: 'Field ID # 1824. Sell Id' type: string example: '500123' Auto_Trade_Vwap: description: 'Field ID # 637. VWAP including only order book (automatic) trades' type: number example: 42.5 Auto_Trade_Cvol: description: 'Field ID # 635. Cumulative Volume calculated on all automated trading volumes for order-based segments' type: integer example: 10 Auto_Trade_Count: description: 'Field ID # 636. Trade Quantity including only order book (automatic) trades' type: integer example: 10 Ex_Date_Status: description: 'Field ID # 531. Ex-Date Status' type: string example: example_value Premkt_Net_Change: description: 'Field ID # 896. Net change in pre-market session(US stocks only)' type: number example: 42.5 Premkt_Percent_Change: description: 'Field ID # 897. Percent change in pre-market session(US stocks only)' type: number example: 42.5 Closing_Vol: description: 'Field ID # 1345. Volume of the closing trade' type: integer example: 10 Primary_Market: description: 'Field ID # 1517. FactSet Exchange Code of primary market for instrument. Determined by highest trading volume over a 3-day calendar period' type: string example: example_value Iso_Country_Exchange: description: 'Field ID # 1621. Three Letter Country Code from ISO-3166' type: string example: example_value Premkt_Exch: description: 'Field ID # 1743. Premarket Exchange. Enumeration in Data Service Manual. ' type: string example: example_value Postmkt_Exch: description: 'Field ID # 1744. Post Market Exchange. Enumeration in Data Service Manual.' type: string example: example_value Fref_Security_type: description: 'Field ID # 1751. The Security type returned by FREF_SECURITY_type' type: string example: example_value Security_Sub_type: description: 'Field ID # 1762. Sub type of the security populated for funds right now' type: string example: example_value Postmkt_Net_Change: description: 'Field ID # 1881. Post Market Net Change' type: number example: 42.5 Postmkt_Percent_Change: description: 'Field ID # 1882. Post Market Percent Change. ' type: number example: 42.5 Isin: description: 'Field ID # 12. ISIN' type: string example: example_value Cusip: description: 'Field ID # 14. CUSIP' type: string example: example_value Sedol: description: 'Field ID # 15. SEDOL' type: string example: example_value description: description: 'Field ID # 8. Security Description' type: string example: A sample description. Shares_Outstanding: description: 'Field ID # 29. Total number of shares outstanding' type: number example: 42.5 Price_Currency: description: 'Field ID # 62. Price currency code' type: string example: example_value Security_Status: description: 'Field ID # 2800. Security Status or Halt Indicator. Enumeration in Data manual' type: string example: example_value Gmt_Offset: description: 'Field ID # 389. GMT Offset in Minutes' type: integer example: 10 Market_Segment: description: 'Field ID # 650. Market segment' type: string example: example_value Market_Sector: description: 'Field ID # 651. Market sector' type: string example: example_value Period: description: 'Field ID # 633. Period' type: string example: example_value Country_Code: description: 'Field ID # 652. ISO Country code' type: string example: example_value Financial_Status: description: 'Field ID # 1896. Financial Status Enumeration Table' type: integer example: 10 Factset_Industry: description: 'Field ID # 722. FactSet Industry Classification' type: string example: example_value Factset_Sector: description: 'Field ID # 723. FactSet Sector Classification' type: string example: example_value Halt_Info: description: 'Field ID # 1414. Halt Status' type: integer example: 10 Homepage: description: 'Field ID # 724. Company Homepage' type: string example: example_value Halt_description: description: 'Field ID # 1184. Halt description' type: string example: example_value Feed_Currency: description: 'Field ID # 1182. Currency the Exchange sends the prices to FactSet in' type: string example: example_value Country_Name: description: 'Field ID # 1190. Name of Country' type: string example: example_value Order_Lot_Size: description: 'Field ID # 427. Number of securities in a lot' type: integer example: 10 Trade_Lot_Size: description: 'Field ID # 1335. The minimum number of lots required to trade' type: integer example: 10 Tick_Size: description: 'Field ID # 1499. Tick Size' type: number example: 42.5 Tick_Group: description: 'Field ID # 1507. Tick Group' type: string example: example_value Tick_Pilot_Eff_Date: description: 'Field ID # 1508. Tick Pilot effective day' type: string example: example_value Avg_30Day_Vol: description: 'Field ID # 709. Average cumulative volume for last 30 days' type: number example: 42.5 Avg_5Day_Vol: description: 'Field ID # 719. Average cumulative volume over last 5 trading days' type: number example: 42.5 High_52Week: description: 'Field ID # 767. 52 Week High Price' type: number example: 42.5 Low_52Week: description: 'Field ID # 768. 52 Week Low Price' type: number example: 42.5 High_52Week_Date: description: 'Field ID # 1220. 52 Week High Price Date' type: string example: example_value Low_52Week_Date: description: 'Field ID # 1295. 52 Week Low Price Date' type: string example: example_value Trade_Condition: description: 'Field ID # 174. Trade Condition' type: string example: example_value Total_Return_3M: description: 'Field ID # 746. 3 Month return for US mutual funds' type: number example: 42.5 Total_Return_52W: description: 'Field ID # 747. 52-Week Total Return for US mutual funds' type: number example: 42.5 returnType: title: Return Type type: string enum: - GROSS - NET default: GROSS description: The return type adjustment used in returns response items. Adjustment can be made for GROSS and NET dividends that will be included in the return calculation. The service will default to GROSS. example: GROSS indexSnapshotRequest: type: object title: Index Snapshot Request properties: ids: $ref: '#/components/schemas/indexIds' date: $ref: '#/components/schemas/requestedDate' returnType: $ref: '#/components/schemas/returnType' currency: $ref: '#/components/schemas/currency' calendar: $ref: '#/components/schemas/calendar' required: - ids dividendAdjust: type: string enum: - DIV - NO_DIV default: DIV description: 'Controls the dividend inclusion for the NAV returns calculations, where - * DIV = Include Dividends, Total Return * NO_DIV = Exclude Dividends, Simple Return ' example: DIV indexSnapshot: title: Index Snapshot Object type: object properties: fsymId: type: string description: Requested Identifier. Must be a valid Benchmark Identifier recognized by FactSet. example: SP50 nullable: true date: description: The respective date for values as of the date requested in YYYY-MM-DD format. type: string format: date example: '2020-07-01' nullable: true name: description: Proper Name of Index. type: string example: S&P 500 nullable: true constituentNumber: description: The total number of constituents as of the date requested. type: integer example: 502 nullable: true currency: description: Currency Code used in adjustments. If no Currency was requested, the service will default to the local Calendar. type: string example: USD nullable: true marketValue: description: Index Level Market Capitalization as of the date requested expressed in millions. type: number format: double example: 27696158.012077 nullable: true price: description: Index Level Price type: number format: double example: 3349.15600690205 nullable: true priceReturnPercent1D: description: Index Level Price - 1 Day percent change type: number format: double example: 0.642620385795123 nullable: true priceReturnPercentQTD: description: Index Level Price - Quarter-to-Date percent change type: number format: double example: 8.02735451465131 nullable: true priceReturnPercentYTD: description: Index Level Price - Year-to-Date percent change type: number format: double example: 3.66394447660916 nullable: true totalReturnLevel: description: Index Level Total Return Amount. (Gross or Net depends on requested returnType) type: number format: double example: 6870.86168040129 nullable: true totalReturnPercent1D: description: Index Level Total Return - 1 Day percent change. (Gross or Net depends on requested returnType) type: number format: double example: 0.653957589855003 nullable: true totalReturnPercentQTD: description: Index Level Total Return - Quarter-to-Date percent change. (Gross or Net depends on requested returnType) type: number format: double example: 8.17415047623613 nullable: true totalReturnPercentYTD: description: Index Level Total Return - Year-to-Date percent change. (Gross or Net depends on requested returnType) type: number format: double example: 4.84152796547426 nullable: true returnType: description: The requested Return Type - GROSS or NET type: string example: GROSS nullable: true requestId: type: string description: Benchmark Identifier specified in the request example: SP50 returnsSnapshotRequest: title: Returns Snapshot Request Body description: Returns Snapshot Request Body type: object properties: ids: $ref: '#/components/schemas/idsMax2000' date: $ref: '#/components/schemas/dateRS' currency: $ref: '#/components/schemas/requestCurrency' calendar: $ref: '#/components/schemas/calendar_2' dividendAdjust: $ref: '#/components/schemas/dividendAdjustSnapshot' required: - ids requestCurrency: title: Request Currency type: string description: Currency code for adjusting prices. Default is Local. For a list of currency ISO codes, visit [Online Assistant Page 1470](https://oa.apps.factset.com/pages/1470). example: USD dividendAdjustSnapshot: type: string enum: - PRICE - EXDATE - EXDATE_C default: PRICE description: "Controls the dividend reinvestment for the returns calculation. Dividends will be reinvested on the date the dividends go ex (when the dividends belong to the seller rather than the buyer). Visit [OA 8748](https://my.apps.factset.com/oa/pages/8748) for calculation methodology.\n * **PRICE** = Price Change - Dividends Excluded.\n * **EXDATE** = Simple Return - Dividends Received on exdate but not reinvested. Dividends accumulated throughout the specified period are added to the price at the end of the period.\n * **EXDATE_C** = Compound Return - Dividends reinvested on exdate. Dividends accumulated throughout the specified period are used to buy more shares of stock in the company.\n" example: PRICE fundsReturnsSnapshotResponse: type: object title: Returns Snapshot Response properties: data: description: Array of Returns Objects type: array items: $ref: '#/components/schemas/returnsSnapshot' example: [] calendar_2: type: string enum: - FIVEDAY - SEVENDAY - LOCAL default: FIVEDAY description: Calendar of data returned. SEVENDAY includes weekends. LOCAL calendar will default to the securities' trading calendar which excludes date records for respective holiday periods. example: FIVEDAY indexIds: title: Index Ids type: array items: type: string minItems: 1 maxItems: 500 description: Benchmark Identifiers. Reference the helper endpoint **/id-list** to get a sample list of valid identifiers. example: - SP50 idsMax2000: type: array items: type: string minItems: 1 maxItems: 2000 description: 'The requested list of security identifiers. Accepted ID types include Market Tickers, SEDOL, ISINs, CUSIPs, or FactSet Permanent Ids. ' example: - FDS-US errorResponse: type: object title: Error Response properties: status: description: status type: string example: Bad Request timestamp: description: timestamp in YYYY-MM-DD HH:MM:SS.SSS type: string example: '2019-11-01 11:09:41.918' format: date-time path: description: The Endpoint path {package}/version/{endpoint} type: string example: /factset-benchmarks/v1/{endpoint} message: description: The plain text error message type: string example: Validation Error subErrors: description: subErrors related to the error message. Null if not applicable. type: object properties: object: description: the operation ID type: string field: description: Parameter Field Name type: string message: description: Error message type: string rejectedValue: description: Rejected Values in an Array type: array items: type: string example: example_value errorResponse_2: type: object title: Error Response properties: status: description: status type: string example: Bad Request timestamp: description: timestamp in YYYY-MM-DD HH:MM:SS.SSS type: string example: '2019-11-01 11:09:41.918' format: date-time path: description: The Endpoint path {endpoint} type: string example: /dfsnapshot message: description: The plain text error message type: string example: Validation Error subErrors: description: subErrors related to the error message. Null if not applicable. type: object properties: field: description: Parameter Field Name type: string message: description: Error message type: string example: example_value errorResponse_4: type: object title: Error Response properties: status: description: status type: string example: Bad Request timestamp: description: timestamp in YYYY-MM-DD HH:MM:SS.SSS type: string example: '2019-11-01 11:09:41.918' format: date-time path: description: The Endpoint path {package}/version/{endpoint} type: string example: /factset-prices/v1/prices message: description: The plain text error message type: string example: Validation Error subErrors: description: subErrors related to the error message. Null if not applicable. type: object properties: object: description: the operation ID type: string field: description: Parameter Field Name type: string message: description: Error message type: string rejectedValue: description: Rejected Values in an Array type: array items: type: string example: example_value returnsSnapshotResponse: type: object title: Returns Snapshot Response properties: data: description: Array of Returns Snapshot Objects type: array items: $ref: '#/components/schemas/returnsSnapshot_2' example: [] indexSnapshotResponse: title: Index Snapshot Response type: object properties: data: description: 'Array of index snapshot response objects. ' type: array items: $ref: '#/components/schemas/indexSnapshot' example: [] errorResponse_3: type: object title: Error Response properties: status: description: status type: string example: Bad Request timestamp: description: timestamp in YYYY-MM-DD HH:MM:SS.SSS type: string example: '2019-11-01 11:09:41.918' format: date-time path: description: The Endpoint path {package}/version/{endpoint} type: string example: /factset-funds/v1/superRegion message: description: The plain text error message type: string example: Validation Error subErrors: description: subErrors related to the error message. Null if not applicable. type: object properties: object: description: the operation ID type: string field: description: Parameter Field Name type: string message: description: Error message type: string rejectedValue: description: Rejected Values in an Array type: array items: type: string example: example_value responses: '415_2': description: Unsupported Media Type. This error may be returned when the caller sends a resource in a format that is not accepted by the server. This can be fixed by ensuring that Content-Type header is set to the correct value. In this instance, "application/json" would be the appropriate value. content: application/json: schema: $ref: '#/components/schemas/errorResponse_3' examples: Bad Request - Date Format: $ref: '#/components/examples/unsupportedMediaType_2' '403_2': description: The USERNAME-SERIAL attempted to request the endpoint is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization. content: application/json: schema: $ref: '#/components/schemas/errorResponse_3' examples: Bad Request - Date Format: $ref: '#/components/examples/forbidden_2' '415_3': description: Unsupported Media Type. This error may be returned when the caller sends a resource in a format that is not accepted by the server. This can be fixed by ensuring that Content-Type header is set to the correct value. In this instance, "application/json" would be the appropriate value. content: application/json: schema: $ref: '#/components/schemas/errorResponse_4' examples: Bad Request - Date Format: $ref: '#/components/examples/unsupportedMediaType_3' '500': description: Internal Server Error. content: application/json: schema: $ref: '#/components/schemas/errorResponse' examples: Internal Server Error - Not Writable: $ref: '#/components/examples/notWritable' Internal Server Error - General Exception: $ref: '#/components/examples/generalException' '400_2': description: Bad Request. This can occur for several reasons. Please review the "message" for more details. content: application/json: schema: $ref: '#/components/schemas/errorResponse_3' examples: Bad Request - Date Format: $ref: '#/components/examples/badRequestDateFormat_2' Bad Request - Missing Required Parameter: $ref: '#/components/examples/badRequestRequiredParameter_2' Bad Request - Future Date: $ref: '#/components/examples/badRequestFutureDate_2' Bad Request - Invalid Parameter: $ref: '#/components/examples/badRequestInvalidParameters_2' Bad Request - Malformed JSON: $ref: '#/components/examples/badRequestMalformedJSON_2' Bad Request - Read Timeout: $ref: '#/components/examples/badRequestReadTimeout_2' '415': description: Unsupported Media Type. This error may be returned when the caller sends a resource in a format that is not accepted by the server. This can be fixed by ensuring that Content-Type header is set to the correct value. In this instance, "application/json" would be the appropriate value. content: application/json: schema: $ref: '#/components/schemas/errorResponse' examples: Bad Request - Unsupported Media Type: $ref: '#/components/examples/unsupportedMediaType' '400_3': description: Bad Request. This can occur for several reasons. Please review the "message" for more details. content: application/json: schema: $ref: '#/components/schemas/errorResponse_4' examples: Bad Request - Date Format: $ref: '#/components/examples/badRequestDateFormat_3' Bad Request - Missing Required Parameter: $ref: '#/components/examples/badRequestRequiredParameter_3' Bad Request - Future Date: $ref: '#/components/examples/badRequestFutureDate_3' Bad Request - Invalid Parameter: $ref: '#/components/examples/badRequestInvalidParameters_3' Bad Request - Malformed JSON: $ref: '#/components/examples/badRequestMalformedJSON_3' Bad Request - Read Timeout: $ref: '#/components/examples/badRequestReadTimeout_3' '403': description: The USERNAME-SERIAL attempted to request the endpoint is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization. content: application/json: schema: $ref: '#/components/schemas/errorResponse' examples: Bad Request - forbidden: $ref: '#/components/examples/forbidden' '400': description: Bad Request. This can occur for several reasons. Please review the "message" for more details. content: application/json: schema: $ref: '#/components/schemas/errorResponse' examples: Bad Request - Date Format: $ref: '#/components/examples/badRequestDateFormat' Bad Request - Missing Required Parameter: $ref: '#/components/examples/badRequestRequiredParameter' Bad Request - Future Date: $ref: '#/components/examples/badRequestFutureDate' Bad Request - Invalid Parameter: $ref: '#/components/examples/badRequestInvalidParameters' Bad Request - More Than One Benchmark Identifier: $ref: '#/components/examples/badRequestMoreThanOneBenchmarkIdentifier' Bad Request - Malformed JSON: $ref: '#/components/examples/badRequestMalformedJSON' Bad Request - Read Timeout: $ref: '#/components/examples/badRequestReadTimeout' '401': description: Unauthenticated USERNAME-SERIAL. Ensure you are logged in and have successfully generated an API KEY for the IP range you are connecting from. For more help, select the **Report Issue** in the top right corner of this Developer Portal specification card and choose Connectivity 401 or 403 Responses. content: application/json: schema: $ref: '#/components/schemas/errorResponse' examples: Bad Request - Date Format: $ref: '#/components/examples/unauthenticated' '403_3': description: The USERNAME-SERIAL attempted to request the endpoint is not authorized to access. The request was a legal request, but the server is refusing to respond. Please reach out to FactSet Account Team for assistance with authorization. content: application/json: schema: $ref: '#/components/schemas/errorResponse_4' examples: Bad Request - Date Format: $ref: '#/components/examples/forbidden_3' securitySchemes: basicAuth: type: http scheme: basic externalDocs: url: https://developer.factset.com/api-catalog/analytics-datastore-api description: API Documentation