FactSet Real-Time Time Series API

Time series data, end-of-day or intraday, tick-by-tick or subsampled. Additional vendor-specific endpoints provide a modified interface for seamless integration with the ChartIQ chart library.

OpenAPI Specification

real-time-time-series-openapi-original.yml Raw ↑
openapi: 3.0.0
info:
  version: 3.0.0
  title: Factset Time Series API For Digital Portals
  description: >
    Time series data, end-of-day or intraday, tick-by-tick or subsampled.
    Additional vendor-specific endpoints provide a modified interface

    for seamless integration with the ChartIQ chart library.


    This API is focused on high-performance applications that are


    * serving millions of end-users,

    * accessible by client browsers via the internet,

    * integrated into complex infrastructures such as existing frontend
    frameworks or authentication services.


    This API has been designed for direct use by client web applications and
    feature extreme low latency:

    The average response time across all endpoints is 30 ms whereas 99% of all
    requests are answered in close to under 300ms.


    See the [Real-Time Quotes API for Digital
    Portals](https://developer.factset.com/api-catalog/real-time-quotes-api) for
    access to detailed

    price information.
  contact:
    name: FactSet Research Systems
    url: https://developer.factset.com/contact
    email: [email protected]
  license:
    name: Apache License, Version 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
servers:
  - url: https://api.factset.com/wealth/v3
paths:
  /vendor/chartIQ/timeSeries/eod/list:
    post:
      tags:
        - Vendor
      operationId: post/vendor/chartIQ/timeSeries/eod/list
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: true
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset End-of-day time series data for a notation.
      description: >-
        End-of-day time series data for a notation. The resulting time series is
        always adjusted for currency changes.<br><br>Pagination to a previous
        page is not supported and `pagination.previous` is always `null`.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostVendorChartIQTimeSeriesEodListRequest'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/PostVendorChartIQTimeSeriesEodList200Response'
      parameters: []
  /vendor/chartIQ/timeSeries/eod/subsample/get:
    post:
      tags:
        - Vendor
      operationId: post/vendor/chartIQ/timeSeries/eod/subsample/get
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: false
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Single subsample end-of-day data for a notation.
      description: >-
        Single subsample end-of-day data for a notation. The sample is always
        adjusted for currency changes. The subsample may exceed the entitled
        date range, but will be based only on days that are in the entitled
        range.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/PostVendorChartIQTimeSeriesEodSubsampleGetRequest
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostVendorChartIQTimeSeriesEodSubsampleGet200Response
      parameters: []
  /vendor/chartIQ/timeSeries/eod/subsample/list:
    post:
      tags:
        - Vendor
      operationId: post/vendor/chartIQ/timeSeries/eod/subsample/list
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: true
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Subsampled end-of-day time series data for a notation.
      description: >-
        Subsampled end-of-day time series data for a notation. The resulting
        time series is always adjusted for currency changes. If a subsample's
        date range is not entirely within the maximally entitled date range, the
        subsample is excluded from the response.<br><br>Pagination to a previous
        page is not supported and `pagination.previous` is always `null`.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/PostVendorChartIQTimeSeriesEodSubsampleListRequest
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostVendorChartIQTimeSeriesEodSubsampleList200Response
      parameters: []
  /vendor/chartIQ/timeSeries/intraday/subsample/get:
    post:
      tags:
        - Vendor
      operationId: post/vendor/chartIQ/timeSeries/intraday/subsample/get
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: false
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Single subsample intraday data for a notation.
      description: >-
        Single subsample intraday data for a notation. The subsample may exceed
        the entitled time range, but will be based only on ticks that are in the
        entitled range.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/PostVendorChartIQTimeSeriesIntradaySubsampleGetRequest
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostVendorChartIQTimeSeriesIntradaySubsampleGet200Response
      parameters: []
  /vendor/chartIQ/timeSeries/intraday/subsample/list:
    post:
      tags:
        - Vendor
      operationId: post/vendor/chartIQ/timeSeries/intraday/subsample/list
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: true
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Subsampled intraday time series data for a notation.
      description: >-
        Subsampled intraday time series data for a notation. If a subsample's
        time range is not entirely within the maximally entitled time range, the
        subsample is excluded from the response.<br><br>Pagination to a previous
        page is not supported and `pagination.previous` is always `null`.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/PostVendorChartIQTimeSeriesIntradaySubsampleListRequest
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostVendorChartIQTimeSeriesIntradaySubsampleList200Response
      parameters: []
  /prices/timeSeries/eod/list:
    post:
      tags:
        - Prices
      operationId: post/prices/timeSeries/eod/list
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: true
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset End-of-day time series data for a notation.
      description: >-
        End-of-day time series data for a notation. The resulting time series is
        always adjusted for currency changes.<br><br>Pagination to a previous
        page is not supported and `pagination.previous` is always `null`.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostPricesTimeSeriesEodListRequest'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/PostPricesTimeSeriesEodList200Response'
      parameters: []
  /prices/timeSeries/eod/subsample/get:
    post:
      tags:
        - Prices
      operationId: post/prices/timeSeries/eod/subsample/get
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: false
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Single subsample end-of-day data for a notation.
      description: >-
        Single subsample end-of-day data for a notation. The sample is always
        adjusted for currency changes. The subsample may exceed the entitled
        date range, but will be based only on days that are in the entitled
        range.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostPricesTimeSeriesEodSubsampleGetRequest'
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostPricesTimeSeriesEodSubsampleGet200Response
      parameters: []
  /prices/timeSeries/eod/subsample/list:
    post:
      tags:
        - Prices
      operationId: post/prices/timeSeries/eod/subsample/list
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: true
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Subsampled end-of-day time series data for a notation.
      description: >-
        Subsampled end-of-day time series data for a notation. The resulting
        time series is always adjusted for currency changes. If a subsample's
        date range is not entirely within the maximally entitled date range, the
        subsample is excluded from the response.<br><br>Pagination to a previous
        page is not supported and `pagination.previous` is always `null`.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostPricesTimeSeriesEodSubsampleListRequest'
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostPricesTimeSeriesEodSubsampleList200Response
      parameters: []
  /prices/timeSeries/intraday/list:
    post:
      tags:
        - Prices
      operationId: post/prices/timeSeries/intraday/list
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: true
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Intraday time series data for a notation.
      description: >-
        Intraday time series data for a notation.<br><br>Pagination to a
        previous page is not supported and `pagination.previous` is always
        `null`.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PostPricesTimeSeriesIntradayListRequest'
        required: true
      responses:
        '200':
          $ref: '#/components/responses/PostPricesTimeSeriesIntradayList200Response'
      parameters: []
  /prices/timeSeries/intraday/subsample/get:
    post:
      tags:
        - Prices
      operationId: post/prices/timeSeries/intraday/subsample/get
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: false
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Single subsample intraday data for a notation.
      description: >-
        Single subsample intraday data for a notation. The subsample may exceed
        the entitled time range, but will be based only on ticks that are in the
        entitled range.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/PostPricesTimeSeriesIntradaySubsampleGetRequest
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostPricesTimeSeriesIntradaySubsampleGet200Response
      parameters: []
  /prices/timeSeries/intraday/subsample/list:
    post:
      tags:
        - Prices
      operationId: post/prices/timeSeries/intraday/subsample/list
      x-supportsOffsetBasedPaging: false
      x-supportsOffsetBasedPagingWithoutTotal: false
      x-supportsCursorBasedPaging: false
      x-supportsCursorBasedPagingWithoutTotal: true
      x-supportsPush: false
      x-requiresUser: false
      x-requiresInternalClient: false
      x-disallowUser: false
      x-no-merge: false
      x-maxSortParameterCount: 10
      x-supportsPermissionDeniedResponse: false
      summary: Factset Subsampled intraday time series data for a notation.
      description: >-
        Subsampled intraday time series data for a notation. If a subsample's
        time range is not entirely within the maximally entitled time range, the
        subsample is excluded from the response.<br><br>Pagination to a previous
        page is not supported and `pagination.previous` is always `null`.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              $ref: >-
                #/components/schemas/PostPricesTimeSeriesIntradaySubsampleListRequest
        required: true
      responses:
        '200':
          $ref: >-
            #/components/responses/PostPricesTimeSeriesIntradaySubsampleList200Response
      parameters: []
components:
  schemas:
    ErrorMetaObject:
      type: object
      description: The meta member contains the meta information of the response.
      properties:
        status:
          $ref: '#/components/schemas/StatusObject'
    ErrorObject:
      type: array
      description: >-
        The errors member contains additional information about a failed
        request.
      items:
        type: object
        properties:
          details:
            type: string
            description: >-
              A human-readable, unstructured explanation specific to this
              occurrence of the failure.
          encryptedDetails:
            type: string
            description: >-
              Base64-encoded, internal details about the error, in addition to
              "details".
          type:
            type: number
            format: int32
            description: Internal error type of the Foundation API protocol.
          attribute:
            type: array
            description: >-
              For a validation error, a reference to the request parameter that
              failed validation; otherwise, an empty array.
            items:
              type: object
              properties:
                name:
                  type: string
                  description: Element of the path denoting the request parameter.
                index:
                  type: number
                  format: int32
                  description: >-
                    If the attribute "name" designates an array, index of the
                    array element; otherwise the special value -1.
              x-property-sort:
                - name
                - index
        x-property-sort:
          - details
          - encryptedDetails
          - type
          - attribute
    AttributesMember:
      type: array
      description: Limit the attributes returned in the response to the specified set.
      items:
        type: string
        maxLength: 100
        exclusiveMaximum: false
      maxItems: 50
      uniqueItems: true
    LanguageMember:
      type: string
      format: isoLanguage
      description: ISO 639-1 code of the language.
      maxLength: 2
      minLength: 2
      exclusiveMinimum: false
      exclusiveMaximum: false
    StatusObject:
      type: object
      properties:
        code:
          type: number
          format: int32
          description: >-
            The HTTP status code of the response, mirroring the code from the
            Status-Line of the HTTP response message (see [RFC2616] section
            6.1).
      description: The status member contains the status code of the response.
      required:
        - code
    CursorBasedPaginationOutputObject:
      type: object
      description: Pagination attributes for the cursor-based pagination strategy.
      properties:
        total:
          type: number
          format: int32
          description: Total number of entries in the result set.
        isEstimatedTotal:
          type: boolean
          description: Flag indicating that the value of `total` is estimated.
        next:
          type: string
          description: >-
            The next cursor position to use in the parameter `pagination.cursor`
            for an endpoint that supports cursor-based pagination, otherwise
            `null`.
        previous:
          type: string
          description: >-
            The previous cursor position to use in the parameter
            `pagination.cursor` for an endpoint that supports cursor-based
            pagination. If a previous cursor position is not supported or
            available, `previous` is `null`.
      required:
        - total
        - isEstimatedTotal
        - next
        - previous
      x-property-sort:
        - total
        - isEstimatedTotal
        - next
        - previous
    CursorBasedPaginationOutputObjectWithoutTotal:
      type: object
      description: >-
        Pagination attributes for the cursor-based pagination strategy; a total
        element count is not supported.
      properties:
        next:
          type: string
          description: >-
            The next cursor position to use in the parameter `pagination.cursor`
            for an endpoint that supports cursor-based pagination, otherwise
            `null`.
        previous:
          type: string
          description: >-
            The previous cursor position to use in the parameter
            `pagination.cursor` for an endpoint that supports cursor-based
            pagination. If a previous cursor position is not supported or
            available, `previous` is `null`.
      required:
        - next
        - previous
      x-property-sort:
        - next
        - previous
    OffsetBasedPaginationOutputObject:
      type: object
      description: Pagination attributes for the offset-based pagination strategy.
      properties:
        total:
          type: number
          format: int32
          description: Total number of entries in the result set.
        isEstimatedTotal:
          type: boolean
          description: Flag indicating that the value of "total" is estimated.
      required:
        - total
        - isEstimatedTotal
      x-property-sort:
        - total
        - isEstimatedTotal
    OffsetBasedPaginationOutputObjectWithoutTotal:
      type: object
      description: >-
        Pagination attributes for the offset-based pagination strategy; a total
        element count is not supported.
      properties:
        hasNext:
          type: boolean
          description: >-
            Flag indicating that a subsequent request with the same parameters,
            except that the parameter `pagination.offset` is incremented by
            `pagination.limit`, would yield additional results.
      required:
        - hasNext
      x-property-sort:
        - hasNext
    PartialOutputObject:
      type: object
      properties:
        isPartial:
          type: boolean
          description: >-
            Flag indicating that the response is a possibly incomplete array or
            an object containing a possibly incomplete array, due to hitting a
            processing time limit. If `true`, some matching results might be
            missing from the array, or elements for matching results might be
            incorrectly included (for example, when priority sorting would have
            removed the element). Depending on the use case, such a response may
            be unsuitable.
      description: Object denoting that the endpoint response is possibly incomplete.
      required:
        - isPartial
      x-property-sort:
        - isPartial
    PostVendorChartIQTimeSeriesEodListRequest:
      x-property-sort:
        - data
        - meta
      description: Request Body
      required:
        - data
      type: object
      properties:
        data:
          type: object
          x-property-sort:
            - identifier
            - type
            - quality
            - range
            - newestFirst
            - adjustments
          description: The data member contains the request's primary data.
          properties:
            identifier:
              type: object
              x-property-sort:
                - value
                - type
              description: Identifier and type.
              properties:
                value:
                  type: string
                  pattern: >-
                    ^[B-DF-HJ-NP-TV-Z0-9]{6}-[LR]$|^[A-Z0-9.#&*+]{1,47}-[A-Z0-9]{2,4}$|^[0-9]{3,20}$
                  maxLength: 50
                  exclusiveMaximum: false
                  minLength: 3
                  exclusiveMinimum: false
                  description: Identifier to resolve.
                type:
                  type: string
                  description: Type of the identifier.
                  x-enum-description:
                    - MDG identifier of a listing.
                    - FactSet market symbol of a listing.
                    - >-
                      Regional FactSet ticker symbol, identifying the primary
                      listing in the region.
                    - FactSet Permanent Identifier on listing level.
                    - >-
                      Regional FactSet Permanent Identifier, identifying the
                      primary listing in the region.
                  enum:
                    - idNotation
                    - tickerExchange
                    - tickerRegion
                    - fdsPermanentIdentifierListing
                    - fdsPermanentIdentifierRegional
              required:
                - value
                - type
            type:
              type: string
              description: Type of the price as configured for the customer.
              default: trade
              x-enum-description:
                - Trade price (ordinary, auction, pre or post-trading).
                - Bid price.
                - Ask price.
                - Yield price.
                - Estimated price.
              enum:
                - trade
                - bid
                - ask
                - yield
                - estimate
            quality:
              type: string
              description: Quality of the price.
              default: DLY
              x-enum-description:
                - >-
                  Delayed: intraday prices with an exchange-imposed delay of
                  usually 15 to 30 minutes.
                - >-
                  End-of-day: prices updated once per day after the close of
                  trading, possibly with an exchange-imposed delay of several
                  hours or days.
                - >-
                  Best: choose the price quality with the least delay, as
                  entitled for the client.
              enum:
                - DLY
                - EOD
                - BST
            range:
              type: object
              format: dateRange
              x-isClosedInterval: false
              properties:
                start:
                  type: string
                  format: date
                  description: The starting point of the date range (inclusive).
                end:
                  type: string
                  format: date
                  description: The ending point of the date range (exclusive).
              x-property-sort:
                - start
                - end
              required:
                - start
                - end
              description: >-
                Date range for the time series. A valid date range is between
                1900-01-01 and the day after the current day.
            newestFirst:
              type: boolean
              default: false
              description: Deliver the chronological last part of the requested data first.
            adjustments:
              type: object
              x-property-sort:
                - payout
                - split
              description: Adjustments values returned.
              properties:
                payout:
                  type: boolean
                  default: false
                  description: >-
                    Adjustments are applied for corporate action effects due to
                    dividends, payouts, or other cash disbursements.
                split:
                  type: boolean
                  default: true
                  description: >-
                    Adjustments are applied for corporate action effects due to
                    the notation having a split, a reverse split, or a similar
                    factor-based corporate action.
          required:
            - identifier
            - range
        meta:
          type: object
          description: The meta member contains the meta information of the request.
          properties:
            attributes:
              $ref: '#/components/schemas/AttributesMember'
            pagination:
              type: object
              description: Pagination attributes for the cursor-based pagination strategy.
              properties:
                cursor:
                  type: string
                  maxLength: 50
                  exclusiveMaximum: false
                  description: >-
                    Starting point as returned in the attributes
                    `pagination.next` or `pagination.previous` by a prior
                    invocation of this endpoint, or undefined (default).
                limit:
                  type: number
                  format: int32
                  minimum: 0
                  exclusiveMinimum: false
                  maximum: 5000
                  exclusiveMaximum: false
                  default: 20
                  description: Non-negative maximum number of entries to return.
              x-property-sort:
                - cursor
                - limit
          x-property-sort:
            - attributes
            - pagination
    PostVendorChartIQTimeSeriesEodSubsampleGetRequest:
      x-property-sort:
        - data
        - meta
      description: Request Body
      required:
        - data
      type: object
      properties:
        data:
          type: object
          x-property-sort:
            - identifier
            - type
            - quality
            - interval
            - adjustments
          description: The data member contains the request's primary data.
          properties:
            identifier:
              type: object
              x-property-sort:
                - value
                - type
              description: Identifier and type.
              properties:
                value:
                  type: string
                  pattern: >-
                    ^[B-DF-HJ-NP-TV-Z0-9]{6}-[LR]$|^[A-Z0-9.#&*+]{1,47}-[A-Z0-9]{2,4}$|^[0-9]{3,20}$
                  maxLength: 50
                  exclusiveMaximum: false
                  minLength: 3
                  exclusiveMinimum: false
                  description: Identifier to resolve.
                type:
                  type: string
                  description: Type of the identifier.
                  x-enum-description:
                    - MDG identifier of a listing.
                    - FactSet market symbol of a listing.
                    - >-
                      Regional FactSet ticker symbol, identifying the primary
                      listing in the region.
                    - FactSet Permanent Identifier on listing level.
                    - >-
                      Regional FactSet Permanent Identifier, identifying the
                      primary listing in the region.
                  enum:
                    - idNotation
                    - tickerExchange
                    - tickerRegion
                    - fdsPermanentIdentifierListing
                    - fdsPermanentIdentifierRegional
              required:
                - value
                - type
            type:
              type: string
              description: Type of the price as configured for the customer.
              default: trade
              x-enum-description:
                - Trade price (ordinary, auction, pre or post-trading).
                - Bid price.
                - Ask price.
                - Yield price.
                - Estimated price.
              enum:
                - trade
                - bid
                - ask
                - yield
                - estimate
            quality:
              type: string
              description: Quality of the price.
              default: DLY
              x-enum-description:
                - >-
                  Delayed: intraday prices with an exchange-imposed delay of
                  usually 15 to 30 minutes.
                - >-
                  End-of-day: prices updated once per day after the close of
                  trading, possibly with an exchange-imposed delay of several
                  hours or days.
                - >-
                  Best: choose the price quality with the least delay, as
                  entitled for the client.
              enum:
                - DLY
                - EOD
                - BST
            interval:
              type: object
              format: dateRange
              x-isClosedInterval: false
              properties:
                start:
                  type: string
                  format: date
                  description: 'The starting point of the interval (inclusive). '
                end:
                  type: string
                  format: date
                  description: The ending point of the interval (exclusive).
              x-property-sort:
                - start
                - end
              required:
                - start
                - end
              descripti

# --- truncated at 32 KB (146 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/factset/refs/heads/main/openapi/real-time-time-series-openapi-original.yml