curl -X PUT https://api.example.com/api/knowledge/settings \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"projectId": "proj_123",
"settings": {
"vectorstoreProvider": "pinecone",
"vectorStoreConfig": {
"apiKey": "pc-xxxxxxxxxxxxx",
"environment": "us-east-1",
"indexName": "my-index"
},
"embeddingModel": "text-embedding-3-small",
"chunkSize": 512,
"chunkOverlap": 50,
"searchType": "semantic",
"topK": 5,
"minScore": 0.7
}
}'
const response = await fetch('https://api.example.com/api/knowledge/settings', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
projectId: 'proj_123',
settings: {
vectorstoreProvider: 'pinecone',
vectorStoreConfig: {
apiKey: 'pc-xxxxxxxxxxxxx',
environment: 'us-east-1',
indexName: 'my-index'
},
embeddingModel: 'text-embedding-3-small',
chunkSize: 512,
chunkOverlap: 50,
searchType: 'semantic',
topK: 5,
minScore: 0.7
}
})
});
const data = await response.json();
import requests
response = requests.put(
'https://api.example.com/api/knowledge/settings',
headers={
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'projectId': 'proj_123',
'settings': {
'vectorstoreProvider': 'pinecone',
'vectorStoreConfig': {
'apiKey': 'pc-xxxxxxxxxxxxx',
'environment': 'us-east-1',
'indexName': 'my-index'
},
'embeddingModel': 'text-embedding-3-small',
'chunkSize': 512,
'chunkOverlap': 50,
'searchType': 'semantic',
'topK': 5,
'minScore': 0.7
}
}
)
data = response.json()
{
"success": true,
"message": "RAG settings updated successfully"
}
{
"success": false,
"message": "Invalid vectorstore configuration: API key is required"
}
Configuration
Update RAG Settings
Updates RAG configuration settings for a project
PUT
/
api
/
knowledge
/
settings
curl -X PUT https://api.example.com/api/knowledge/settings \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"projectId": "proj_123",
"settings": {
"vectorstoreProvider": "pinecone",
"vectorStoreConfig": {
"apiKey": "pc-xxxxxxxxxxxxx",
"environment": "us-east-1",
"indexName": "my-index"
},
"embeddingModel": "text-embedding-3-small",
"chunkSize": 512,
"chunkOverlap": 50,
"searchType": "semantic",
"topK": 5,
"minScore": 0.7
}
}'
const response = await fetch('https://api.example.com/api/knowledge/settings', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
projectId: 'proj_123',
settings: {
vectorstoreProvider: 'pinecone',
vectorStoreConfig: {
apiKey: 'pc-xxxxxxxxxxxxx',
environment: 'us-east-1',
indexName: 'my-index'
},
embeddingModel: 'text-embedding-3-small',
chunkSize: 512,
chunkOverlap: 50,
searchType: 'semantic',
topK: 5,
minScore: 0.7
}
})
});
const data = await response.json();
import requests
response = requests.put(
'https://api.example.com/api/knowledge/settings',
headers={
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'projectId': 'proj_123',
'settings': {
'vectorstoreProvider': 'pinecone',
'vectorStoreConfig': {
'apiKey': 'pc-xxxxxxxxxxxxx',
'environment': 'us-east-1',
'indexName': 'my-index'
},
'embeddingModel': 'text-embedding-3-small',
'chunkSize': 512,
'chunkOverlap': 50,
'searchType': 'semantic',
'topK': 5,
'minScore': 0.7
}
}
)
data = response.json()
{
"success": true,
"message": "RAG settings updated successfully"
}
{
"success": false,
"message": "Invalid vectorstore configuration: API key is required"
}
Request Body
string
required
Project ID to update settings for
object
required
RAG configuration settings
Show Settings Object
Show Settings Object
string
Vector store provider (pinecone, weaviate, qdrant, chroma)
object
Provider-specific configuration including API keys, endpoints, etc.
string
Embedding model name (e.g., text-embedding-3-small, text-embedding-3-large)
number
Document chunk size in tokens (recommended: 256-1024)
number
Overlap between chunks in tokens (recommended: 10-20% of chunkSize)
string
Default search type: semantic, mrr, or hybrid
number
Default number of results to return (recommended: 3-10)
number
Minimum similarity score threshold (0-1, recommended: 0.5-0.7)
Response
boolean
Whether the update was successful
string
Status message or error details
curl -X PUT https://api.example.com/api/knowledge/settings \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"projectId": "proj_123",
"settings": {
"vectorstoreProvider": "pinecone",
"vectorStoreConfig": {
"apiKey": "pc-xxxxxxxxxxxxx",
"environment": "us-east-1",
"indexName": "my-index"
},
"embeddingModel": "text-embedding-3-small",
"chunkSize": 512,
"chunkOverlap": 50,
"searchType": "semantic",
"topK": 5,
"minScore": 0.7
}
}'
const response = await fetch('https://api.example.com/api/knowledge/settings', {
method: 'PUT',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
projectId: 'proj_123',
settings: {
vectorstoreProvider: 'pinecone',
vectorStoreConfig: {
apiKey: 'pc-xxxxxxxxxxxxx',
environment: 'us-east-1',
indexName: 'my-index'
},
embeddingModel: 'text-embedding-3-small',
chunkSize: 512,
chunkOverlap: 50,
searchType: 'semantic',
topK: 5,
minScore: 0.7
}
})
});
const data = await response.json();
import requests
response = requests.put(
'https://api.example.com/api/knowledge/settings',
headers={
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
json={
'projectId': 'proj_123',
'settings': {
'vectorstoreProvider': 'pinecone',
'vectorStoreConfig': {
'apiKey': 'pc-xxxxxxxxxxxxx',
'environment': 'us-east-1',
'indexName': 'my-index'
},
'embeddingModel': 'text-embedding-3-small',
'chunkSize': 512,
'chunkOverlap': 50,
'searchType': 'semantic',
'topK': 5,
'minScore': 0.7
}
}
)
data = response.json()
{
"success": true,
"message": "RAG settings updated successfully"
}
{
"success": false,
"message": "Invalid vectorstore configuration: API key is required"
}
⌘I

