Skip to main content
POST
/
v1
/
table
/
{id}
/
query
Query a table
curl --request POST \
  --url {scheme}://{host}:{port}/{basePath}/v1/table/{id}/query \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "k": 1,
  "vector": {
    "single_vector": [
      123
    ],
    "multi_vector": [
      [
        123
      ]
    ]
  },
  "identity": {
    "api_key": "<string>",
    "auth_token": "<string>"
  },
  "context": {},
  "id": [
    "<string>"
  ],
  "bypass_vector_index": true,
  "columns": {
    "column_names": [
      "<string>"
    ],
    "column_aliases": {}
  },
  "distance_type": "<string>",
  "ef": 1,
  "fast_search": true,
  "filter": "<string>",
  "full_text_query": {},
  "lower_bound": 123,
  "nprobes": 1,
  "offset": 1,
  "prefilter": true,
  "refine_factor": 1,
  "upper_bound": 123,
  "vector_column": "<string>",
  "version": 1,
  "with_row_id": true
}
'
"<string>"

Documentation Index

Fetch the complete documentation index at: https://docs.lancedb.com/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Path Parameters

id
string
required

string identifier of an object in a namespace, following the Lance Namespace spec. When the value is equal to the delimiter, it represents the root namespace. For example, v1/namespace/$/list performs a ListNamespace on the root namespace.

Query Parameters

delimiter
string

An optional delimiter of the string identifier, following the Lance Namespace spec. When not specified, the $ delimiter must be used.

Body

application/json

Query request

k
integer
required

Number of results to return

Required range: x >= 0
vector
object
required

Query vector(s) for similarity search. Provide either single_vector or multi_vector, not both.

identity
object

Identity information of a request.

context
object

Arbitrary context for a request as key-value pairs. How to use the context is custom to the specific implementation.

REST NAMESPACE ONLY Context entries are passed via HTTP headers using the naming convention x-lance-ctx-<key>: <value>. For example, a context entry {"trace_id": "abc123"} would be sent as the header x-lance-ctx-trace_id: abc123.

id
string[]
bypass_vector_index
boolean

Whether to bypass vector index

columns
object

Optional columns to return. Provide either column_names or column_aliases, not both.

distance_type
string

Distance metric to use

ef
integer

Search effort parameter for HNSW index

Required range: x >= 0

Whether to use fast search

filter
string

Optional SQL filter expression

full_text_query
object

Optional full-text search query. Provide either string_query or structured_query, not both.

lower_bound
number<float>

Lower bound for search

nprobes
integer

Number of probes for IVF index

Required range: x >= 0
offset
integer

Number of results to skip

Required range: x >= 0
prefilter
boolean

Whether to apply filtering before vector search

refine_factor
integer<int32>

Refine factor for search

Required range: x >= 0
upper_bound
number<float>

Upper bound for search

vector_column
string

Name of the vector column to search

version
integer<int64>

Table version to query

Required range: x >= 0
with_row_id
boolean

If true, return the row id as a column called _rowid

Response

Query results in Arrow IPC file format

The response is of type file.