Qdrant Service API

Qdrant service utilities.

Operations 6

GET / Returns information about the running Qdrant instance #
GET /telemetry Collect telemetry data #
GET /metrics Collect Prometheus metrics data #
GET /healthz Kubernetes healthz endpoint #
GET /livez Kubernetes livez endpoint #
GET /readyz Kubernetes readyz endpoint #

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/qdrant-service-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

qdrant-service-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Qdrant Aliases Service API
  description: "API description for Qdrant vector search engine.\n\nThis document describes CRUD and search operations on collections of points (vectors with payload).\n\nQdrant supports any combinations of `should`, `min_should`, `must` and `must_not` conditions, which makes it possible to use in applications when object could not be described solely by vector. It could be location features, availability flags, and other custom properties businesses should take into account.\n## Examples\nThis examples cover the most basic use-cases - collection creation and basic vector search.\n### Create collection\nFirst - let's create a collection with dot-production metric.\n```\ncurl -X PUT 'http://localhost:6333/collections/test_collection' \\\n  -H 'Content-Type: application/json' \\\n  --data-raw '{\n    \"vectors\": {\n      \"size\": 4,\n      \"distance\": \"Dot\"\n    }\n  }'\n\n```\nExpected response:\n```\n{\n    \"result\": true,\n    \"status\": \"ok\",\n    \"time\": 0.031095451\n}\n```\nWe can ensure that collection was created:\n```\ncurl 'http://localhost:6333/collections/test_collection'\n```\nExpected response:\n```\n{\n  \"result\": {\n    \"status\": \"green\",\n    \"segments_count\": 5,\n    \"disk_data_size\": 0,\n    \"ram_data_size\": 0,\n    \"config\": {\n      \"params\": {\n        \"vectors\": {\n          \"size\": 4,\n          \"distance\": \"Dot\"\n        }\n      },\n      \"hnsw_config\": {\n        \"m\": 16,\n        \"ef_construct\": 100,\n        \"full_scan_threshold\": 10000\n      },\n      \"optimizer_config\": {\n        \"deleted_threshold\": 0.2,\n        \"vacuum_min_vector_number\": 1000,\n        \"default_segment_number\": 2,\n        \"max_segment_size\": null,\n        \"memmap_threshold\": null,\n        \"indexing_threshold\": 20000,\n        \"flush_interval_sec\": 5,\n        \"max_optimization_threads\": null\n      },\n      \"wal_config\": {\n        \"wal_capacity_mb\": 32,\n        \"wal_segments_ahead\": 0\n      }\n    }\n  },\n  \"status\": \"ok\",\n  \"time\": 2.1199e-05\n}\n```\n\n### Add points\nLet's now add vectors with some payload:\n```\ncurl -L -X PUT 'http://localhost:6333/collections/test_collection/points?wait=true' \\ -H 'Content-Type: application/json' \\ --data-raw '{\n  \"points\": [\n    {\"id\": 1, \"vector\": [0.05, 0.61, 0.76, 0.74], \"payload\": {\"city\": \"Berlin\"}},\n    {\"id\": 2, \"vector\": [0.19, 0.81, 0.75, 0.11], \"payload\": {\"city\": [\"Berlin\", \"London\"] }},\n    {\"id\": 3, \"vector\": [0.36, 0.55, 0.47, 0.94], \"payload\": {\"city\": [\"Berlin\", \"Moscow\"] }},\n    {\"id\": 4, \"vector\": [0.18, 0.01, 0.85, 0.80], \"payload\": {\"city\": [\"London\", \"Moscow\"] }},\n    {\"id\": 5, \"vector\": [0.24, 0.18, 0.22, 0.44], \"payload\": {\"count\": [0]}},\n    {\"id\": 6, \"vector\": [0.35, 0.08, 0.11, 0.44]}\n  ]\n}'\n```\nExpected response:\n```\n{\n    \"result\": {\n        \"operation_id\": 0,\n        \"status\": \"completed\"\n    },\n    \"status\": \"ok\",\n    \"time\": 0.000206061\n}\n```\n### Search with filtering\nLet's start with a basic request:\n```\ncurl -L -X POST 'http://localhost:6333/collections/test_collection/points/search' \\ -H 'Content-Type: application/json' \\ --data-raw '{\n    \"vector\": [0.2,0.1,0.9,0.7],\n    \"top\": 3\n}'\n```\nExpected response:\n```\n{\n    \"result\": [\n        { \"id\": 4, \"score\": 1.362, \"payload\": null, \"version\": 0 },\n        { \"id\": 1, \"score\": 1.273, \"payload\": null, \"version\": 0 },\n        { \"id\": 3, \"score\": 1.208, \"payload\": null, \"version\": 0 }\n    ],\n    \"status\": \"ok\",\n    \"time\": 0.000055785\n}\n```\nBut result is different if we add a filter:\n```\ncurl -L -X POST 'http://localhost:6333/collections/test_collection/points/search' \\ -H 'Content-Type: application/json' \\ --data-raw '{\n    \"filter\": {\n        \"should\": [\n            {\n                \"key\": \"city\",\n                \"match\": {\n                    \"value\": \"London\"\n                }\n            }\n        ]\n    },\n    \"vector\": [0.2, 0.1, 0.9, 0.7],\n    \"top\": 3\n}'\n```\nExpected response:\n```\n{\n    \"result\": [\n        { \"id\": 4, \"score\": 1.362, \"payload\": null, \"version\": 0 },\n        { \"id\": 2, \"score\": 0.871, \"payload\": null, \"version\": 0 }\n    ],\n    \"status\": \"ok\",\n    \"time\": 0.000093972\n}\n```\n"
  contact:
    email: andrey@vasnetsov.com
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  version: master
servers:
- url: '{protocol}://{hostname}:{port}'
  variables:
    protocol:
      enum:
      - http
      - https
      default: http
    hostname:
      default: localhost
    port:
      default: '6333'
