Qdrant

App · Databases · 20 actions

Store embeddings in Qdrant and search them: manage collections, upsert points with payloads, filter, and run vector and recommendation searches.

Actions

ActionWhat it does
Clear payloadRemove the entire payload of the selected points, keeping their vectors.
Collection existsCheck whether a collection exists.
Count pointsCount the points in a collection, or just the ones matching a filter.
Create aliasPoint an alias at a collection.
Create collectionCreate a collection to hold vectors.
Create payload indexIndex a payload key so points can be filtered and ordered by it.
Delete aliasRemove an alias.
Delete collectionDelete a collection with every point in it, and every alias pointing at it.
Delete payload indexDrop the index on a payload key.
Delete payload keysRemove named keys from the payload of the selected points, keeping the rest of the payload and the vectors.
Delete pointsDelete points from a collection, either by id or by filter.
Get collectionRead one collection's status, how many points it holds, its vector configuration, and which payload keys are indexed (the keys a filter is allowed to use).
Get pointsFetch points by id.
List aliasesList the aliases pointing at one collection.
List collectionsList every collection on the Qdrant cluster.
Query pointsSearch a collection: for the points nearest a vector, nearest a point already stored, or most like a set of examples.
Scroll pointsPage through a collection's points without searching.
Set payloadMerge keys into the payload of the selected points.
Update vectorsReplace the vectors of points that already exist, leaving their payloads untouched.
Upsert pointsAdd points to a collection, or overwrite points that are already there.

Clear payload

Remove the entire payload of the selected points, keeping their vectors. Select the points by id or by filter.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Point IDsidslist
The ids of the points to act on, each a whole number or a UUID. Leave this empty to select points with a Filter instead.
Filterfilterobject
A Qdrant filter over the points' payloads, for example {"must": [{"key": "category", "match": {"value": "kitchen"}}]}. Every payload key a filter names must have a payload index - run 'Create payload index' on it once first.

Outputs

collectiontext
operation_idnumber
point_idslist
statustext
Example output
{
  "collection": "product-descriptions",
  "operation_id": 42,
  "point_ids": [
    1
  ],
  "status": "completed"
}

Collection exists

Check whether a collection exists. Answers true or false rather than failing, so a workflow can branch on it before creating or writing.

Inputs

CollectioncollectiontextRequired
The collection name to check for.

Outputs

collectiontext
existstrue/false
Example output
{
  "collection": "product-descriptions",
  "exists": true
}

Count points

Count the points in a collection, or just the ones matching a filter.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Filterfilterobject
A Qdrant filter over the points' payloads, for example {"must": [{"key": "category", "match": {"value": "kitchen"}}]}. Every payload key a filter names must have a payload index - run 'Create payload index' on it once first.
Exact countexacttrue/false
On by default. Turn it off for a fast estimate on a very large collection.Default: true.

Outputs

collectiontext
countnumber
exacttrue/false
Example output
{
  "collection": "product-descriptions",
  "count": 128,
  "exact": true
}

Create alias

Point an alias at a collection. Steps that name the alias follow it, so rebuilding a collection under a new name and re-pointing the alias swaps them over with no downtime. An alias that already points elsewhere is re-pointed.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Aliasalias_nametextRequired
The alias name, for example 'products-live'.

Outputs

alias_nametext
collectiontext
createdtrue/false
Example output
{
  "alias_name": "products-live",
  "collection": "product-descriptions",
  "created": true
}

Create collection

Create a collection to hold vectors. Vector size must match the embedding model you will store (for example 1536 for OpenAI text-embedding-3-small, 384 for all-MiniLM-L6-v2), and cannot be changed afterwards.

Inputs

CollectioncollectiontextRequired
Name for the new collection (for example 'product-descriptions'). Creating a collection that already exists fails - use 'Collection exists' first if you are not sure.
Vector sizevector_sizenumberRequired
How many numbers each vector has - the dimension of your embedding model.From 1 to 65536. Default: 1.
DistancedistancetextRequired
How similarity between two vectors is measured. Cosine is the usual choice for text embeddings.One of: Cosine (Cosine - the usual choice for text embeddings), Dot (Dot product - for embeddings that are already normalised), Euclid (Euclidean - straight-line distance), Manhattan (Manhattan - sum of the per-axis distances). Default: Cosine.
Vector namevector_nametext
Leave blank for an ordinary collection. Set a name only if each point will hold several different vectors - every later step then has to name which one it means.
Stored asdatatypetext
How each number is stored. float32 is full precision and the default; the smaller types trade a little accuracy for memory.One of: float32 (float32 - full precision, the default), float16 (float16 - half the memory, slightly less precise), uint8 (uint8 - a quarter of the memory, for quantised vectors).
Keep vectors on diskon_disktrue/false
Store vectors on disk instead of in memory. Slower to search, but lets a small cluster hold more.Default: false.

