---
title: "InputQueryOptions"
url: "https://developer-beta.morningstar.com/apis/managed-investments-screener-api/versions/078c2975-5abc-4eaa-be35-30f0c85f0e84/schemas/InputQueryOptions"
---

> Full API specification: https://developer-beta.morningstar.com/apis/managed-investments-screener-api/versions/078c2975-5abc-4eaa-be35-30f0c85f0e84.md

# InputQueryOptions

Filters investments using `dataPoint: filter` conditions or compound logic. Keys are data point names; values are filters. For example: * Equals: `{ "basicReference.baseCurrency": "USD" }` * In: `{ "basicReference.baseCurrency": ["USD", "GBP"] }` * Range: `{ "basicReference.inceptionDate": { "gt": "2020-01-01", "lt": "2024-01-01" } }` * Contains: `{ "basicReference.name": { "contains": "app" } }` * Fuzzy: `{ "basicReference.name": "Aviva", "fuzzy": true }` * Compound: `{ "and": [ { "dataPoint1": "value1" }, { "dataPoint2": "value2" } ] }` * Nested compound: `{ "or": [ { "and": [ ... ] }, { "dataPoint": "value" } ] }` Check the operators supported by each data point via the data points endpoint.

## OpenAPI definition

```yaml
openapi: 3.1.0
info:
  title: Managed Investments API
  version: "1.0"
servers:
  - url: https://www.us-api.morningstar.com
    description: Americas
  - url: https://www.apac-api.morningstar.com
    description: APAC
  - url: https://www.emea-api.morningstar.com
    description: EMEA
components:
  schemas:
    InputQueryOptions:
      title: InputQueryOptions
      description: >-
        Filters investments using `dataPoint: filter` conditions or compound
        logic. Keys are data point names; values are filters. For example:

        * Equals: `{ "basicReference.baseCurrency": "USD" }`

        * In: `{ "basicReference.baseCurrency": ["USD", "GBP"] }`

        * Range: `{ "basicReference.inceptionDate": { "gt": "2020-01-01", "lt":
        "2024-01-01" } }`

        * Contains: `{ "basicReference.name": { "contains": "app" } }`

        * Fuzzy: `{ "basicReference.name": "Aviva", "fuzzy": true }`

        * Compound: `{ "and": [ { "dataPoint1": "value1" }, { "dataPoint2":
        "value2" } ] }`

        * Nested compound: `{ "or": [ { "and": [ ... ] }, { "dataPoint": "value"
        } ] }`


        Check the operators supported by each data point via the data points
        endpoint.
      type: object
      properties:
        and:
          description: All conditions must match (logical AND). Elements may contain
            nested `and`, `or`, or `not` logic.
          type: array
          items:
            $ref: "#/components/schemas/InputQueryOptions"
        or:
          description: At least one condition must match (logical OR). Elements may
            contain nested `and`, `or`, or `not` logic.
          type: array
          items:
            $ref: "#/components/schemas/InputQueryOptions"
        not:
          description: No condition may match (logical NOT). Elements may contain nested
            `and`, `or`, or `not` logic.
          type: array
          items:
            $ref: "#/components/schemas/InputQueryOptions"
        fuzzy:
          description: When true, applies fuzzy text matching to the string equals
            conditions in this object. Supported only by data points where
            `fuzzy` is true.
          type:
            - boolean
            - "null"
          default: false
      propertyNames:
        description: Data point name in the format `<dataGroup>.<fieldName>`. Retrieve
          valid values programmatically via `GET
          /direct-web-services/v1/screeners/managed-investments/data-points`, or
          browse the full reference in the data dictionary.
        type: string
        example: basicReference.legalName
        externalDocs:
          description: Data dictionary (Excel)
          url: https://developer.morningstar.com/content/hidden-from-navigation/ScreenerManagedInvestmentsDataDictionary.xlsx
      additionalProperties:
        $ref: "#/components/schemas/InputFilterOptions"
    InputFilterOptions:
      title: InputFilterOptions
      description: Filter applied to a data point. The data type of the value must
        match the data type of the data point.
      oneOf:
        - $ref: "#/components/schemas/InputFieldValueFilter"
        - $ref: "#/components/schemas/InputFieldRangeFilter"
        - $ref: "#/components/schemas/InputFieldContainsFilter"
    InputFieldValueFilter:
      title: InputFieldValueFilter
      description: Exact match (`eq`) to a single value, or match to any value in a
        list (`in`).
      anyOf:
        - $ref: "#/components/schemas/InputFilterValue"
        - type: array
          minItems: 1
          items:
            $ref: "#/components/schemas/InputFilterValue"
    InputFieldRangeFilter:
      title: InputFieldRangeFilter
      description: Filters for values within a range or based on a comparison.
        Supports number, integer, and date data types.
      type: object
      minProperties: 1
      additionalProperties: false
      properties:
        gt:
          description: Greater than.
          anyOf:
            - type: number
            - type: integer
            - type: string
              format: date
        gte:
          description: Greater than or equal to.
          anyOf:
            - type: number
            - type: integer
            - type: string
              format: date
        lt:
          description: Less than.
          anyOf:
            - type: number
            - type: integer
            - type: string
              format: date
        lte:
          description: Less than or equal to.
          anyOf:
            - type: number
            - type: integer
            - type: string
              format: date
    InputFieldContainsFilter:
      title: InputFieldContainsFilter
      description: Matches string values that contain the specified text.
      type: object
      required:
        - contains
      additionalProperties: false
      properties:
        contains:
          description: Text to search for.
          type: string
          example: apple
    InputFilterValue:
      title: InputFilterValue
      description: A single filter value. Supports string, number, integer, boolean,
        and date (`YYYY-MM-DD` string) data types. For code-mapped data points,
        filter on the code.
      anyOf:
        - type: string
        - type: number
        - type: integer
        - type: boolean
```
