QdrantTransport

Wire-protocol seam. Concrete engines (the REST/Ktor engine lives in kdrant-transport-rest; a gRPC engine can be added later) implement this interface so the public models and DSL in kdrant-core stay independent of the wire protocol.

Implementations receive already-built request models (the DSL lives above this seam) and must translate transport failures into a dev.kdrant.KdrantException, always re-throwing kotlinx.coroutines.CancellationException.

Functions

Link copied to clipboard
abstract suspend fun clearIssues()

Clear the collected issues (DELETE /issues).

Link copied to clipboard
abstract suspend fun clearPayload(name: String, selector: DeleteSelector, wait: Boolean)

Clear all payload from the selected points (POST /collections/{name}/points/payload/clear).

Link copied to clipboard
abstract fun close()
Link copied to clipboard
abstract suspend fun collectionExists(name: String): Boolean

Whether a collection exists (GET /collections/{name}/exists).

Link copied to clipboard
abstract suspend fun count(name: String, filter: Filter?, exact: Boolean): Long

Count points, optionally filtered (POST /collections/{name}/points/count).

Link copied to clipboard
abstract suspend fun createCollection(name: String, request: CreateCollectionRequest)

Create a collection (PUT /collections/{name}).

Link copied to clipboard
abstract suspend fun createPayloadIndex(name: String, field: String, schema: PayloadSchemaType, wait: Boolean)

Create a payload field index (PUT /collections/{name}/index).

Link copied to clipboard
abstract suspend fun createSnapshot(name: String, wait: Boolean): SnapshotDescription

Create a collection snapshot (POST /collections/{name}/snapshots).

Link copied to clipboard

Create a full-storage snapshot (POST /snapshots).

Link copied to clipboard
abstract suspend fun delete(name: String, selector: DeleteSelector, wait: Boolean)

Delete points by id or by filter (POST /collections/{name}/points/delete).

Link copied to clipboard
abstract suspend fun deleteCollection(name: String)

Delete a collection (DELETE /collections/{name}).

Link copied to clipboard
abstract suspend fun deletePayload(name: String, keys: List<String>, selector: DeleteSelector, wait: Boolean)

Delete keys from the selected points' payload (POST /collections/{name}/points/payload/delete).

Link copied to clipboard
abstract suspend fun deletePayloadIndex(name: String, field: String, wait: Boolean)

Delete a payload field index (DELETE /collections/{name}/index/{field}).

Link copied to clipboard
abstract suspend fun deleteSnapshot(name: String, snapshotName: String, wait: Boolean)

Delete a collection snapshot (DELETE /collections/{name}/snapshots/{snapshot}).

Link copied to clipboard
abstract suspend fun deleteStorageSnapshot(snapshotName: String, wait: Boolean)

Delete a full-storage snapshot (DELETE /snapshots/{snapshot}).

Link copied to clipboard
abstract suspend fun deleteVectors(name: String, vectors: List<String>, selector: DeleteSelector, wait: Boolean)

Delete named vectors from the selected points (POST /collections/{name}/points/vectors/delete).

Link copied to clipboard
abstract fun downloadSnapshot(name: String, snapshotName: String): Flow<ByteArray>

Stream a collection snapshot's bytes (GET /collections/{name}/snapshots/{snapshot}).

Link copied to clipboard
abstract fun downloadStorageSnapshot(snapshotName: String): Flow<ByteArray>

Stream a full-storage snapshot's bytes (GET /snapshots/{snapshot}).

Link copied to clipboard
abstract suspend fun facet(name: String, key: String, filter: Filter?, limit: Int?, exact: Boolean): List<FacetHit>

Facet a payload key, counting distinct values (POST /collections/{name}/facet).

Link copied to clipboard
abstract suspend fun getCollection(name: String): CollectionInfo

Collection status and counts (GET /collections/{name}).

Link copied to clipboard
abstract suspend fun healthz(): Boolean

Whether the node is healthy (GET /healthz); false on a non-2xx probe response.

Link copied to clipboard
abstract suspend fun listAliases(): List<AliasDescription>

List every alias across all collections (GET /aliases).

Link copied to clipboard
abstract suspend fun listCollectionAliases(name: String): List<AliasDescription>

List the aliases pointing at one collection (GET /collections/{name}/aliases).

Link copied to clipboard
abstract suspend fun listCollections(): List<CollectionDescription>