Outputs

collectiontext
createdtrue/false
distancetext
vector_nametext
vector_sizenumber
Example output
{
  "collection": "product-descriptions",
  "created": true,
  "distance": "Cosine",
  "vector_name": null,
  "vector_size": 384
}

Create payload index

Index a payload key so points can be filtered and ordered by it. Qdrant Cloud refuses filters on unindexed keys, so run this once for every key your filters use.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Payload keyfield_nametextRequired
The payload key to index, for example 'category'. A key inside a nested object is written with dots, like 'meta.author'.
Value typefield_schematextRequired
What kind of values this payload key holds.One of: keyword (Keyword - exact matches on a string), integer (Integer - whole numbers, and ranges over them), float (Float - decimal numbers, and ranges over them), bool (Boolean - true/false), datetime (Datetime - timestamps, and ranges over them), text (Text - full-text search inside a string), uuid (UUID - exact matches on a UUID string), geo (Geo - latitude/longitude, for radius and box filters). Default: keyword.

Outputs

collectiontext
field_nametext
field_schematext
operation_idnumber
statustext
Example output
{
  "collection": "product-descriptions",
  "field_name": "category",
  "field_schema": "keyword",
  "operation_id": 42,
  "status": "completed"
}

Delete alias

Remove an alias. The collection it pointed at is untouched.

Inputs

Aliasalias_nametextRequired
The alias name, for example 'products-live'.

Outputs

alias_nametext
deletedtrue/false
Example output
{
  "alias_name": "products-live",
  "deleted": true
}

Delete collection

Delete a collection with every point in it, and every alias pointing at it. This cannot be undone.

Inputs

CollectioncollectiontextRequired
The collection to work in.

Outputs

collectiontext
deletedtrue/false
Example output
{
  "collection": "product-descriptions",
  "deleted": true
}

Delete payload index

Drop the index on a payload key. The payload itself is left alone, but filters on that key stop working.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Payload keyfield_nametextRequired
The payload key to index, for example 'category'. A key inside a nested object is written with dots, like 'meta.author'.

Outputs

collectiontext
field_nametext
operation_idnumber
statustext
Example output
{
  "collection": "product-descriptions",
  "field_name": "category",
  "operation_id": 42,
  "status": "completed"
}

Delete payload keys

Remove named keys from the payload of the selected points, keeping the rest of the payload and the vectors.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Payload keyskeyslistRequired
The payload keys to remove from each point.
Point IDsidslist
The ids of the points to act on, each a whole number or a UUID. Leave this empty to select points with a Filter instead.
Filterfilterobject
A Qdrant filter over the points' payloads, for example {"must": [{"key": "category", "match": {"value": "kitchen"}}]}. Every payload key a filter names must have a payload index - run 'Create payload index' on it once first.

Outputs

collectiontext
keyslist
operation_idnumber
point_idslist
statustext
Example output
{
  "collection": "product-descriptions",
  "keys": [
    "in_stock"
  ],
  "operation_id": 42,
  "point_ids": [
    1
  ],
  "status": "completed"
}

Delete points

Delete points from a collection, either by id or by filter. Give one or the other, not both.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Point IDsidslist
The ids of the points to act on, each a whole number or a UUID. Leave this empty to select points with a Filter instead.
Filterfilterobject
A Qdrant filter over the points' payloads, for example {"must": [{"key": "category", "match": {"value": "kitchen"}}]}. Every payload key a filter names must have a payload index - run 'Create payload index' on it once first.

Outputs

collectiontext
countnumber
operation_idnumber
point_idslist
statustext
Example output
{
  "collection": "product-descriptions",
  "count": 1,
  "operation_id": 42,
  "point_ids": [
    1
  ],
  "status": "completed"
}

Get collection

