Create Knowledge Base
Create a knowledge base pipeline, optionally deploying it.
Set deploy=false to save as draft without deploying to Flink.
/knowledge-bases/configAuthorizationBearer token · headerrequireddeploybooleanapplication/jsonnamestringrequiredKnowledge base display name
descriptionstring | nullHuman-readable context
Show propertiesHide properties
stringnullsourceKBSourceConfigrequiredKafka source configuration for the knowledge base pipeline.
Exactly one of topic or topicPattern must be set:
topic— exact Kafka topic name. This is what the Streamkap app sets.topicPattern— a regex for reading several topics (e.g. fan-in of a sharded topic family). Available through the API only.
Setting neither or both returns 422.
Show propertiesHide properties
topicstring | nullExact Kafka topic name, 3 to 249 characters (249 is Kafka's own limit). Mutually exclusive with topicPattern.
Show propertiesHide properties
stringnulltopicPatternstring | nullRegex pattern for input topics, e.g. ^source_.*\.orders$. Mutually exclusive with topic — set this only for programmatic multi-topic fan-in.
Show propertiesHide properties
stringnullinputSerializationAgentSerializationEnumInput deserialization format
JsonConfluentAvroConfluentfieldsstring[] | nullColumn-level filter — only these fields processed
Show propertiesHide properties
stringstringnulltextFieldsstring[] | nullFields to include in the embedded text (if not using textTemplate)
Show propertiesHide properties
stringstringnullmetadataFieldsstring[] | nullFields to store as vector metadata (filterable at query time)
Show propertiesHide properties
stringstringnulltextKBTextConfigText template configuration
Show propertiesHide properties
textTemplatestringTemplate with ${field} placeholders, e.g. 'Customer ${customer_id} ordered ${product}'
embeddingKBEmbeddingConfigrequiredEmbedding-side configuration for a knowledge base.
Carries a reference to a saved AgentLlmConnection plus optional
per-KB overrides of the connection's defaults. Credentials, provider,
and the default model live on the connection — a KB cannot carry an
inline apiKey / baseUrl. At deploy time Streamkap reads the referenced
connection's embedding defaults and applies any per-KB overrides.
The referenced connection must carry 'embedding' in its
capabilities list and have a non-empty embedding.model;
otherwise the deploy fails with 422 naming the cause.
Show propertiesHide properties
embeddingConnectionIdstringrequiredReference to a saved AgentLlmConnection. The connection must advertise the 'embedding' capability.
modelstring | nullPer-KB embedding-model override. None = use the connection's default embedding model (embedding.model on the saved row).
Show propertiesHide properties
stringnulldimensionsinteger | nullPer-KB dimensions override. None = use the connection's default (embedding.dimensions on the saved row), or the provider default when neither is set.
Show propertiesHide properties
integernullbatchSizeinteger | nullPer-KB batchSize override. None = use the connection's default (embedding.batchSize on the saved row, falls back to 100).
Show propertiesHide properties
integernullvectorStoreKBVectorStoreConfigrequiredVector store configuration for the knowledge base.
References a saved AgentVectorStoreConnection by id; Streamkap
resolves its credentials server-side at deploy time. A KB cannot carry
inline vector-store credentials.
Show propertiesHide properties
vectorStoreConnectionIdstringrequiredReference to a saved AgentVectorStoreConnection. Credentials are resolved at deploy time.
indexNamestringrequiredIndex or collection name in the vector store
namespacestring | nullNamespace or partition within the index
Show propertiesHide properties
stringnullmetricstringDistance metric
cosinedot_producteuclideanprocessingKBProcessingConfigProcessing configuration for the knowledge base pipeline.
Show propertiesHide properties
parallelismintegerFlink parallelism
checkpointIntervalMinintegerCheckpoint interval in minutes
chunkSizeintegerText chunk size in tokens
chunkOverlapintegerOverlap tokens between chunks
Successful Response
_idstringrequirednamestringrequiredjob_typeapp__models__api__agents_api_models__flink_jobs__FlinkJobTypeEnumrequiredpyflinkjaragent_configknowledge_basestatusFlinkJobStatusEnumrequiredCREATEDDEPLOYINGRUNNINGCANCELLINGCANCELLEDFAILEDFINISHEDdesired_statusFlinkJobStatusEnum | nullShow propertiesHide properties
stringnullflink_job_namestringrequiredflink_job_idstring | nullShow propertiesHide properties
stringnullparallelismintegererror_messagestring | nullShow propertiesHide properties
stringnullagent_configobject | nullKB config (secrets masked)
Show propertiesHide properties
objectnullcreated_bystring | nullShow propertiesHide properties
stringnullcreated_timestampstring<date-time> | nullShow propertiesHide properties
string<date-time>nullupdated_timestampstring<date-time> | nullShow propertiesHide properties
string<date-time>nullValidation Error
detailValidationError[]Show propertiesHide properties
ValidationErrorlocstring | integer[]requiredShow propertiesHide properties
string | integerstringintegermsgstringrequiredtypestringrequiredinputanyctxobject