The Vector Search API provides a fully-managed, highly performant, and scalable vector database designed to power next-generation search, recommendation, and generative AI applications. It allows you to store, index, and query your data and its corresponding vector embeddings through a simple, intuitive interface. With Vector Search, you can define custom schemas for your data, insert objects with associated metadata, automatically generate embeddings from your data, and perform fast approximate nearest neighbor (ANN) searches to find semantically similar items at scale.
Service: vectorsearch.googleapis.com
To call this service, we recommend that you use the Google-provided client libraries . If your application needs to use your own libraries to call this service, use the following information when you make the API requests.
Discovery document
A Discovery Document is a machine-readable specification for describing and consuming REST APIs. It is used to build client libraries, IDE plugins, and other tools that interact with Google APIs. One service may provide multiple discovery documents. This service provides the following discovery documents:
Service endpoint
A service endpoint is a base URL that specifies the network address of an API service. One service might have multiple service endpoints. This service has the following service endpoint and all URIs below are relative to this service endpoint:
-
https://vectorsearch.googleapis.com
REST Resource: v1.projects.locations
| Methods | |
|---|---|
get
|
GET /v1/{name}
Gets information about a location. |
list
|
GET /v1/{name}/locations
Lists information about the supported locations for this service. |
REST Resource: v1.projects.locations.collections
| Methods | |
|---|---|
create
|
POST /v1/{parent}/collections
Creates a new Collection in a given project and location. |
delete
|
DELETE /v1/{name}
Deletes a single Collection. |
exportDataObjects
|
POST /v1/{name}:exportDataObjects
Initiates a Long-Running Operation to export DataObjects from a Collection. |
get
|
GET /v1/{name}
Gets details of a single Collection. |
importDataObjects
|
POST /v1/{name}:importDataObjects
Initiates a Long-Running Operation to import DataObjects into a Collection. |
list
|
GET /v1/{parent}/collections
Lists Collections in a given project and location. |
patch
|
PATCH /v1/{collection.name}
Updates the parameters of a single Collection. |
REST Resource: v1.projects.locations.collections.dataObjects
| Methods | |
|---|---|
aggregate
|
POST /v1/{parent}/dataObjects:aggregate
Aggregates data objects. |
batchCreate
|
POST /v1/{parent}/dataObjects:batchCreate
Creates a batch of dataObjects. |
batchDelete
|
POST /v1/{parent}/dataObjects:batchDelete
Deletes dataObjects in a batch. |
batchSearch
|
POST /v1/{parent}/dataObjects:batchSearch
Batch searches data objects. |
batchUpdate
|
POST /v1/{parent}/dataObjects:batchUpdate
Updates dataObjects in a batch. |
create
|
POST /v1/{parent}/dataObjects
Creates a dataObject. |
delete
|
DELETE /v1/{name}
Deletes a dataObject. |
get
|
GET /v1/{name}
Gets a data object. |
patch
|
PATCH /v1/{dataObject.name}
Updates a dataObject. |
query
|
POST /v1/{parent}/dataObjects:query
Queries data objects. |
search
|
POST /v1/{parent}/dataObjects:search
Searches data objects. |
REST Resource: v1.projects.locations.collections.indexes
| Methods | |
|---|---|
create
|
POST /v1/{parent}/indexes
Creates a new Index in a given project and location. |
delete
|
DELETE /v1/{name}
Deletes a single Index. |
get
|
GET /v1/{name}
Gets details of a single Index. |
list
|
GET /v1/{parent}/indexes
Lists Indexes in a given project and location. |
REST Resource: v1.projects.locations.operations
| Methods | |
|---|---|
cancel
|
POST /v1/{name}:cancel
Starts asynchronous cancellation on a long-running operation. |
delete
|
DELETE /v1/{name}
Deletes a long-running operation. |
get
|
GET /v1/{name}
Gets the latest state of a long-running operation. |
list
|
GET /v1/{name}/operations
Lists operations that match the specified filter in the request. |
REST Resource: v1beta.projects.locations
| Methods | |
|---|---|
get
|
GET /v1beta/{name}
Gets information about a location. |
list
|
GET /v1beta/{name}/locations
Lists information about the supported locations for this service. |
REST Resource: v1beta.projects.locations.collections
| Methods | |
|---|---|
create
|
POST /v1beta/{parent}/collections
Creates a new Collection in a given project and location. |
delete
|
DELETE /v1beta/{name}
Deletes a single Collection. |
exportDataObjects
|
POST /v1beta/{name}:exportDataObjects
Initiates a Long-Running Operation to export DataObjects from a Collection. |
get
|
GET /v1beta/{name}
Gets details of a single Collection. |
importDataObjects
|
POST /v1beta/{name}:importDataObjects
Initiates a Long-Running Operation to import DataObjects into a Collection. |
list
|
GET /v1beta/{parent}/collections
Lists Collections in a given project and location. |
patch
|
PATCH /v1beta/{collection.name}
Updates the parameters of a single Collection. |
REST Resource: v1beta.projects.locations.collections.dataObjects
| Methods | |
|---|---|
aggregate
|
POST /v1beta/{parent}/dataObjects:aggregate
Aggregates data objects. |
batchCreate
|
POST /v1beta/{parent}/dataObjects:batchCreate
Creates a batch of dataObjects. |
batchDelete
|
POST /v1beta/{parent}/dataObjects:batchDelete
Deletes dataObjects in a batch. |
batchSearch
|
POST /v1beta/{parent}/dataObjects:batchSearch
Batch searches data objects. |
batchUpdate
|
POST /v1beta/{parent}/dataObjects:batchUpdate
Updates dataObjects in a batch. |
create
|
POST /v1beta/{parent}/dataObjects
Creates a dataObject. |
delete
|
DELETE /v1beta/{name}
Deletes a dataObject. |
get
|
GET /v1beta/{name}
Gets a data object. |
patch
|
PATCH /v1beta/{dataObject.name}
Updates a dataObject. |
query
|
POST /v1beta/{parent}/dataObjects:query
Queries data objects. |
search
|
POST /v1beta/{parent}/dataObjects:search
Searches data objects. |
REST Resource: v1beta.projects.locations.collections.indexes
| Methods | |
|---|---|
create
|
POST /v1beta/{parent}/indexes
Creates a new Index in a given project and location. |
delete
|
DELETE /v1beta/{name}
Deletes a single Index. |
get
|
GET /v1beta/{name}
Gets details of a single Index. |
list
|
GET /v1beta/{parent}/indexes
Lists Indexes in a given project and location. |
REST Resource: v1beta.projects.locations.operations
| Methods | |
|---|---|
cancel
|
POST /v1beta/{name}:cancel
Starts asynchronous cancellation on a long-running operation. |
delete
|
DELETE /v1beta/{name}
Deletes a long-running operation. |
get
|
GET /v1beta/{name}
Gets the latest state of a long-running operation. |
list
|
GET /v1beta/{name}/operations
Lists operations that match the specified filter in the request. |