Read one collection's status, how many points it holds, its vector configuration, and which payload keys are indexed (the keys a filter is allowed to use).

Inputs

CollectioncollectiontextRequired
The collection to work in.

Outputs

collectiontext
configobject
indexed_fieldslist
indexed_vectors_countnumber
infoobject
payload_schemaobject
points_countnumber
segments_countnumber
statustext
Example output
{
  "collection": "product-descriptions",
  "config": {
    "params": {
      "vectors": {
        "distance": "Cosine",
        "size": 384
      }
    }
  },
  "indexed_fields": [
    "category"
  ],
  "indexed_vectors_count": 128,
  "info": {
    "status": "green"
  },
  "payload_schema": {
    "category": {
      "data_type": "keyword",
      "points": 128
    }
  },
  "points_count": 128,
  "segments_count": 2,
  "status": "green"
}

Get points

Fetch points by id. Ids the collection does not hold come back under 'missing_ids' rather than failing the step.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Point IDsidslistRequired
The ids of the points to act on. Each id is a whole number or a UUID - Qdrant accepts nothing else.
Include payloadwith_payloadtrue/false
Return each point's stored payload alongside it.Default: true.
Include vectorswith_vectortrue/false
Return each point's vector as well. Off by default: vectors are large and a workflow rarely reads them back.Default: false.

Outputs

collectiontext
countnumber
idslist
missing_idslist
pointslist
Example output
{
  "collection": "product-descriptions",
  "count": 1,
  "ids": [
    1
  ],
  "missing_ids": [],
  "points": [
    {
      "id": 1,
      "payload": {
        "category": "kitchen"
      },
      "vector": null
    }
  ]
}

List aliases

List the aliases pointing at one collection.

Inputs

CollectioncollectiontextRequired
The collection to work in.

Outputs

alias_nameslist
aliaseslist
collectiontext
countnumber
Example output
{
  "alias_names": [
    "products-live"
  ],
  "aliases": [
    {
      "alias_name": "products-live",
      "collection_name": "product-descriptions"
    }
  ],
  "collection": "product-descriptions",
  "count": 1
}

List collections

List every collection on the Qdrant cluster. Qdrant reports only their names here; use 'Get collection' for the size and configuration of one.

Inputs

None.

Outputs

collectionslist
countnumber
nameslist
Example output
{
  "collections": [
    {
      "name": "product-descriptions"
    },
    {
      "name": "faqs"
    }
  ],
  "count": 2,
  "names": [
    "faqs",
    "product-descriptions"
  ]
}

Query points

Search a collection: for the points nearest a vector, nearest a point already stored, or most like a set of examples. Fill in one of the three - leaving all three blank returns points matching the filter in the collection's own order.

Inputs

CollectioncollectiontextRequired
The collection to work in.
Search vectorquery_vectorlist
The vector to find neighbours of - usually the embedding of the text being searched for. As wide as the collection was created.
Search near pointquery_point_idtext
Instead of a vector: the id of a point already in the collection, to find the points most like it.
More like theserecommend_positivelist
Instead of a vector: point ids (or vectors) the results should resemble.
Less like theserecommend_negativelist
Point ids (or vectors) the results should avoid resembling. Only used with 'More like these'.
Recommendation stylerecommend_strategytext
How the examples are combined. Only used with 'More like these'.One of: average_vector (Average vector - the classic recommendation), best_score (Best score - favours points close to any one example), sum_scores (Sum of scores - favours points close to several examples).
Vector nameusingtext
Only for a collection created with named vectors: which vector to search.
Filterfilterobject
A Qdrant filter over the points' payloads, for example {"must": [{"key": "category", "match": {"value": "kitchen"}}]}. Every payload key a filter names must have a payload index - run 'Create payload index' on it once first.
How many resultslimitnumber
How many matches to return.From 1 to 10000. Default: 10.
Minimum scorescore_thresholdnumber
Optional. Drop matches scoring below this. What counts as a good score depends on the collection's distance metric.
Include payloadwith_payloadtrue/false
Return each point's stored payload alongside it.Default: true.
Include vectorswith_vectortrue/false
Return each point's vector as well. Off by default: vectors are large and a workflow rarely reads them back.Default: false.

Outputs