List all collection names (GET /collections).

Link copied to clipboard
abstract suspend fun listIssues(): JsonElement

Detected performance issues as raw JSON (GET /issues).

Link copied to clipboard
abstract suspend fun listSnapshots(name: String): List<SnapshotDescription>

List a collection's snapshots (GET /collections/{name}/snapshots).

Link copied to clipboard

List full-storage snapshots (GET /snapshots).

Link copied to clipboard
abstract suspend fun livez(): Boolean

Whether the node is alive (GET /livez); false on a non-2xx probe response.

Link copied to clipboard
abstract suspend fun metrics(): String

Prometheus metrics in text exposition format (GET /metrics).

Link copied to clipboard
abstract suspend fun overwritePayload(name: String, payload: Payload, selector: DeleteSelector, wait: Boolean)

Replace the payload of the selected points (PUT /collections/{name}/points/payload).

Link copied to clipboard
abstract suspend fun query(name: String, request: SearchRequest): List<ScoredPoint>

Nearest-vector search (POST /collections/{name}/points/query).

Link copied to clipboard
abstract suspend fun queryBatch(name: String, requests: List<SearchRequest>): List<List<ScoredPoint>>

Batch nearest-vector search (POST /collections/{name}/points/query/batch).

Link copied to clipboard
abstract suspend fun queryGroups(name: String, request: SearchGroupsRequest): List<PointGroup>

Grouped nearest-vector search (POST /collections/{name}/points/query/groups).

Link copied to clipboard
abstract suspend fun readyz(): Boolean

Whether the node is ready to serve (GET /readyz); false on a non-2xx probe response.

Link copied to clipboard
abstract suspend fun recoverSnapshot(name: String, location: String, priority: SnapshotPriority?, checksum: String?, wait: Boolean)

Recover a collection from a snapshot location (PUT /collections/{name}/snapshots/recover).

Link copied to clipboard
abstract suspend fun retrieve(name: String, ids: List<PointId>, withPayload: WithPayload?, withVector: Boolean?): List<Record>

Retrieve points by id (POST /collections/{name}/points).

Link copied to clipboard
abstract suspend fun scroll(name: String, request: ScrollRequest): ScrollPage

Fetch a single page of points (POST /collections/{name}/points/scroll).

Link copied to clipboard
abstract suspend fun searchMatrixOffsets(name: String, request: SearchMatrixRequest): SearchMatrixOffsets

Distance matrix in offsets form (POST /collections/{name}/points/search/matrix/offsets).

Link copied to clipboard
abstract suspend fun searchMatrixPairs(name: String, request: SearchMatrixRequest): SearchMatrixPairs

Distance matrix in pairs form (POST /collections/{name}/points/search/matrix/pairs).

Link copied to clipboard
abstract suspend fun setPayload(name: String, payload: Payload, selector: DeleteSelector, key: String?, wait: Boolean)

Merge payload into the selected points (POST /collections/{name}/points/payload).

Link copied to clipboard
abstract suspend fun telemetry(): JsonObject

Telemetry data as a raw JSON object (GET /telemetry).

Link copied to clipboard
abstract suspend fun updateAliases(operations: List<AliasOperation>, timeout: Int?)

Apply alias changes atomically (POST /collections/aliases); timeout is in seconds.

Link copied to clipboard
abstract suspend fun updateCollection(name: String, request: UpdateCollectionRequest)

Update an existing collection's config (PATCH /collections/{name}).

Link copied to clipboard
abstract suspend fun updateVectors(name: String, points: List<PointVectors>, wait: Boolean)

Update the vectors of existing points (PUT /collections/{name}/points/vectors).

Link copied to clipboard
abstract suspend fun uploadSnapshot(name: String, data: Flow<ByteArray>, priority: SnapshotPriority?, checksum: String?, wait: Boolean)

Upload a snapshot file and recover from it (POST /collections/{name}/snapshots/upload).

Link copied to clipboard
abstract suspend fun upsert(name: String, points: List<PointStruct>, wait: Boolean)

Upsert points (PUT /collections/{name}/points). Implementations are responsible for any transport-specific batching (e.g. the REST engine splits points to stay under the 32 MiB payload cap). wait maps to ?wait=.

abstract suspend fun upsert(name: String, points: Flow<PointStruct>, wait: Boolean)

Upsert points streamed from a Flow, chunked by the engine's batch size (PUT /collections/{name}/points).