OpenMetadata Search API

APIs related to search and suggest.

Operations 15

GET /v1/search/aggregate Get aggregated fields #
POST /v1/search/aggregate Get aggregated Search Request #
DELETE /v1/search/stats/orphan Clean orphan indexes #
GET /v1/search/export Export search results as CSV (streaming) #
GET /v1/search/entityTypeCounts Get exact entity type counts #
GET /v1/search/stats Get search cluster statistics #
POST /v1/search/preview Preview Search Results #
POST /v1/search/reindexEntities Only Reindex the selected entities in Elasticsearch. #
GET /v1/search/query Search entities #
GET /v1/search/fieldQuery Search entities #
GET /v1/search/sourceUrl Search entities #
GET /v1/search/get/{index}/doc/{id} Search entities in ES index with Id #
GET /v1/search/nlq/query Search entities using Natural Language Query (NLQ) #
PUT /v1/search/templates Sync all index templates #
PUT /v1/search/templates/{entityType} Sync index template for a specific entity type #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/openmetadata-search-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

openmetadata-search-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OpenMetadata APIs Agent Executions Search API
  description: Common types and API definition for OpenMetadata
  contact:
    name: OpenMetadata
    url: https://open-metadata.org
    email: openmetadata-dev@googlegroups.com
  license:
    name: Apache 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: '1.13'
servers:
- url: /api
  description: Current Host
- url: http://localhost:8585/api
  description: Endpoint URL
security:
- BearerAuth: []
tags:
- name: Search
  description: APIs related to search and suggest.