security:
- api-key: []
- bearerAuth: []
- {}
tags:
- name: Service
  description: Qdrant service utilities.
paths:
  /:
    get:
      summary: Returns information about the running Qdrant instance
      description: Returns information about the running Qdrant instance like version and commit id
      operationId: root
      tags:
      - Service
      responses:
        '200':
          description: Qdrant server version information
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VersionInfo'
        4XX:
          description: error
  /telemetry:
    get:
      summary: Collect telemetry data
      description: Collect telemetry data including app info, system info, collections info, cluster info, configs and statistics
      operationId: telemetry
      tags:
      - Service
      parameters:
      - name: anonymize
        in: query
        description: If true, anonymize result
        required: false
        schema:
          type: boolean
      - name: details_level
        in: query
        description: Level of details in telemetry data. Minimal level is 0, maximal is infinity
        required: false
        schema:
          type: integer
          minimum: 0
      - name: per_collection
        in: query
        description: If true, include per-collection request statistics in the response
        required: false
        schema:
          type: boolean
      - name: timeout
        in: query
        description: Timeout for this request
        required: false
        schema:
          type: integer
          minimum: 1
          default: 60
      responses:
        default:
          description: error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        4XX:
          description: error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '200':
          description: successful operation
          content:
            application/json:
              schema:
                type: object
                properties:
                  usage:
                    default: null
                    anyOf:
                    - $ref: '#/components/schemas/Usage'
                    - {}
                  time:
                    type: number
                    format: float
                    description: Time spent to process this request
                    example: 0.002
                  status:
                    type: string
                    example: ok
                  result:
                    $ref: '#/components/schemas/TelemetryData'
  /metrics:
    get:
      summary: Collect Prometheus metrics data
      description: Collect metrics data including app info, collections info, cluster info and statistics
      operationId: metrics
      tags:
      - Service
      parameters:
      - name: anonymize
        in: query
        description: If true, anonymize result
        required: false
        schema:
          type: boolean
      - name: per_collection
        in: query
        description: If true, include per-collection request metrics with a collection label instead of global request metrics
        required: false
        schema:
          type: boolean
      - name: timeout
        in: query
        description: Timeout for this request
        required: false
        schema:
          type: integer
          minimum: 1
          default: 60
      responses:
        '200':
          description: Metrics data in Prometheus format
          content:
            text/plain:
              schema:
                type: string
                example: '# HELP app_info information about qdrant server

                  # TYPE app_info gauge

                  app_info{name="qdrant",version="0.11.1"} 1

                  # HELP cluster_enabled is cluster support enabled

                  # TYPE cluster_enabled gauge

                  cluster_enabled 0

                  # HELP collections_total number of collections

                  # TYPE collections_total gauge

                  collections_total 1

                  '
        4XX:
          description: error
  /healthz:
    get:
      summary: Kubernetes healthz endpoint
      description: An endpoint for health checking used in Kubernetes.
      operationId: healthz
      tags:
      - Service
      responses:
        '200':
          description: Healthz response
          content:
            text/plain:
              schema:
                type: string
                example: healthz check passed
        4XX:
          description: error
  /livez:
    get:
      summary: Kubernetes livez endpoint
      description: An endpoint for health checking used in Kubernetes.
      operationId: livez
      tags:
      - Service
      responses:
        '200':
          description: Healthz response
          content:
            text/plain:
              schema:
                type: string
                example: healthz check passed
        4XX:
          description: error
  /readyz:
    get:
      summary: Kubernetes readyz endpoint
      description: An endpoint for health checking used in Kubernetes.
      operationId: readyz
      tags:
      - Service
      responses:
        '200':
          description: Healthz response
          content:
            text/plain:
              schema:
                type: string
                example: healthz check passed
        4XX:
          description: error
