ChromaDB REST API
Open-source AI-native embedding database for LLM apps
ChromaDB is an open-source vector database designed for AI applications that need to store and retrieve embeddings efficiently. It provides semantic search capabilities, integrates seamlessly with LLMs, and offers a simple API for managing collections of embeddings with metadata filtering. Developers use ChromaDB to build RAG systems, semantic search engines, and AI-powered applications that require fast similarity search over high-dimensional vectors.
https://api.chromadb.com/v1
API Endpoints
| Method | Endpoint | Description |
|---|---|---|
| GET | /heartbeat | Check if the ChromaDB server is running and responsive |
| POST | /collections | Create a new collection for storing embeddings with specified metadata |
| GET | /collections | List all collections in the database with their configurations |
| GET | /collections/{collection_id} | Get details about a specific collection including count and metadata |
| DELETE | /collections/{collection_id} | Delete a collection and all its embeddings permanently |
| POST | /collections/{collection_id}/add | Add embeddings, documents, and metadata to a collection |
| POST | /collections/{collection_id}/update | Update existing embeddings, documents, or metadata in a collection |
| POST | /collections/{collection_id}/upsert | Insert or update embeddings based on IDs in a collection |
| POST | /collections/{collection_id}/query | Perform similarity search using query embeddings with filters |
| POST | /collections/{collection_id}/get | Retrieve embeddings by IDs or filter criteria from a collection |
| POST | /collections/{collection_id}/delete | Delete specific embeddings from a collection by IDs or filters |
| POST | /collections/{collection_id}/count | Get the count of embeddings in a collection matching filters |
| GET | /version | Get the ChromaDB server version information |
| POST | /tenants | Create a new tenant for multi-tenancy support |
| GET | /tenants | List all tenants in the ChromaDB instance |
Code Examples
# Create a collection
curl -X POST https://api.chromadb.com/v1/collections \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"name": "document_embeddings",
"metadata": {"description": "Product documentation embeddings"},
"embedding_function": "default"
}'
# Add embeddings to collection
curl -X POST https://api.chromadb.com/v1/collections/doc_collection_id/add \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"embeddings": [[0.1, 0.2, 0.3], [0.4, 0.5, 0.6]],
"documents": ["First document text", "Second document text"],
"metadatas": [{"source": "docs"}, {"source": "blog"}],
"ids": ["doc1", "doc2"]
}'
# Query for similar embeddings
curl -X POST https://api.chromadb.com/v1/collections/doc_collection_id/query \
-H 'Authorization: Bearer YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{
"query_embeddings": [[0.15, 0.25, 0.35]],
"n_results": 5,
"where": {"source": "docs"}
}'
Connect ChromaDB to AI
Deploy a ChromaDB MCP server on IOX Cloud and connect it to Claude, ChatGPT, Cursor, or any AI client. Your AI assistant gets direct access to ChromaDB through these tools:
chromadb_create_collection
Create a new ChromaDB collection with specified name and metadata for organizing embeddings
chromadb_add_embeddings
Add document embeddings with metadata to a collection for semantic search and retrieval
chromadb_semantic_search
Perform similarity search across embeddings using query vectors with optional metadata filters
chromadb_retrieve_documents
Retrieve documents and embeddings by IDs or metadata filters from a collection
chromadb_delete_embeddings
Delete specific embeddings from a collection by IDs or matching metadata criteria
Deploy in 60 seconds
Describe what you need, AI generates the code, and IOX deploys it globally.
Deploy ChromaDB MCP Server →