paths:
  /v1/search/aggregate:
    get:
      tags:
      - Search
      summary: Get aggregated fields
      description: Get aggregated fields from entities.
      operationId: getAggregateFields
      parameters:
      - name: index
        in: query
        schema:
          type: string
          default: table
      - name: field
        in: query
        description: Field in an entity.
        schema:
          type: string
      - name: value
        in: query
        description: value for searching in aggregation
        schema:
          type: string
          default: ''
      - name: sourceFields
        in: query
        description: List of fields to fetch from _source per bucket.
        schema:
          type: string
      - name: q
        in: query
        description: 'Search Query Text, Pass *text* for substring match; Pass without wildcards for exact match. <br/> 1. For listing all tables or topics pass q=* <br/>2. For search tables or topics pass q=*search_term* <br/>3. For searching field names such as search by columnNames pass q=columnNames:address, for searching deleted entities, use q=deleted:true <br/>4. For searching by tag names pass q=tags.tagFQN:user.email <br/>5. When user selects a filter pass q=query_text AND tags.tagFQN:user.email AND platform:MYSQL <br/>6. Search with multiple values of same filter q=tags.tagFQN:user.email AND tags.tagFQN:user.address <br/>NOTE: logic operators such as AND, OR and NOT must be in uppercase '
        required: true
        schema:
          type: string
      - name: size
        in: query
        description: Size field to limit the no.of results returned, defaults to 10
        schema:
          type: integer
          format: int32
          default: 10
      - name: deleted
        in: query
        schema:
          type: boolean
          default: false
      - name: queryText
        in: query
        description: Free-text search query to scope aggregation results
        schema:
          type: string
      responses:
        '200':
          description: Table Aggregate API
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Suggest'
    post:
      tags:
      - Search
      summary: Get aggregated Search Request
      description: Get aggregated fields from entities.
      operationId: aggregateSearchRequest
      requestBody:
        content:
          '*/*':
            schema:
              $ref: '#/components/schemas/AggregationRequest'
      responses:
        '200':
          description: Table Aggregate API
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/stats/orphan:
    delete:
      tags:
      - Search
      summary: Clean orphan indexes
      description: Delete all orphan indexes (indexes with zero aliases) from the search cluster.
      operationId: cleanOrphanIndexes
      responses:
        '200':
          description: Cleanup result
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OrphanCleanupResponse'
        '409':
          description: Conflict - Search indexing is currently running
  /v1/search/export:
    get:
      tags:
      - Search
      summary: Export search results as CSV (streaming)
      description: Exports the current search results as a streaming CSV download. The response is streamed directly to the client without buffering the entire result set in memory.
      operationId: exportSearchResults
      parameters:
      - name: q
        in: query
        description: Search Query Text
        schema:
          type: string
          default: '*'
      - name: index
        in: query
        description: ElasticSearch Index name, defaults to table
        schema:
          type: string
          default: table
      - name: deleted
        in: query
        description: Filter documents by deleted param. By default deleted is false
        schema:
          type: boolean
      - name: query_filter
        in: query
        description: Elasticsearch query that will be combined with the query_string query generator from the `query` argument
        schema:
          type: string
      - name: post_filter
        in: query
        description: Elasticsearch query that will be used as a post_filter
        schema:
          type: string
      - name: sort_field
        in: query
        description: Sort the search results by field
        schema:
          type: string
          default: _score
      - name: sort_order
        in: query
        description: Sort order asc for ascending or desc for descending, defaults to desc
        schema:
          type: string
          default: desc
      - name: size
        in: query
        description: Maximum number of rows to export. When null, exports all matching results up to the hard cap.
        schema:
          type: integer
          format: int32
      - name: from
        in: query
        description: Starting offset for export. Use with size to export a specific page of results (e.g., from=30&size=15 for page 3).
        schema:
          type: integer
          format: int32
          default: 0
      responses:
        '200':
          description: CSV file stream
          content:
            text/csv; charset=utf-8: {}
  /v1/search/entityTypeCounts:
    get:
      tags:
      - Search
      summary: Get exact entity type counts
      description: Get exact counts of entities by type for a given search query. This endpoint provides accurate counts when searching across all entity types.
      operationId: getEntityTypeCounts
      parameters:
      - name: q
        in: query
        description: Search query text
        required: true
        schema:
          type: string
      - name: index
        in: query
        description: Index to search in (all, dataAsset, table, etc.)
        schema:
          type: string
          default: dataAsset
      - name: deleted
        in: query
        description: Filter documents by deleted param. By default deleted is false
        schema:
          type: boolean
      - name: query_filter
        in: query
        description: Elasticsearch query that will be combined with the query_string query generator from the `query` argument
        schema:
          type: string
      - name: post_filter
        in: query
        description: Elasticsearch query that will be used as a post_filter
        schema:
          type: string
      responses:
        '200':
          description: Entity type counts response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/stats:
    get:
      tags:
      - Search
      summary: Get search cluster statistics
      description: Get statistics about the search cluster including indexes, shards, and orphan indexes.
      operationId: getSearchStats
      responses:
        '200':
          description: Search statistics
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchStatsResponse'
  /v1/search/preview:
    post:
      tags:
      - Search
      summary: Preview Search Results
      description: Preview search results based on provided SearchSettings without saving changes.
      operationId: previewSearch
      requestBody:
        description: Preview request containing search settings
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PreviewSearchRequest'
        required: true
      responses:
        '200':
          description: Search preview response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/reindexEntities:
    post:
      tags:
      - Search
      summary: Only Reindex the selected entities in Elasticsearch.
      description: 'Only Reindex the selected entities in Elasticsearch. Maximum 500 entities per request. Job timeout: 30 minutes.'
      operationId: reindexOnlySelectedEntities.
      parameters:
      - name: timeoutMinutes
        in: query
        description: 'Job timeout in minutes (default: 30, max: 60)'
        schema:
          type: integer
          format: int32
          default: 5
      requestBody:
        content:
          '*/*':
            schema:
              type: array
              items:
                $ref: '#/components/schemas/EntityReference'
      responses:
        '200':
          description: Reindex process started.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
        '400':
          description: Bad request - too many entities or invalid input.
  /v1/search/query:
    get:
      tags:
      - Search
      summary: Search entities
      description: Search entities using query text. Use query params `from` and `size` for pagination. Use `sort_field` to sort the results in `sort_order`.
      operationId: searchEntitiesWithQuery
      parameters:
      - name: q
        in: query
        description: 'Search Query Text, Pass *text* for substring match; Pass without wildcards for exact match. <br/> 1. For listing all tables or topics pass q=* <br/>2. For search tables or topics pass q=*search_term* <br/>3. For searching field names such as search by columnNames pass q=columnNames:address , for searching deleted entities, use q=deleted:true <br/> 4. For searching by tag names pass q=tags.tagFQN:user.email <br/>5. When user selects a filter pass q=query_text AND q=tags.tagFQN:user.email AND platform:MYSQL <br/>6. Search with multiple values of same filter q=tags.tagFQN:user.email AND tags.tagFQN:user.address <br/> 7. Search by service version and type q=service.type:databaseService AND version:0.1 <br/> 8. Search Tables with Specific Constraints q=tableConstraints.constraintType.keyword:PRIMARY_KEY AND NOT tier.tagFQN:Tier.Tier1 <br/> 9. Search with owners q=owner.displayName.keyword:owner_name <br/> NOTE: logic operators such as AND, OR and NOT must be in uppercase '
        required: true
        schema:
          type: string
          default: '*'
      - name: index
        in: query
        description: ElasticSearch Index name, defaults to table_search_index
        schema:
          type: string
          default: table
      - name: deleted
        in: query
        description: Filter documents by deleted param. By default deleted is false
        schema:
          type: boolean
      - name: from
        in: query
        description: From field to paginate the results, defaults to 0
        schema:
          type: integer
          format: int32
          default: 0
      - name: size
        in: query
        description: Size field to limit the no.of results returned, defaults to 10
        schema:
          type: integer
          format: int32
          default: 10
      - name: search_after
        in: query
        description: 'Pagination cursor. Repeat once per sort value: ?search_after=v1&search_after=v2. Each value carried as its own parameter so values containing '','' (e.g. a glossary term FQN) are safe.'
        schema:
          type: array
          items:
            type: string
      - name: sort_field
        in: query
        description: Sort the search results by field, available fields to sort weekly_stats , daily_stats, monthly_stats, last_updated_timestamp
        schema:
          type: string
          default: _score
      - name: sort_order
        in: query
        description: Sort order asc for ascending or desc for descending, defaults to desc
        schema:
          type: string
          default: desc
      - name: track_total_hits
        in: query
        description: Track Total Hits
        schema:
          type: boolean
          default: false
      - name: query_filter
        in: query
        description: Elasticsearch query that will be combined with the query_string query generator from the `query` argument
        schema:
          type: string
      - name: post_filter
        in: query
        description: Elasticsearch query that will be used as a post_filter
        schema:
          type: string
      - name: fetch_source
        in: query
        description: Get document body for each hit
        schema:
          type: boolean
          default: true
      - name: include_source_fields
        in: query
        description: Get only selected fields of the document body for each hit. Empty value will return all fields
        schema:
          type: array
          items:
            type: string
      - name: exclude_source_fields
        in: query
        description: Exclude specified fields from the document body for each hit. Use this to exclude heavy fields like 'columns' for better performance
        schema:
          type: array
          items:
            type: string
      - name: getHierarchy
        in: query
        description: Fetch search results in hierarchical order of children elements. By default hierarchy is not fetched. Currently only supported for glossary_term_search_index.
        schema:
          type: boolean
          default: false
      - name: explain
        in: query
        description: Explain the results of the query. Defaults to false. Only for debugging purposes.
        schema:
          type: boolean
          default: false
      - name: include_aggregations
        in: query
        description: Include aggregations in the search response. Defaults to true. Set to false to skip aggregations for faster response times when only search results are needed.
        schema:
          type: boolean
          default: true
      responses:
        '200':
          description: search response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/fieldQuery:
    get:
      tags:
      - Search
      summary: Search entities
      operationId: searchEntitiesWithSpecificFieldAndValue
      parameters:
      - name: fieldName
        in: query
        description: field name
        schema:
          type: string
      - name: fieldValue
        in: query
        description: field value
        schema:
          type: string
      - name: index
        in: query
        description: Search Index name, defaults to table_search_index
        schema:
          type: string
          default: table
      - name: deleted
        in: query
        description: Filter documents by deleted param. By default deleted is false
        schema:
          type: boolean
          default: false
      - name: from
        in: query
        description: From field to paginate the results, defaults to 0
        schema:
          type: integer
          format: int32
          default: 0
      - name: size
        in: query
        description: Size field to limit the no.of results returned, defaults to 10
        schema:
          type: integer
          format: int32
          default: 10
      responses:
        '200':
          description: search response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/sourceUrl:
    get:
      tags:
      - Search
      summary: Search entities
      operationId: searchEntitiesWithSourceUrl
      parameters:
      - name: sourceUrl
        in: query
        description: source url
        schema:
          type: string
      responses:
        '200':
          description: search response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/get/{index}/doc/{id}:
    get:
      tags:
      - Search
      summary: Search entities in ES index with Id
      operationId: searchEntityInEsIndexWithId
      parameters:
      - name: id
        in: path
        description: document Id
        required: true
        schema:
          type: string
          format: uuid
      - name: index
        in: path
        description: Index Name
        required: true
        schema:
          type: string
      responses:
        '200':
          description: search response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/nlq/query:
    get:
      tags:
      - Search
      summary: Search entities using Natural Language Query (NLQ)
      description: Search entities using Natural Language Queries (NLQ) with full search capabilities.
      operationId: searchEntitiesWithNLQ
      parameters:
      - name: q
        in: query
        description: NLQ query string in natural language
        schema:
          type: string
      - name: index
        in: query
        description: ElasticSearch Index name, defaults to table_search_index
        schema:
          type: string
          default: table
      - name: deleted
        in: query
        description: Filter documents by deleted param. By default deleted is false
        schema:
          type: boolean
          default: false
      - name: from
        in: query
        description: From field to paginate the results, defaults to 0
        schema:
          type: integer
          format: int32
          default: 0
      - name: size
        in: query
        description: Size field to limit the no.of results returned, defaults to 10
        schema:
          type: integer
          format: int32
          default: 10
      - name: search_after
        in: query
        description: 'Pagination cursor. Repeat once per sort value: ?search_after=v1&search_after=v2.'
        schema:
          type: array
          items:
            type: string
      - name: sort_field
        in: query
        description: Sort the search results by field
        schema:
          type: string
          default: _score
      - name: sort_order
        in: query
        description: Sort order asc for ascending or desc for descending, defaults to desc
        schema:
          type: string
          default: desc
      - name: track_total_hits
        in: query
        description: Track Total Hits
        schema:
          type: boolean
          default: false
      - name: query_filter
        in: query
        description: Additional filters to apply
        schema:
          type: string
      - name: post_filter
        in: query
        description: Post-filters to apply
        schema:
          type: string
      - name: fetch_source
        in: query
        description: Get document body for each hit
        schema:
          type: boolean
          default: true
      - name: include_source_fields
        in: query
        description: Get only selected fields of the document body
        schema:
          type: array
          items:
            type: string
      - name: exclude_source_fields
        in: query
        description: Exclude specified fields from the document body for each hit
        schema:
          type: array
          items:
            type: string
      - name: getHierarchy
        in: query
        description: Fetch results in hierarchical order
        schema:
          type: boolean
          default: false
      - name: explain
        in: query
        description: Explain the results of the query
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: NLQ search response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
  /v1/search/templates:
    put:
      tags:
      - Search
      summary: Sync all index templates
      description: Create or update index templates for all entity types from indexMapping.json. Templates ensure proper mappings when ES/OS auto-creates indices.
      operationId: syncAllIndexTemplates
      responses:
        '200':
          description: Sync result
        '403':
          description: Admin only
  /v1/search/templates/{entityType}:
    put:
      tags:
      - Search
      summary: Sync index template for a specific entity type
      description: Create or update index template for a specific entity type from indexMapping.json.
      operationId: syncIndexTemplateByEntityType
      parameters:
      - name: entityType
        in: path
        description: Entity type
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Template synced
        '400':
          description: Invalid entity type
        '403':
          description: Admin only
