API Endpoint
Point Structure
Each point has the following structure:integer | string
required
Unique identifier for the point. Can be an integer or UUID string.
array | object
required
Vector data. Can be a simple array for single vectors or an object with named vectors.
object
Optional JSON object with additional data associated with the point.
Insert a Single Point
Insert Multiple Points (Batch)
Batch insertion is more efficient for inserting multiple points at once.Insert Points with Named Vectors
For collections with multiple named vectors, specify each vector separately.Insert Points Using Batch Format
The batch format is more efficient for inserting many points with the same structure.Query Parameters
boolean
default:"true"
If
true, wait for changes to actually happen. If false, return immediately after the request is accepted.string
Define ordering guarantees for the operation:
weak- No ordering guaranteesmedium- Operations are ordered within a single nodestrong- Operations are ordered across all nodes
integer
Timeout for the operation in seconds.
Using the Wait Parameter
- Wait for completion
- Return immediately
Setting
wait=false provides lower latency but points may not be immediately available for search.Response Format
object
string
Overall response status, typically “ok”.
number
Time taken to execute the operation in seconds.
Response Example
Update Modes
Control how points are inserted or updated:string
default:"upsert"
upsert- Insert new points and update existing ones (default)insert_only- Only insert new points, skip existing onesupdate_only- Only update existing points, skip new ones
Best Practices
- Batch Size: Insert points in batches of 100-1000 for optimal performance
- Wait Parameter: Use
wait=falsefor bulk uploads to improve throughput - Payload Size: Keep payloads reasonably sized (< 1MB per point) for best performance
- IDs: Use sequential integers or UUIDs; avoid very long string IDs