Skip to main content
POST
/
v1
/
table
/
{id}
/
create_scalar_index
Create a scalar index on a table
curl --request POST \
  --url {scheme}://{host}:{port}/{basePath}/v1/table/{id}/create_scalar_index \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "column": "<string>",
  "index_type": "<string>",
  "identity": {
    "api_key": "<string>",
    "auth_token": "<string>"
  },
  "context": {},
  "id": [
    "<string>"
  ],
  "name": "<string>",
  "distance_type": "<string>",
  "with_position": true,
  "base_tokenizer": "<string>",
  "language": "<string>",
  "max_token_length": 1,
  "lower_case": true,
  "stem": true,
  "remove_stop_words": true,
  "ascii_folding": true
}
'
{
  "transaction_id": "<string>"
}

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

Scalar index creation request

column
string
required

Name of the column to create index on

index_type
string
required

Type of index to create (e.g., BTREE, BITMAP, LABEL_LIST, IVF_FLAT, IVF_PQ, IVF_HNSW_SQ, FTS)

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[]
name
string | null

Optional name for the index. If not provided, a name will be auto-generated.

distance_type
string

Distance metric type for vector indexes (e.g., l2, cosine, dot)

with_position
boolean | null

Optional FTS parameter for position tracking

base_tokenizer
string | null

Optional FTS parameter for base tokenizer

language
string | null

Optional FTS parameter for language

max_token_length
integer | null

Optional FTS parameter for maximum token length

Required range: x >= 0
lower_case
boolean | null

Optional FTS parameter for lowercase conversion

stem
boolean | null

Optional FTS parameter for stemming

remove_stop_words
boolean | null

Optional FTS parameter for stop word removal

ascii_folding
boolean | null

Optional FTS parameter for ASCII folding

Response

Scalar index created successfully

Response for create scalar index operation

transaction_id
string

Optional transaction identifier