components:
  schemas:
    ClusterTelemetry:
      type: object
      required:
      - enabled
      properties:
        enabled:
          type: boolean
        status:
          anyOf:
          - $ref: '#/components/schemas/ClusterStatusTelemetry'
          - {}
        config:
          anyOf:
          - $ref: '#/components/schemas/ClusterConfigTelemetry'
          - {}
        peers:
          type:
          - object
          - 'null'
          additionalProperties:
            $ref: '#/components/schemas/PeerInfo'
        peer_metadata:
          type:
          - object
          - 'null'
          additionalProperties:
            $ref: '#/components/schemas/PeerMetadata'
        metadata:
          type:
          - object
          - 'null'
          additionalProperties: true
        resharding_enabled:
          type:
          - boolean
          - 'null'
    PayloadIndexInfo:
      description: Display payload field type & index information
      type: object
      required:
      - data_type
      - points
      properties:
        data_type:
          $ref: '#/components/schemas/PayloadSchemaType'
        params:
          anyOf:
          - $ref: '#/components/schemas/PayloadSchemaParams'
          - {}
        points:
          description: Number of points indexed with this index
          type: integer
          format: uint
          minimum: 0
    HnswConfig:
      description: Config of HNSW index
      type: object
      required:
      - ef_construct
      - full_scan_threshold
      - m
      properties:
        m:
          description: Number of edges per node in the index graph. Larger the value - more accurate the search, more space required.
          type: integer
          format: uint
          minimum: 0
        ef_construct:
          description: Number of neighbours to consider during the index building. Larger the value - more accurate the search, more time required to build index.
          type: integer
          format: uint
          minimum: 4
        full_scan_threshold:
          description: 'Minimal size threshold (in KiloBytes) below which full-scan is preferred over HNSW search. This measures the total size of vectors being queried against. When the maximum estimated amount of points that a condition satisfies is smaller than `full_scan_threshold_kb`, the query planner will use full-scan search instead of HNSW index traversal for better performance. Note: 1Kb = 1 vector of size 256'
          type: integer
          format: uint
          minimum: 0
        max_indexing_threads:
          description: Number of parallel threads used for background index building. If 0 - automatically select from 8 to 16. Best to keep between 8 and 16 to prevent likelihood of slow building or broken/inefficient HNSW graphs. On small CPUs, less threads are used.
          default: 0
          type: integer
          format: uint
          minimum: 0
        on_disk:
          description: 'Store HNSW index on disk. If set to false, index will be stored in RAM. Default: false'
          type:
          - boolean
          - 'null'
        payload_m:
          description: Custom M param for hnsw graph built for payload index. If not set, default M will be used.
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        inline_storage:
          description: 'Store copies of original and quantized vectors within the HNSW index file. Default: false. Enabling this option will trade the search speed for disk usage by reducing amount of random seeks during the search. Requires quantized vectors to be enabled. Multi-vectors are not supported.'
          type:
          - boolean
          - 'null'
    StopwordsSet:
      type: object
      properties:
        languages:
          description: Set of languages to use for stopwords. Multiple pre-defined lists of stopwords can be combined.
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/Language'
          uniqueItems: true
        custom:
          description: Custom stopwords set. Will be merged with the languages set.
          type:
          - array
          - 'null'
          items:
            type: string
          uniqueItems: true
    Indexes:
      description: Vector index configuration
      oneOf:
      - description: Do not use any index, scan whole vector collection during search. Guarantee 100% precision, but may be time consuming on large collections.
        type: object
        required:
        - options
        - type
        properties:
          type:
            type: string
            enum:
            - plain
          options:
            type: object
      - description: Use filterable HNSW index for approximate search. Is very fast even on a very huge collections, but require additional space to store index and additional time to build it.
        type: object
        required:
        - options
        - type
        properties:
          type:
            type: string
            enum:
            - hnsw
          options:
            $ref: '#/components/schemas/HnswConfig'
    ConsensusConfigTelemetry:
      type: object
      required:
      - bootstrap_timeout_sec
      - max_message_queue_size
      - tick_period_ms
      properties:
        max_message_queue_size:
          type: integer
          format: uint
          minimum: 0
        tick_period_ms:
          type: integer
          format: uint64
          minimum: 0
        bootstrap_timeout_sec:
          type: integer
          format: uint64
          minimum: 0
    BinaryQuantizationQueryEncoding:
      type: string
      enum:
      - default
      - binary
      - scalar4bits
      - scalar8bits
    ModelUsage:
      type: object
      required:
      - tokens
      properties:
        tokens:
          type: integer
          format: uint64
          minimum: 0
    ScalarQuantization:
      type: object
      required:
      - scalar
      properties:
        scalar:
          $ref: '#/components/schemas/ScalarQuantizationConfig'
    StateRole:
      description: Role of the peer in the consensus
      type: string
      enum:
      - Follower
      - Candidate
      - Leader
      - PreCandidate
    ReplicaState:
      description: State of the single shard within a replica set.
      type: string
      enum:
      - Active
      - Dead
      - Partial
      - Initializing
      - Listener
      - PartialSnapshot
      - Recovery
      - Resharding
      - ReshardingScaleDown
      - ActiveRead
      - ManualRecovery
    GpuDeviceTelemetry:
      type: object
      required:
      - name
      properties:
        name:
          type: string
    SnowballParams:
      type: object
      required:
      - language
      - type
      properties:
        type:
          $ref: '#/components/schemas/Snowball'
        language:
          $ref: '#/components/schemas/SnowballLanguage'
    BoolIndexParams:
      type: object
      required:
      - type
      properties:
        type:
          $ref: '#/components/schemas/BoolIndexType'
        on_disk:
          description: 'If true, store the index on disk. Default: false.'
          type:
          - boolean
          - 'null'
        enable_hnsw:
          description: 'Enable HNSW graph building for this payload field. If true, builds additional HNSW links (Need payload_m > 0). Default: true.'
          type:
          - boolean
          - 'null'
    ScalarType:
      type: string
      enum:
      - int8
    TrackerTelemetry:
      description: Tracker object used in telemetry
      type: object
      required:
      - name
      - segment_ids
      - segment_uuids
      - start_at
      - status
      - uuid
      properties:
        name:
          description: Name of the optimizer
          type: string
        uuid:
          description: UUID of the upcoming segment being created by the optimizer
          type: string
          format: uuid
        segment_ids:
          description: Internal segment IDs being optimized. These are local and in-memory, meaning that they can refer to different segments after a service restart.
          type: array
          items:
            type: integer
            format: uint
            minimum: 0
        segment_uuids:
          description: Segment UUIDs being optimized. Refers to same segments as in `segment_ids`, but trackable across restarts, and reflect their directory name.
          type: array
          items:
            type: string
            format: uuid
        status:
          $ref: '#/components/schemas/TrackerStatus'
        start_at:
          description: Start time of the optimizer
          type: string
          format: date-time
        end_at:
          description: End time of the optimizer
          type:
          - string
          - 'null'
          format: date-time
    WebApiTelemetry:
      type: object
      required:
      - responses
      properties:
        responses:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              $ref: '#/components/schemas/OperationDurationStatistics'
        per_collection_responses:
          type: object
          additionalProperties:
            type: object
            additionalProperties:
              type: object
              additionalProperties:
                $ref: '#/components/schemas/OperationDurationStatistics'
    VersionInfo:
      type: object
      required:
      - title
      - version
      properties:
        title:
          type: string
        version:
          type: string
        commit:
          type:
          - string
          - 'null'
    ShardUpdateQueueInfo:
      type: object
      required:
      - length
      properties:
        length:
          description: Number of elements in the queue
          type: integer
          format: uint
          minimum: 0
        op_num:
          description: last operation number processed
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        deferred_points:
          description: Number of points that are deferred (i.e hidden from search as they're not yet optimized).
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
    CpuEndian:
      type: string
      enum:
      - little
      - big
      - other
    CompressionRatio:
      type: string
      enum:
      - x4
      - x8
      - x16
      - x32
      - x64
    SegmentType:
      description: Type of segment
      type: string
      enum:
      - plain
      - indexed
      - special
    Language:
      type: string
      enum:
      - arabic
      - azerbaijani
      - basque
      - bengali
      - catalan
      - chinese
      - danish
      - dutch
      - english
      - finnish
      - french
      - german
      - greek
      - hebrew
      - hinglish
      - hungarian
      - indonesian
      - italian
      - japanese
      - kazakh
      - nepali
      - norwegian
      - portuguese
      - romanian
      - russian
      - slovene
      - spanish
      - swedish
      - tajik
      - turkish
    SegmentTelemetry:
      type: object
      required:
      - config
      - info
      - payload_field_indices
      - vector_index_searches
      properties:
        info:
          $ref: '#/components/schemas/SegmentInfo'
        config:
          $ref: '#/components/schemas/SegmentConfig'
        vector_index_searches:
          type: array
          items:
            $ref: '#/components/schemas/VectorIndexSearchesTelemetry'
        payload_field_indices:
          type: array
          items:
            $ref: '#/components/schemas/PayloadIndexTelemetry'
    Distance:
      description: Type of internal tags, build from payload Distance function types used to compare vectors
      type: string
      enum:
      - Cosine
      - Euclid
      - Dot
      - Manhattan
    GeoIndexType:
      type: string
      enum:
      - geo
    TelemetryData:
      type: object
      required:
      - collections
      - id
      properties:
        id:
          type: string
        app:
          anyOf:
          - $ref: '#/components/schemas/AppBuildTelemetry'
          - {}
        collections:
          $ref: '#/components/schemas/CollectionsTelemetry'
        cluster:
          anyOf:
          - $ref: '#/components/schemas/ClusterTelemetry'
          - {}
        requests:
          anyOf:
          - $ref: '#/components/schemas/RequestsTelemetry'
          - {}
        memory:
          anyOf:
          - $ref: '#/components/schemas/MemoryTelemetry'
          - {}
        hardware:
          anyOf:
          - $ref: '#/components/schemas/HardwareTelemetry'
          - {}
    Datatype:
      type: string
      enum:
      - float32
      - uint8
      - float16
    FloatIndexParams:
      type: object
      required:
      - type
      properties:
        type:
          $ref: '#/components/schemas/FloatIndexType'
        is_principal:
          description: If true - use this key to organize storage of the collection data. This option assumes that this key will be used in majority of filtered requests.
          type:
          - boolean
          - 'null'
        on_disk:
          description: 'If true, store the index on disk. Default: false.'
          type:
          - boolean
          - 'null'
        enable_hnsw:
          description: 'Enable HNSW graph building for this payload field. If true, builds additional HNSW links (Need payload_m > 0). Default: true.'
          type:
          - boolean
          - 'null'
    SparseIndexConfig:
      description: Configuration for sparse inverted index.
      type: object
      required:
      - index_type
      properties:
        full_scan_threshold:
          description: 'We prefer a full scan search upto (excluding) this number of vectors.


            Note: this is number of vectors, not KiloBytes.'
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        index_type:
          $ref: '#/components/schemas/SparseIndexType'
        datatype:
          description: Datatype used to store weights in the index.
          anyOf:
          - $ref: '#/components/schemas/VectorStorageDatatype'
          - {}
    ReshardingDirection:
      description: 'Resharding direction, scale up or down in number of shards


        - `up` - Scale up, add a new shard


        - `down` - Scale down, remove a shard'
      type: string
      enum:
      - up
      - down
    BinaryQuantizationEncoding:
      type: string
      enum:
      - one_bit
      - two_bits
      - one_and_half_bits
    HardwareTelemetry:
      type: object
      required:
      - collection_data
      properties:
        collection_data:
          type: object
          additionalProperties:
            $ref: '#/components/schemas/HardwareUsage'
    PeerInfo:
      description: Information of a peer in the cluster
      type: object
      required:
      - uri
      properties:
        uri:
          type: string
    Usage:
      description: Usage of the hardware resources, spent to process the request
      type: object
      properties:
        hardware:
          anyOf:
          - $ref: '#/components/schemas/HardwareUsage'
          - {}
        inference:
          anyOf:
          - $ref: '#/components/schemas/InferenceUsage'
          - {}
    CollectionsTelemetry:
      type: object
      required:
      - number_of_collections
      properties:
        number_of_collections:
          type: integer
          format: uint
          minimum: 0
        max_collections:
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        collections:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CollectionTelemetryEnum'
        snapshots:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/CollectionSnapshotTelemetry'
    LocalShardTelemetry:
      type: object
      required:
      - total_optimized_points
      properties:
        variant_name:
          type:
          - string
          - 'null'
        status:
          anyOf:
          - $ref: '#/components/schemas/ShardStatus'
          - {}
        total_optimized_points:
          description: Total number of optimized points since the last start.
          type: integer
          format: uint
          minimum: 0
        vectors_size_bytes:
          description: An ESTIMATION of effective amount of bytes used for vectors Do NOT rely on this number unless you know what you are doing
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        payloads_size_bytes:
          description: An estimation of the effective amount of bytes used for payloads Do NOT rely on this number unless you know what you are doing
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        num_points:
          description: Sum of segment points This is an approximate number Do NOT rely on this number unless you know what you are doing
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        num_vectors:
          description: Sum of number of vectors in all segments This is an approximate number Do NOT rely on this number unless you know what you are doing
          type:
          - integer
          - 'null'
          format: uint
          minimum: 0
        num_vectors_by_name:
          description: Sum of number of vectors across all segments, grouped by their name. This is an approximate number. Do NOT rely on this number unless you know what you are doing
          type:
          - object
          - 'null'
          additionalProperties:
            type: integer
            format: uint
            minimum: 0
        segments:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/SegmentTelemetry'
        optimizations:
          anyOf:
          - $ref: '#/components/schemas/OptimizerTelemetry'
          - {}
        async_scorer:
          type:
          - boolean
          - 'null'
        indexed_only_excluded_vectors:
          type:
          - object
          - 'null'
          additionalProperties:
            type: integer
            format: uint
            minimum: 0
        update_queue:
          description: Update queue status
          anyOf:
          - $ref: '#/components/schemas/ShardUpdateQueueInfo'
          - {}
    AppFeaturesTelemetry:
      type: object
      required:
      - debug
      - gpu
      - recovery_mode
      - rocksdb
      - service_debug_feature
      - staging
      properties:
        debug:
          type: boolean
        service_debug_feature:
          type: boolean
        recovery_mode:
          type: boolean
        gpu:
          type: boolean
        rocksdb:
          type: boolean
        staging:
          type: boolean
    ClusterConfigTelemetry:
      type: object
      required:
      - consensus
      - grpc_timeout_ms
      - p2p
      properties:
        grpc_timeout_ms:
          type: integer
          format: uint64
          minimum: 0
        p2p:
          $ref: '#/components/schemas/P2pConfigTelemetry'
        consensus:
          $ref: '#/components/schemas/ConsensusConfigTelemetry'
    StopwordsInterface:
      anyOf:
      - $ref: '#/components/schemas/Language'
      - $ref: '#/components/schemas/StopwordsSet'
    IntegerIndexParams:
      type: object
      required:
      - type
      properties:
        type:
          $ref: '#/components/schemas/IntegerIndexType'
        lookup:
          description: If true - support direct lookups. Default is true.
          type:
          - boolean
          - 'null'
        range:
          description: If true - support ranges filters. Default is true.
          type:
          - boolean
          - 'null'
        is_principal:
          description: If true - use this key to organize storage of the collection data. This option assumes that this key will be used in majority of filtered requests. Default is false.
          type:
          - boolean
          - 'null'
        on_disk:
          description: 'If true, store the index on disk. Default: false. Default is false.'
          type:
          - boolean
          - 'null'
        enable_hnsw:
          description: 'Enable HNSW graph building for this payload field. If true, builds additional HNSW links (Need payload_m > 0). Default: true.'
          type:
          - boolean
          - 'null'
    OptimizerTelemetry:
      type: object
      required:
      - optimizations
      - status
      properties:
        status:
          $ref: '#/components/schemas/OptimizersStatus'
        optimizations:
          $ref: '#/components/schemas/OperationDurationStatistics'
        log:
          type:
          - array
          - 'null'
          items:
            $ref: '#/components/schemas/TrackerTelemetry'
    ProductQuantization:
      type: object
      required:
      - product
      properties:
        product:
          $ref: '#/components/schemas/ProductQuantizationConfig'
    ShardStatus:
      description: 'Current state of the shard (supports same states as the collection)


        `Green` - all good. `Yellow` - optimization is running, ''Grey'' - optimizations are possible but not triggered, `Red` - some operations failed and was not recovered'
      type: string
      enum:
      - green
      - yellow
      - grey
      - red
    IntegerIndexType:
      type: string
      enum:
      - integer
    StrictModeSparseConfigOutput:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/StrictModeSparseOutput'
    CollectionsAggregatedTelemetry:
      type: object
      required:
      - optimizers_status
      - params
      - vectors
      properties:
        vectors:
          type: integer
          format: uint
          minimum: 0
        optimizers_status:
     

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