collectiontext
countnumber
idslist
pointslist
top_pointobject
top_scorenumber
Example output
{
  "collection": "product-descriptions",
  "count": 1,
  "ids": [
    1
  ],
  "points": [
    {
      "id": 1,
      "payload": {
        "category": "kitchen"
      },
      "score": 0.87,
      "version": 3
    }
  ],
  "top_point": {
    "id": 1,
    "score": 0.87
  },
  "top_score": 0.87
}

Scroll points

Page through a collection's points without searching. Feed 'next_page_offset' from one run into 'Start after' on the next to get the following page.

Inputs

CollectioncollectiontextRequired
The collection to work in.
How manylimitnumber
How many points to return in this page.From 1 to 10000. Default: 50.
Start afteroffsettext
The 'next_page_offset' from the previous run. Leave blank for the first page.
Filterfilterobject
A Qdrant filter over the points' payloads, for example {"must": [{"key": "category", "match": {"value": "kitchen"}}]}. Every payload key a filter names must have a payload index - run 'Create payload index' on it once first.
Include payloadwith_payloadtrue/false
Return each point's stored payload alongside it.Default: true.
Include vectorswith_vectortrue/false
Return each point's vector as well. Off by default: vectors are large and a workflow rarely reads them back.Default: false.
Order by payload keyorder_by_keytext
Optional. Return the points in the order of this payload key. The key needs a payload index.
Orderorder_by_directiontext
Which way round to order. Only used with a key.One of: asc (Ascending - smallest first), desc (Descending - largest first).

Outputs

collectiontext
countnumber
has_moretrue/false
idslist
next_page_offset
pointslist
Example output
{
  "collection": "product-descriptions",
  "count": 1,
  "has_more": true,
  "ids": [
    1
  ],
  "next_page_offset": 2,
  "points": [
    {
      "id": 1,
      "payload": {
        "category": "kitchen"
      }
    }
  ]
}

Set payload

Merge keys into the payload of the selected points. Keys you do not name are left as they are. Select the points by id or by filter, not both.

Inputs

CollectioncollectiontextRequired
The collection to work in.
PayloadpayloadobjectRequired
The keys and values to set, for example category: 'kitchen', in_stock: true.
Point IDsidslist
The ids of the points to act on, each a whole number or a UUID. Leave this empty to select points with a Filter instead.
Filterfilterobject
A Qdrant filter over the points' payloads, for example {"must": [{"key": "category", "match": {"value": "kitchen"}}]}. Every payload key a filter names must have a payload index - run 'Create payload index' on it once first.
Nest under keykeytext
Optional. Set these values inside an existing payload key instead of at the top level.

Outputs

collectiontext
keyslist
operation_idnumber
point_idslist
statustext
Example output
{
  "collection": "product-descriptions",
  "keys": [
    "category"
  ],
  "operation_id": 42,
  "point_ids": [
    1
  ],
  "status": "completed"
}

Update vectors

Replace the vectors of points that already exist, leaving their payloads untouched. Unlike 'Upsert points' this never creates a point.

Inputs

CollectioncollectiontextRequired
The collection to work in.
PointspointslistRequired
The points to re-embed, each {"id": ..., "vector": [...]}. Payloads are left as they are.

Outputs

collectiontext
countnumber
operation_idnumber
point_idslist
statustext
Example output
{
  "collection": "product-descriptions",
  "count": 1,
  "operation_id": 42,
  "point_ids": [
    1
  ],
  "status": "completed"
}

Upsert points

Add points to a collection, or overwrite points that are already there. Each point is an id (a whole number or a UUID), a vector, and an optional payload of anything you want to store or filter on.

Inputs

CollectioncollectiontextRequired
The collection to work in.
PointspointslistRequired
The points to write, each {"id": ..., "vector": [...], "payload": {...}}. The vector is a list of numbers, as wide as the collection was created; for a collection with named vectors, send an object like {"embedding": [...]} instead.
When a point already existsupdate_modetext
Leave blank to overwrite existing points, which is Qdrant's default. Needs Qdrant 1.19 or newer.One of: upsert (Upsert - insert new points and overwrite existing ones), insert_only (Insert only - leave a point that already exists alone), update_only (Update only - change existing points, insert nothing).

Outputs

collectiontext
countnumber
operation_idnumber
point_idslist
statustext
Example output
{
  "collection": "product-descriptions",
  "count": 1,
  "operation_id": 42,
  "point_ids": [
    1
  ],
  "status": "completed"
}

On this page