# Check cluster status GET http://localhost:6333/cluster Returns information about the cluster's current state and composition. Reference: https://api.qdrant.tech/api-reference/distributed/cluster-status ## OpenAPI Specification ```yaml openapi: 3.1.1 info: title: Check cluster status version: endpoint_distributed.cluster_status paths: /cluster: get: operationId: cluster-status summary: Check cluster status description: Returns information about the cluster's current state and composition. tags: - - subpackage_distributed parameters: - name: api-key in: header required: true schema: type: string responses: '200': description: successful operation content: application/json: schema: $ref: '#/components/schemas/Distributed_cluster_status_Response_200' components: schemas: HardwareUsage: type: object properties: cpu: type: integer payload_io_read: type: integer payload_io_write: type: integer payload_index_io_read: type: integer payload_index_io_write: type: integer vector_io_read: type: integer vector_io_write: type: integer required: - cpu - payload_io_read - payload_io_write - payload_index_io_read - payload_index_io_write - vector_io_read - vector_io_write UsageHardware: oneOf: - $ref: '#/components/schemas/HardwareUsage' - description: Any type ModelUsage: type: object properties: tokens: type: integer format: uint64 required: - tokens InferenceUsage: type: object properties: models: type: object additionalProperties: $ref: '#/components/schemas/ModelUsage' required: - models UsageInference: oneOf: - $ref: '#/components/schemas/InferenceUsage' - description: Any type Usage: type: object properties: hardware: $ref: '#/components/schemas/UsageHardware' inference: $ref: '#/components/schemas/UsageInference' ClusterGetResponsesContentApplicationJsonSchemaUsage: oneOf: - $ref: '#/components/schemas/Usage' - description: Any type ClusterStatusOneOf0Status: type: string enum: - value: disabled ClusterStatus0: type: object properties: status: $ref: '#/components/schemas/ClusterStatusOneOf0Status' required: - status ClusterStatusOneOf1Status: type: string enum: - value: enabled PeerInfo: type: object properties: uri: type: string required: - uri StateRole: type: string enum: - value: Follower - value: Candidate - value: Leader - value: PreCandidate RaftInfoRole: oneOf: - $ref: '#/components/schemas/StateRole' - description: Any type RaftInfo: type: object properties: term: type: integer format: uint64 commit: type: integer format: uint64 pending_operations: type: integer leader: type: - integer - 'null' format: uint64 role: $ref: '#/components/schemas/RaftInfoRole' is_voter: type: boolean required: - term - commit - pending_operations - is_voter ConsensusThreadStatusOneOf0ConsensusThreadStatus: type: string enum: - value: working ConsensusThreadStatus0: type: object properties: consensus_thread_status: $ref: >- #/components/schemas/ConsensusThreadStatusOneOf0ConsensusThreadStatus last_update: type: string format: date-time required: - consensus_thread_status - last_update ConsensusThreadStatusOneOf1ConsensusThreadStatus: type: string enum: - value: stopped ConsensusThreadStatus1: type: object properties: consensus_thread_status: $ref: >- #/components/schemas/ConsensusThreadStatusOneOf1ConsensusThreadStatus required: - consensus_thread_status ConsensusThreadStatusOneOf2ConsensusThreadStatus: type: string enum: - value: stopped_with_err ConsensusThreadStatus2: type: object properties: consensus_thread_status: $ref: >- #/components/schemas/ConsensusThreadStatusOneOf2ConsensusThreadStatus err: type: string required: - consensus_thread_status - err ConsensusThreadStatus: oneOf: - $ref: '#/components/schemas/ConsensusThreadStatus0' - $ref: '#/components/schemas/ConsensusThreadStatus1' - $ref: '#/components/schemas/ConsensusThreadStatus2' MessageSendErrors: type: object properties: count: type: integer latest_error: type: - string - 'null' latest_error_timestamp: type: - string - 'null' format: date-time required: - count ClusterStatus1: type: object properties: status: $ref: '#/components/schemas/ClusterStatusOneOf1Status' peer_id: type: integer format: uint64 peers: type: object additionalProperties: $ref: '#/components/schemas/PeerInfo' raft_info: $ref: '#/components/schemas/RaftInfo' consensus_thread_status: $ref: '#/components/schemas/ConsensusThreadStatus' message_send_failures: type: object additionalProperties: $ref: '#/components/schemas/MessageSendErrors' required: - status - peer_id - peers - raft_info - consensus_thread_status - message_send_failures ClusterStatus: oneOf: - $ref: '#/components/schemas/ClusterStatus0' - $ref: '#/components/schemas/ClusterStatus1' Distributed_cluster_status_Response_200: type: object properties: usage: $ref: >- #/components/schemas/ClusterGetResponsesContentApplicationJsonSchemaUsage time: type: number format: double status: type: string result: $ref: '#/components/schemas/ClusterStatus' ``` ## SDK Code Examples ```python import requests url = "http://localhost:6333/cluster" headers = {"api-key": ""} response = requests.get(url, headers=headers) print(response.json()) ``` ```javascript const url = 'http://localhost:6333/cluster'; const options = {method: 'GET', headers: {'api-key': ''}}; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "net/http" "io" ) func main() { url := "http://localhost:6333/cluster" req, _ := http.NewRequest("GET", url, nil) req.Header.Add("api-key", "") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("http://localhost:6333/cluster") http = Net::HTTP.new(url.host, url.port) request = Net::HTTP::Get.new(url) request["api-key"] = '' response = http.request(request) puts response.read_body ``` ```java HttpResponse response = Unirest.get("http://localhost:6333/cluster") .header("api-key", "") .asString(); ``` ```php request('GET', 'http://localhost:6333/cluster', [ 'headers' => [ 'api-key' => '', ], ]); echo $response->getBody(); ``` ```csharp var client = new RestClient("http://localhost:6333/cluster"); var request = new RestRequest(Method.GET); request.AddHeader("api-key", ""); IRestResponse response = client.Execute(request); ``` ```swift import Foundation let headers = ["api-key": ""] let request = NSMutableURLRequest(url: NSURL(string: "http://localhost:6333/cluster")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0) request.httpMethod = "GET" request.allHTTPHeaderFields = headers let session = URLSession.shared let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in if (error != nil) { print(error as Any) } else { let httpResponse = response as? HTTPURLResponse print(httpResponse) } }) dataTask.resume() ```