Embedding Providers
Embedding providers store API credentials for embedding services used to generate vector embeddings.
Supported Providers
| Provider | Models | Dimensions | Max Tokens |
|---|---|---|---|
openai | text-embedding-3-small | 1536 | 8191 |
openai | text-embedding-3-large | 3072 | 8191 |
openai | text-embedding-ada-002 | 1536 | 8191 |
gemini | gemini-embedding-001 | 3072 | 2048 |
gemini | text-embedding-005 | 768 | 2048 |
gemini | text-embedding-004 | 768 | 2048 |
voyage | voyage-3.5 | 1024 | 32000 |
voyage | voyage-3.5-lite | 512 | 32000 |
voyage | voyage-code-3 | 1024 | 16000 |
voyage | voyage-3-large | 1024 | 32000 |
voyage | voyage-3-lite | 512 | 32000 |
Snowflake platform mode also supports Cortex models (snowflake-arctic-embed-m-v1.5, snowflake-arctic-embed-l-v2.0) without requiring an embedding provider. See the Platform + Snowflake guide.
Endpoints
| Method | Path | Description |
|---|---|---|
| POST | /v1/embedding-providers | Create an embedding provider |
| GET | /v1/embedding-providers | List embedding providers |
| GET | /v1/embedding-providers/{id} | Get an embedding provider |
| PUT | /v1/embedding-providers/{id} | Update an embedding provider |
| DELETE | /v1/embedding-providers/{id} | Delete an embedding provider |
| GET | /v1/embedding-providers/{id}/models | List available models |
Create Embedding Provider
POST /v1/embedding-providers
Auth: API key (full permission)
curl -X POST https://api.embedd.to/v1/embedding-providers \
-H "Authorization: Bearer sk_your_key" \
-H "Content-Type: application/json" \
-d '{
"name": "openai-prod",
"provider": "openai",
"api_key": "sk-proj-...",
"default_model": "text-embedding-3-small"
}'
| Field | Required | Type | Description |
|---|---|---|---|
name | Yes | string | Display name (1-100 chars) |
provider | Yes | string | openai, gemini, or voyage |
api_key | Yes | string | API key for the embedding service |
default_model | No | string | Default model for this provider |
Response (201):
{
"id": "ep_abc123",
"org_id": "org_xyz",
"environment_id": "env_abc123",
"name": "openai-prod",
"provider": "openai",
"default_model": "text-embedding-3-small",
"status": "active",
"created_at": "2026-03-13T10:00:00Z"
}
List Embedding Providers
GET /v1/embedding-providers
Auth: API key (any permission)
Supports cursor-based pagination with limit and cursor query parameters.
Get Embedding Provider
GET /v1/embedding-providers/{provider_id}
Auth: API key (any permission)
Update Embedding Provider
PUT /v1/embedding-providers/{provider_id}
Auth: API key (full permission)
| Field | Required | Type | Description |
|---|---|---|---|
name | No | string | Updated name |
api_key | No | string | Updated API key |
default_model | No | string | Updated default model |
Delete Embedding Provider
DELETE /v1/embedding-providers/{provider_id}
Auth: API key (full permission)
Response: 204 No Content
List Available Models
GET /v1/embedding-providers/{provider_id}/models
Returns the available embedding models for the provider.
Auth: API key (any permission)
Response (200):
{
"models": [
{
"model": "text-embedding-3-small",
"dimensions": 1536,
"max_tokens": 8191,
"provider": "openai"
},
{
"model": "text-embedding-3-large",
"dimensions": 3072,
"max_tokens": 8191,
"provider": "openai"
},
{
"model": "text-embedding-ada-002",
"dimensions": 1536,
"max_tokens": 8191,
"provider": "openai"
}
]
}