Couchbase · Schema

SearchQueryRequest

Full-text search query request

AnalyticsApp ServicesBackupCapellaCloudDatabaseDBaaSEventingFull-Text SearchGatewayJSONMobileNoSQLReplicationSQL++SyncVector SearchXDCR

Properties

Name Type Description
query object The search query object. Supports match, term, phrase, boolean, numeric_range, date_range, geo_distance, geo_bounding_box, conjunction, and disjunction query types.
size integer Maximum number of results to return
from integer Offset for paginating results
fields array Fields to include in the response
highlight object Highlight configuration for matched terms
facets object Facet definitions for aggregating results
sort array Sort order for results
explain boolean Whether to include scoring explanation
ctl object Query control parameters
View JSON Schema on GitHub

JSON Schema

couchbase-searchqueryrequest-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/SearchQueryRequest",
  "title": "SearchQueryRequest",
  "type": "object",
  "description": "Full-text search query request",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "object",
      "description": "The search query object. Supports match, term, phrase, boolean, numeric_range, date_range, geo_distance, geo_bounding_box, conjunction, and disjunction query types.",
      "properties": {
        "match": {
          "type": "string",
          "description": "Text to match against the index"
        },
        "field": {
          "type": "string",
          "description": "Specific field to search"
        },
        "analyzer": {
          "type": "string",
          "description": "Analyzer to use for the query"
        },
        "fuzziness": {
          "type": "integer",
          "description": "Fuzziness level for approximate matching",
          "minimum": 0,
          "maximum": 2
        },
        "prefix_length": {
          "type": "integer",
          "description": "Minimum prefix length for fuzzy matches"
        },
        "boost": {
          "type": "number",
          "description": "Boost factor for relevance scoring"
        }
      }
    },
    "size": {
      "type": "integer",
      "description": "Maximum number of results to return",
      "default": 10
    },
    "from": {
      "type": "integer",
      "description": "Offset for paginating results",
      "default": 0
    },
    "fields": {
      "type": "array",
      "description": "Fields to include in the response",
      "items": {
        "type": "string"
      }
    },
    "highlight": {
      "type": "object",
      "description": "Highlight configuration for matched terms",
      "properties": {
        "style": {
          "type": "string",
          "description": "Highlight style",
          "enum": [
            "html",
            "ansi"
          ]
        },
        "fields": {
          "type": "array",
          "description": "Fields to highlight",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "facets": {
      "type": "object",
      "description": "Facet definitions for aggregating results",
      "additionalProperties": {
        "type": "object",
        "properties": {
          "field": {
            "type": "string",
            "description": "Field to facet on"
          },
          "size": {
            "type": "integer",
            "description": "Maximum number of facet values"
          }
        }
      }
    },
    "sort": {
      "type": "array",
      "description": "Sort order for results",
      "items": {
        "oneOf": [
          {
            "type": "string"
          },
          {
            "type": "object"
          }
        ]
      }
    },
    "explain": {
      "type": "boolean",
      "description": "Whether to include scoring explanation"
    },
    "ctl": {
      "type": "object",
      "description": "Query control parameters",
      "properties": {
        "timeout": {
          "type": "integer",
          "description": "Query timeout in milliseconds"
        },
        "consistency": {
          "type": "object",
          "description": "Consistency requirements",
          "properties": {
            "level": {
              "type": "string",
              "description": "Consistency level",
              "enum": [
                "at_plus",
                "not_bounded"
              ]
            }
          }
        }
      }
    }
  }
}