Endpoints

Upsert Vectors

Upserts (inserts or updates) the vector.

The vector will be upserted into the default namespace by default. You can use a different namespace by specifying it in the request path.

Request

You can either upsert a single vector, or multiple vectors in an array.

idbodystringrequired

The id of the vector.

vectorbodynumber[]

The dense vector value for dense and hybrid indexes.

The vector should have the same dimensions as your index.

sparseVectorbodyObject[]

The sparse vector value for sparse and hybrid indexes.

metadatabodyObject

The metadata of the vector. This makes identifying vectors on retrieval easier and can be used to with filters on queries.

databodystring

The data of the vector. This is an unstructured raw text data, which can be anything associated with this vector.

For dense indexes, only vector should be provided, and sparseVector should not be set.

For sparse indexes, only sparseVector should be provided, and vector should not be set.

For hybrid indexes both of vector and sparseVector must be present.

Path

namespacepathstringdefault:

The namespace to use. When no namespace is specified, the default namespace will be used.

Response

resultstring

"Success" string.

curl
curl $UPSTASH_VECTOR_REST_URL/upsert \  -X POST \  -H "Authorization: Bearer $UPSTASH_VECTOR_REST_TOKEN" \  -d '[     { "id": "id-0", "vector": [0.1, 0.2], "metadata": { "link": "upstash.com" } },     { "id": "id-1", "vector": [0.2, 0.3] }  ]'
curl (Namespace)
curl $UPSTASH_VECTOR_REST_URL/upsert/ns \  -X POST \  -H "Authorization: Bearer $UPSTASH_VECTOR_REST_TOKEN" \  -d '{ "id": "id-2", "vector": [0.1, 0.2], "metadata": { "link": "upstash.com" } }'
200 OK
{    "result": "Success"}
422 Unprocessable Entity
{    "error": "Invalid vector dimension: 2, expected: 256",    "status": 422}
Loading search…