FactSet Funds API for Digital Portals

Search for mutual funds and ETFs using one single consolidated API, including a criteria-based screener.

OpenAPI Specification

factset-funds-api-for-digital-portals-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Funds API For Digital Portals
  description: >-
    Search for mutual funds and ETFs using one single consolidated API,
    including a criteria-based screener. The API provides also base data, key
    figures, and holdings.


    A separate endpoint returns the possible values and value range for the
    parameters that the endpoint /fund/notation/screener/search accepts:

    Application developers can request the values and value range only for a
    restricted set of notations that match predefined parameters.

    This functionality may be used to pre-fill the values and value ranges of
    the parameters of the /fund/notation/screener/search endpoint

    so that performing a search always leads to a non-empty set of notations.


    This API is fully integrated with the corresponding Quotes API, allowing
    access to detailed price and performance information of instruments, as well
    as basic security identifier cross-reference. For direct access to price
    histories, please refer to the Time Series API for Digital Portals.


    Similar criteria based screener APIs exist for equity instruments and
    securitized derivatives: See the Stocks API and the Securitized Derivatives
    API for details.
  version: '2'
servers:
  - url: https://api.factset.com/wealth/v1
paths:
  /fund/holding/listByInstrument:
    get:
      tags:
        - fund
      operationId: get/fund/holding/listByInstrument
      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: 2
      x-supportsPermissionDeniedResponse: false
      description: >-
        Holdings of a fund. Only the top 10 holdings with regard to their
        weighting in the fund portfolio are returned. Therefore, the weights of
        the holdings do not add up to 1 (i.e. 100%).
      summary: Holdings of a fund.
      parameters:
        - name: id
          in: query
          schema:
            type: string
            format: id64
            x-positive: true
            description: Identifier of an instrument of a fund share class.
          required: true
        - name: _attributes
          in: query
          schema:
            type: array
            items:
              type: string
              maxLength: 100
              exclusiveMaximum: false
            uniqueItems: true
            maxItems: 50
          style: form
          explode: false
          description: Limit the attributes returned in the response to the specified set.
        - description: >-
            Sortable attributes. The sort order is ascending unless it is
            prefixed with a minus sign, in which case it is descending. A list
            of at most 2 (possibly prefixed) attribute name(s) is allowed.
          schema:
            type: array
            items:
              type: string
              enum:
                - holdings.name
                - '-holdings.name'
                - holdings.weight
                - '-holdings.weight'
            maxItems: 2
            uniqueItems: true
            default:
              - '-holdings.weight'
          style: form
          explode: false
          name: _sort
          in: query
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    description: Holdings of a fund.
                    type: object
                    x-property-sort:
                      - date
                      - holdings
                    properties:
                      date:
                        type: string
                        format: date
                        description: Date of assessment of the holdings.
                      holdings:
                        type: array
                        items:
                          type: object
                          x-property-sort:
                            - instrument
                            - name
                            - weight
                          properties:
                            instrument:
                              type: object
                              x-property-sort:
                                - id
                              description: Instrument data of a holding.
                              properties:
                                id:
                                  type: string
                                  format: id64
                                  x-positive: true
                                  description: Identifier of the instrument.
                            name:
                              x-sortable: true
                              type: string
                              description: >-
                                Name of the holding, as provided by the
                                supplier.
                            weight:
                              x-sortable: true
                              x-default-sort-attribute: true
                              x-default-sort-direction: 2
                              type: number
                              format: relativeValue
                              description: Weight of the holding.
                        description: List of holdings.
                  meta:
                    type: object
                    description: >-
                      The meta member contains the meta information of the
                      response.
                    properties:
                      status:
                        $ref: '#/components/schemas/StatusObject'
                    x-property-sort:
                      - status
  /fund/issuer/search:
    post:
      tags:
        - fund
      operationId: post/fund/issuer/search
      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: Search for issuers of funds.
      description: >-
        Search for issuers of funds. FactSet does not consolidate the data
        provided by different suppliers, therefore the result may contain more
        than one identifier for a given issuer. The response is limited to 100
        results.
      requestBody:
        description: Request Body
        content:
          application/json:
            schema:
              type: object
              properties:
                data:
                  type: object
                  x-property-sort:
                    - issuer
                    - fund
                    - shareClass
                    - market
                  description: The data member contains the request's primary data.
                  properties:
                    issuer:
                      type: object
                      x-property-sort:
                        - name
                        - country
                      description: Issuer name.
                      properties:
                        name:
                          type: string
                          minLength: 3
                          exclusiveMinimum: false
                          maxLength: 100
                          exclusiveMaximum: false
                          pattern: ^[-!#-&(-+--/0-:=?-Za-zw"]*$
                          description: Text string to be searched for.
                        country:
                          type: object
                          x-property-sort:
                            - restrict
                            - exclude
                          x-atMostOne: true
                          description: >-
                            Country of registration of the issuer. See endpoint
                            `/basic/region/country/list` for valid values.
                          properties:
                            restrict:
                              description: >-
                                Restriction list. Only funds issued by an issuer
                                whose country of registration is in the provided
                                list are returned. 
                              type: object
                              x-property-sort:
                                - ids
                              properties:
                                ids:
                                  type: array
                                  items:
                                    type: number
                                    format: id32
                                    x-positive: true
                                  uniqueItems: true
                                  maxItems: 50
                                  description: Set of country identifiers.
                            exclude:
                              description: >-
                                Exclusion list. Funds issued by an issuer whose
                                country of registration is in the provided list
                                are not returned.
                              type: object
                              x-property-sort:
                                - ids
                              properties:
                                ids:
                                  type: array
                                  items:
                                    type: number
                                    format: id32
                                    x-positive: true
                                  uniqueItems: true
                                  maxItems: 50
                                  description: Set of country identifiers.
                    fund:
                      type: object
                      x-property-sort:
                        - etf
                        - domicile
                      description: Parameters related to funds.
                      properties:
                        etf:
                          type: string
                          default: include
                          description: >-
                            Defines whether or not ETF issuers are included in
                            the result.
                          x-enum-description:
                            - Only ETF issuers are included in the result.
                            - >-
                              Issuers of ETFs and mutual funds share classes are
                              included in the result.
                            - ETF issuers are excluded from the result.
                          enum:
                            - only
                            - include
                            - exclude
                        domicile:
                          type: object
                          x-property-sort:
                            - restrict
                            - exclude
                          x-atMostOne: true
                          description: >-
                            Domicile of the fund. See endpoint
                            `/basic/region/country/list` for valid values.
                          properties:
                            restrict:
                              description: >-
                                Restriction list. Only issuers of funds with a
                                domicile in the provided list are returned. 
                              type: object
                              x-property-sort:
                                - ids
                              properties:
                                ids:
                                  type: array
                                  items:
                                    type: number
                                    format: id32
                                    x-positive: true
                                  uniqueItems: true
                                  maxItems: 50
                                  description: Set of country identifiers.
                            exclude:
                              description: >-
                                Exclusion list. Issuers of funds with a domicile
                                in the provided list are not returned.
                              type: object
                              x-property-sort:
                                - ids
                              properties:
                                ids:
                                  type: array
                                  items:
                                    type: number
                                    format: id32
                                    x-positive: true
                                  uniqueItems: true
                                  maxItems: 50
                                  description: Set of country identifiers.
                    shareClass:
                      type: object
                      x-property-sort:
                        - registrationCountry
                      description: Parameters related to share classes.
                      properties:
                        registrationCountry:
                          type: object
                          x-property-sort:
                            - restrict
                            - exclude
                          x-atMostOne: true
                          description: >-
                            Country of trading registration of the share
                            classes.
                          properties:
                            restrict:
                              description: >-
                                Restriction list. Only issuers of funds with
                                share classes registered for trading in a
                                country in the provided list are returned. 
                              type: object
                              x-property-sort:
                                - ids
                              properties:
                                ids:
                                  type: array
                                  items:
                                    type: number
                                    format: id32
                                    x-positive: true
                                  uniqueItems: true
                                  maxItems: 50
                                  description: Set of country identifiers.
                            exclude:
                              description: >-
                                Exclusion list. Issuers of funds with share
                                classes registered for trading in a country in
                                the provided list are not returned.
                              type: object
                              x-property-sort:
                                - ids
                              properties:
                                ids:
                                  type: array
                                  items:
                                    type: number
                                    format: id32
                                    x-positive: true
                                  uniqueItems: true
                                  maxItems: 50
                                  description: Set of country identifiers.
                    market:
                      type: object
                      x-property-sort:
                        - restrict
                        - exclude
                      x-atMostOne: true
                      description: >-
                        List of markets of notations with a net asset value
                        (NAV). Only issuers of fund share classes with a NAV
                        from a market in the provided list are returned.
                      properties:
                        restrict:
                          description: >-
                            Specifies the markets from which a notation may
                            originate.
                          type: object
                          x-property-sort:
                            - ids
                          properties:
                            ids:
                              type: array
                              items:
                                type: number
                                format: id32
                                x-positive: true
                                x-enum-description:
                                  - Mountain-View Funds
                                  - FactSet Fund Prices
                                  - WM Datenservice
                                enum:
                                  - 1126
                                  - 1127
                                  - 1050
                              uniqueItems: true
                              maxItems: 2
                              description: Set of market identifiers.
                        exclude:
                          description: >-
                            Specifies the markets from which a notation may not
                            originate.
                          type: object
                          x-property-sort:
                            - ids
                          properties:
                            ids:
                              type: array
                              items:
                                type: number
                                format: id32
                                x-positive: true
                                x-enum-description:
                                  - Mountain-View Funds
                                  - FactSet Fund Prices
                                  - WM Datenservice
                                enum:
                                  - 1126
                                  - 1127
                                  - 1050
                              uniqueItems: true
                              maxItems: 2
                              description: Set of market identifiers.
                meta:
                  type: object
                  description: >-
                    The meta member contains the meta information of the
                    request.
                  properties:
                    attributes:
                      $ref: '#/components/schemas/AttributesMember'
                  x-property-sort:
                    - attributes
        required: false
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    description: >-
                      List of issuers, sorted descending by the number of funds
                      issued.
                    type: array
                    items:
                      type: object
                      x-property-sort:
                        - id
                        - name
                        - count
                      properties:
                        id:
                          type: number
                          format: id32
                          x-positive: true
                          description: Identifier of an issuer.
                        name:
                          type: string
                          description: Name of the issuer.
                        count:
                          type: number
                          format: int32
                          description: Number of funds issued.
                  meta:
                    type: object
                    description: >-
                      The meta member contains the meta information of the
                      response.
                    properties:
                      status:
                        $ref: '#/components/schemas/StatusObject'
                    x-property-sort:
                      - status
      parameters: []
  /fund/notation/keyFigures/benchmark/month/1/get:
    get:
      tags:
        - fund
      operationId: get/fund/notation/keyFigures/benchmark/month/1/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: >-
        End-of-day (EOD) benchmark key figures of a fund for the time range of
        one month.
      description: >-
        End-of-day (EOD) benchmark key figures of a fund for the time range of
        one month.
      parameters:
        - name: id
          in: query
          schema:
            type: string
            format: id64
            x-positive: true
            description: Identifier of the notation.
          required: true
        - name: idNotationBenchmark
          in: query
          schema:
            type: array
            items:
              type: string
              format: id64
              x-positive: true
            uniqueItems: true
            minItems: 1
            maxItems: 100
            description: List of benchmark notations.
          style: form
          explode: false
          required: true
        - name: _attributes
          in: query
          schema:
            type: array
            items:
              type: string
              maxLength: 100
              exclusiveMaximum: false
            uniqueItems: true
            maxItems: 50
          style: form
          explode: false
          description: Limit the attributes returned in the response to the specified set.
        - name: _language
          in: query
          schema:
            type: string
            format: isoLanguage
            description: ISO 639-1 code of the language.
            maxLength: 2
            minLength: 2
            exclusiveMinimum: false
            exclusiveMaximum: false
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    description: >-
                      List of benchmarks with related key figures. The order of
                      the benchmark notations in the response is unrelated to
                      their order in the request array.
                    type: array
                    items:
                      type: object
                      x-property-sort:
                        - notation
                        - outperformance
                        - trackingError
                        - informationRatio
                        - status
                      properties:
                        notation:
                          type: object
                          x-property-sort:
                            - id
                            - instrument
                          description: Notation of the benchmark.
                          properties:
                            id:
                              type: string
                              format: id64
                              x-positive: true
                              description: Identifier of the notation.
                            instrument:
                              type: object
                              x-property-sort:
                                - id
                                - name
                              description: Instrument of the benchmark.
                              properties:
                                id:
                                  type: string
                                  format: id64
                                  x-positive: true
                                  description: Identifier of the instrument.
                                name:
                                  type: string
                                  format: localizedString
                                  description: Name of the instrument.
                        outperformance:
                          type: number
                          format: relativeValue
                          description: Outperformance of the notation.
                        trackingError:
                          type: number
                          format: relativeValue
                          description: Tracking error of the notation.
                        informationRatio:
                          type: number
                          format: relativeValue
                          description: Information ratio of the notation.
                        status:
                          type: object
                          x-property-sort:
                            - code
                            - identifier
                            - encryptedDetails
                          description: Error status for the requested identifier.
                          properties:
                            code:
                              type: string
                              description: Code of the error condition.
                              x-enum-description:
                                - No error.
                                - >-
                                  The provided identifier does not refer to a
                                  valid benchmark notation.
                              enum:
                                - none
                                - parameter
                            identifier:
                              type: string
                              format: id64
                              x-positive: true
                              description: Provided identifier.
                            encryptedDetails:
                              type: string
                              description: Base64-encoded internal details about the error.
                  meta:
                    type: object
                    description: >-
                      The meta member contains the meta information of the
                      response.
                    properties:
                      status:
                        $ref: '#/components/schemas/StatusObject'
                    x-property-sort:
                      - status
  /fund/notation/keyFigures/benchmark/week/1/get:
    get:
      tags:
        - fund
      operationId: get/fund/notation/keyFigures/benchmark/week/1/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: >-
        End-of-day (EOD) benchmark key figures of a fund for the time range of
        one week.
      description: >-
        End-of-day (EOD) benchmark key figures of a fund for the time range of
        one week.
      parameters:
        - name: id
          in: query
          schema:
            type: string
            format: id64
            x-positive: true
            description: Identifier of the notation.
          required: true
        - name: idNotationBenchmark
          in: query
          schema:
            type: array
            items:
              type: string
              format: id64
              x-positive: true
            uniqueItems: true
            minItems: 1
            maxItems: 100
            description: List of benchmark notations.
          style: form
          explode: false
          required: true
        - name: _attributes
          in: query
          schema:
            type: array
            items:
              type: string
              maxLength: 100
              exclusiveMaximum: false
            uniqueItems: true
            maxItems: 50
          style: form
          explode: false
          description: Limit the attributes returned in the response to the specified set.
        - name: _language
          in: query
          schema:
            type: string
            format: isoLanguage
            description: ISO 639-1 code of the language.
            maxLength: 2
            minLength: 2
            exclusiveMinimum: false
            exclusiveMaximum: false
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    description: >-
                      List of benchmarks with related key figures. The order of
                      the benchmark notations in the response is unrelated to
                      their order in the request array.
                    type: array
                    items:
                      type: object
                      x-property-sort:
                        - notation
                        - outperformance
                        - status
                      properties:
                        notation:
                          type: object
                          x-property-sort:
                            - id
                            - instrument
                          description: Notation of the benchmark.
                          properties:
                            id:
                              type: string
                              format: id64
                              x-positive: true
                              description: Identifier of the notation.
                            instrument:
                              type: object
                              x-property-sort:
                                - id
                                - name
                              description: Instrument of the benchmark.
                              properties:
                                id:
                                  type: string
                                  format: id64
                                  x-positive: true
                                  description: Identifier of the instrument.
                                name:
                                  type: string
                                  format: localizedString
                                  description: Name of the instrument.
                        outperformance:
                          type: number
                          format: relativeValue
                          description: Outperformance of the notation.
                        status:
                          type: object
                          x-property-sort:
                            - code
                            - identifier
                            - encryptedDetails
                          description: Error status for the requested identifier.
                          properties:
                            code:
                              type: string
                              description: Code of the error condition.
                              x-enum-description:
                                - No error.
                                - >-
                                  The provided identifier does not refer to a
                                  valid benchmark notation.
                              enum:
                                - none
                                - parameter
       

# --- truncated at 32 KB (532 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/factset/refs/heads/main/openapi/factset-funds-api-for-digital-portals-openapi.yml