components:
  schemas:
    Field:
      required:
      - dataType
      - name
      type: object
      properties:
        name:
          maxLength: 128
          minLength: 1
          type: string
        displayName:
          type: string
        dataType:
          type: string
          enum:
          - RECORD
          - 'NULL'
          - BOOLEAN
          - INT
          - LONG
          - BYTES
          - FLOAT
          - DOUBLE
          - TIMESTAMP
          - TIMESTAMPZ
          - TIME
          - DATE
          - STRING
          - ARRAY
          - MAP
          - ENUM
          - UNION
          - FIXED
          - ERROR
          - UNKNOWN
        dataTypeDisplay:
          type: string
        description:
          type: string
        fullyQualifiedName:
          maxLength: 3072
          minLength: 1
          type: string
        tags:
          type: array
          items:
            $ref: '#/components/schemas/TagLabel'
        children:
          type: array
          items:
            $ref: '#/components/schemas/Field'
    Suggest:
      type: object
      properties:
        completion:
          type: boolean
        phrase:
          type: boolean
        term:
          type: boolean
    AdditionalSettings:
      type: object
    SearchStatsResponse_IndexStats:
      type: object
      properties:
        name:
          type: string
        documents:
          type: integer
          format: int32
        primaryShards:
          type: integer
          format: int32
        replicaShards:
          type: integer
          format: int32
        sizeInBytes:
          type: integer
          format: int32
        sizeFormatted:
          type: string
        health:
          type: string
        aliases:
          type: array
          items:
            type: string
    QueryExample:
      required:
      - esQuery
      - query
      type: object
      properties:
        description:
          type: string
        query:
          type: string
        esQuery:
          type: string
        entityTypes:
          type: array
          items:
            type: string
    AllowedFieldValueBoostFields:
      required:
      - entityType
      - fields
      type: object
      properties:
        entityType:
          type: string
        fields:
          type: array
          items:
            $ref: '#/components/schemas/Field__1'
    MappingConfiguration:
      type: object
      properties:
        includeMappings:
          type: boolean
        mappingSection:
          $ref: '#/components/schemas/TitleSection'
        fieldInterpretations:
          type: array
          items:
            $ref: '#/components/schemas/FieldInterpretation'
    AssetTypeConfiguration:
      required:
      - assetType
      type: object
      properties:
        assetType:
          type: string
        searchFields:
          type: array
          items:
            $ref: '#/components/schemas/FieldBoost'
        highlightFields:
          type: array
          items:
            type: string
        aggregations:
          type: array
          items:
            $ref: '#/components/schemas/Aggregation'
        termBoosts:
          type: array
          items:
            $ref: '#/components/schemas/TermBoost'
        fieldValueBoosts:
          type: array
          items:
            $ref: '#/components/schemas/FieldValueBoost'
        scoreMode:
          type: string
          enum:
          - multiply
          - sum
          - avg
          - first
          - max
          - min
        boostMode:
          type: string
          enum:
          - multiply
          - replace
          - sum
          - avg
          - max
          - min
        additionalSettings:
          $ref: '#/components/schemas/AdditionalSettings'
        matchTypeBoostMultipliers:
          $ref: '#/components/schemas/MatchTypeBoostMultipliers'
    PatternMatch:
      required:
      - name
      - score
      type: object
      properties:
        name:
          type: string
        regex:
          type: string
        score:
          type: number
          format: double
    SearchResponse:
      type: object
    TagLabelRecognizerMetadata:
      required:
      - recognizerId
      - recognizerName
      - score
      type: object
      properties:
        recognizerId:
          type: string
          format: uuid
        recognizerName:
          type: string
        score:
          type: number
          format: double
        target:
          type: string
          enum:
          - content
          - column_name
        patterns:
          type: array
          items:
            $ref: '#/components/schemas/PatternMatch'
    AggregationRequest:
      required:
      - fieldName
      type: object
      properties:
        query:
          type: string
        index:
          type: string
        fieldName:
          type: string
        fieldValue:
          type: string
        deleted:
          type: boolean
        size:
          type: integer
          format: int32
        sourceFields:
          type: array
          items:
            type: string
        queryText:
          type: string
        topHits:
          $ref: '#/components/schemas/TopHits'
    PromptSection:
      required:
      - content
      - section
      type: object
      properties:
        section:
          type: string
        content:
          type: string
        order:
          type: integer
          format: int32
    TopHits:
      type: object
      properties:
        size:
          type: integer
          format: int32
        sortField:
          type: string
        sortOrder:
          type: string
          enum:
          - asc
          - desc
    TitleSection:
      type: object
      properties:
        title:
          type: string
        description:
          type: string
        order:
          type: integer
          format: int32
    Field__1:
      required:
      - description
      - name
      type: object
      properties:
        name:
          type: string
        description:
          type: string
    Aggregation:
      required:
      - name
      - type
      type: object
      properties:
        name:
          type: string
        type:
          type: string
          enum:
          - terms
          - range
          - histogram
          - date_histogram
          - filters
          - missing
          - nested
          - reverse_nested
          - top_hits
          - max
          - min
          - avg
          - sum
          - stats
        field:
          type: string
        script:
          type: string
    EntitySpecificInstruction:
      required:
      - entityType
      - sections
      type: object
      properties:
        entityType:
          type: string
        sections:
          type: array
          items:
            $ref: '#/components/schemas/PromptSection'
    Style:
      type: object
      properties:
        color:
          type: string
        iconURL:
          type: string
        coverImage:
          $ref: '#/components/schemas/CoverImage'
    PreviewSearchRequest:
      required:
      - index
      - query
      - searchSettings
      type: object
      properties:
        query:
          type: string
        index:
          type: string
        searchSettings:
          $ref: '#/components/schemas/SearchSettings'
        from:
          type: integer
          format: int32
        size:
          type: integer
          format: int32
        sortField:
          type: string
        sortOrder:
          type: string
          enum:
          - asc
          - desc
        trackTotalHits:
          type: boolean
        queryFilter:
          type: string
        postFilter:
          type: string
        fetchSource:
          type: boolean
        includeSourceFields:
          type: array
          items:
            type: string
        explain:
          type: boolean
    GlobalSettings:
      type: object
      properties:
        enableAccessControl:
          type: boolean
        maxAggregateSize:
          type: integer
          format: int32
        maxResultHits:
          type: integer
          format: int32
        maxAnalyzedOffset:
          type: integer
          format: int32
        aggregations:
          type: array
          items:
            $ref: '#/components/schemas/Aggregation'
        highlightFields:
          type: array
          items:
            type: string
        termBoosts:
          type: array
          items:
            $ref: '#/components/schemas/TermBoost'
        fieldValueBoosts:
          type: array
          items:
            $ref: '#/components/schemas/FieldValueBoost'
        keywordWeight:
          type: number
          format: double
        semanticWeight:
          type: number
          format: double
    EntityReference:
      required:
      - id
      - type
      type: object
      properties:
        id:
          type: string
          format: uuid
        type:
          type: string
        name:
          type: string
        fullyQualifiedName:
          type: string
        description:
          type: string
        displayName:
          type: string
        deleted:
          type: boolean
        inherited:
          type: boolean
        href:
          type: string
          format: uri
    FieldInterpretation:
      required:
      - explanation
      - pattern
      type: object
      properties:
        pattern:
          type: string
        explanation:
          type: string
    AllowedSearchFields:
      required:
      - entityType
      - fields
      type: object
      properties:
        entityType:
          type: string
        fields:
          type: array
          items:
            $ref: '#/components/schemas/Field'
    MatchTypeBoostMultipliers:
      type: object
      properties:
        exactMatchMultiplier:
          type: number
          format: double
        phraseMatchMultiplier:
          type: number
          format: double
        fuzzyMatchMultiplier:
          type: number
          format: double
    SearchStatsResponse:
      type: object
      properties:
        clusterHealth:
          type: string
        totalIndexes:
          type: integer
          format: int32
        totalDocuments:
          type: integer
          format: int32
        totalSizeInBytes:
          type: integer
          format: int32
        totalSizeFormatted:
          type: string
        totalPrimaryShards:
          type: integer
          format: int32
        totalReplicaShards:
          type: integer
          format: int32
        indexes:
          type: array
          items:
            $ref: '#/components/schemas/SearchStatsResponse_IndexStats'
        orphanIndexes:
          type: array
          items:
            $ref: '#/components/schemas/SearchStatsResponse_OrphanIndex'
        isSearchIndexingRunning:
          type: boolean
        expectedIndexCount:
          type: integer
          format: int32
        missingIndexes:
          type: array
          items:
            type: string
    SearchSettings:
    

# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/openmetadata/refs/heads/main/openapi/openmetadata-search-api-openapi.yml