curl --request POST \
--url https://api.streamkap.com/agents/config \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"input": {
"topicPattern": "<string>",
"inputSerialization": "JsonConfluent",
"fields": [
"<string>"
],
"createTableSQL": "<string>",
"filterSQL": "<string>"
},
"output": {
"topic": "<string>",
"deadLetterTopic": "<string>",
"outputSerialization": "JsonConfluent",
"schema": {}
},
"llm": {
"model": "<string>",
"apiKey": "",
"llmConnectionId": "<string>",
"baseUrl": "<string>",
"temperature": 1,
"maxTokens": 50000,
"timeout": 300,
"thinkingBudgetTokens": 32000,
"ollamaThink": true,
"maxRetries": 10,
"region": "<string>",
"strict": true,
"store": true,
"instructions": "<string>",
"additionalKwargs": {},
"apiVersion": "<string>",
"azureEndpoint": "<string>"
},
"prompts": {
"system": "",
"customInstructions": "",
"user": "<record>{input_json}</record>"
},
"description": "<string>",
"enabled": true,
"agentType": "workflow",
"mcpServer": {
"projectKeyId": "<string>",
"serverUrl": "<string>",
"headers": {}
},
"tools": [
{
"name": "<string>",
"description": "",
"config": {},
"parameters": [
{
"name": "<string>",
"type": "string",
"description": ""
}
]
}
],
"memory": {
"keyField": "<string>",
"shortTerm": {
"enabled": false,
"ttlMs": 3600000,
"maxEntries": 20
},
"longTerm": {
"enabled": false,
"vectorStoreConnectionId": "<string>",
"namespace": "<string>",
"destinationId": "<string>"
}
},
"knowledgeBases": [
{
"id": "<string>",
"name": ""
}
],
"processing": {
"parallelism": 1,
"checkpointIntervalMin": 5,
"maxIterations": 10,
"maxTokensPerHour": 0
}
}
'import requests
url = "https://api.streamkap.com/agents/config"
payload = {
"name": "<string>",
"input": {
"topicPattern": "<string>",
"inputSerialization": "JsonConfluent",
"fields": ["<string>"],
"createTableSQL": "<string>",
"filterSQL": "<string>"
},
"output": {
"topic": "<string>",
"deadLetterTopic": "<string>",
"outputSerialization": "JsonConfluent",
"schema": {}
},
"llm": {
"model": "<string>",
"apiKey": "",
"llmConnectionId": "<string>",
"baseUrl": "<string>",
"temperature": 1,
"maxTokens": 50000,
"timeout": 300,
"thinkingBudgetTokens": 32000,
"ollamaThink": True,
"maxRetries": 10,
"region": "<string>",
"strict": True,
"store": True,
"instructions": "<string>",
"additionalKwargs": {},
"apiVersion": "<string>",
"azureEndpoint": "<string>"
},
"prompts": {
"system": "",
"customInstructions": "",
"user": "<record>{input_json}</record>"
},
"description": "<string>",
"enabled": True,
"agentType": "workflow",
"mcpServer": {
"projectKeyId": "<string>",
"serverUrl": "<string>",
"headers": {}
},
"tools": [
{
"name": "<string>",
"description": "",
"config": {},
"parameters": [
{
"name": "<string>",
"type": "string",
"description": ""
}
]
}
],
"memory": {
"keyField": "<string>",
"shortTerm": {
"enabled": False,
"ttlMs": 3600000,
"maxEntries": 20
},
"longTerm": {
"enabled": False,
"vectorStoreConnectionId": "<string>",
"namespace": "<string>",
"destinationId": "<string>"
}
},
"knowledgeBases": [
{
"id": "<string>",
"name": ""
}
],
"processing": {
"parallelism": 1,
"checkpointIntervalMin": 5,
"maxIterations": 10,
"maxTokensPerHour": 0
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
input: {
topicPattern: '<string>',
inputSerialization: 'JsonConfluent',
fields: ['<string>'],
createTableSQL: '<string>',
filterSQL: '<string>'
},
output: {
topic: '<string>',
deadLetterTopic: '<string>',
outputSerialization: 'JsonConfluent',
schema: {}
},
llm: {
model: '<string>',
apiKey: '',
llmConnectionId: '<string>',
baseUrl: '<string>',
temperature: 1,
maxTokens: 50000,
timeout: 300,
thinkingBudgetTokens: 32000,
ollamaThink: true,
maxRetries: 10,
region: '<string>',
strict: true,
store: true,
instructions: '<string>',
additionalKwargs: {},
apiVersion: '<string>',
azureEndpoint: '<string>'
},
prompts: {system: '', customInstructions: '', user: '<record>{input_json}</record>'},
description: '<string>',
enabled: true,
agentType: 'workflow',
mcpServer: {projectKeyId: '<string>', serverUrl: '<string>', headers: {}},
tools: [
{
name: '<string>',
description: '',
config: {},
parameters: [{name: '<string>', type: 'string', description: ''}]
}
],
memory: {
keyField: '<string>',
shortTerm: {enabled: false, ttlMs: 3600000, maxEntries: 20},
longTerm: {
enabled: false,
vectorStoreConnectionId: '<string>',
namespace: '<string>',
destinationId: '<string>'
}
},
knowledgeBases: [{id: '<string>', name: ''}],
processing: {
parallelism: 1,
checkpointIntervalMin: 5,
maxIterations: 10,
maxTokensPerHour: 0
}
})
};
fetch('https://api.streamkap.com/agents/config', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.streamkap.com/agents/config",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'input' => [
'topicPattern' => '<string>',
'inputSerialization' => 'JsonConfluent',
'fields' => [
'<string>'
],
'createTableSQL' => '<string>',
'filterSQL' => '<string>'
],
'output' => [
'topic' => '<string>',
'deadLetterTopic' => '<string>',
'outputSerialization' => 'JsonConfluent',
'schema' => [
]
],
'llm' => [
'model' => '<string>',
'apiKey' => '',
'llmConnectionId' => '<string>',
'baseUrl' => '<string>',
'temperature' => 1,
'maxTokens' => 50000,
'timeout' => 300,
'thinkingBudgetTokens' => 32000,
'ollamaThink' => true,
'maxRetries' => 10,
'region' => '<string>',
'strict' => true,
'store' => true,
'instructions' => '<string>',
'additionalKwargs' => [
],
'apiVersion' => '<string>',
'azureEndpoint' => '<string>'
],
'prompts' => [
'system' => '',
'customInstructions' => '',
'user' => '<record>{input_json}</record>'
],
'description' => '<string>',
'enabled' => true,
'agentType' => 'workflow',
'mcpServer' => [
'projectKeyId' => '<string>',
'serverUrl' => '<string>',
'headers' => [
]
],
'tools' => [
[
'name' => '<string>',
'description' => '',
'config' => [
],
'parameters' => [
[
'name' => '<string>',
'type' => 'string',
'description' => ''
]
]
]
],
'memory' => [
'keyField' => '<string>',
'shortTerm' => [
'enabled' => false,
'ttlMs' => 3600000,
'maxEntries' => 20
],
'longTerm' => [
'enabled' => false,
'vectorStoreConnectionId' => '<string>',
'namespace' => '<string>',
'destinationId' => '<string>'
]
],
'knowledgeBases' => [
[
'id' => '<string>',
'name' => ''
]
],
'processing' => [
'parallelism' => 1,
'checkpointIntervalMin' => 5,
'maxIterations' => 10,
'maxTokensPerHour' => 0
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.streamkap.com/agents/config"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"input\": {\n \"topicPattern\": \"<string>\",\n \"inputSerialization\": \"JsonConfluent\",\n \"fields\": [\n \"<string>\"\n ],\n \"createTableSQL\": \"<string>\",\n \"filterSQL\": \"<string>\"\n },\n \"output\": {\n \"topic\": \"<string>\",\n \"deadLetterTopic\": \"<string>\",\n \"outputSerialization\": \"JsonConfluent\",\n \"schema\": {}\n },\n \"llm\": {\n \"model\": \"<string>\",\n \"apiKey\": \"\",\n \"llmConnectionId\": \"<string>\",\n \"baseUrl\": \"<string>\",\n \"temperature\": 1,\n \"maxTokens\": 50000,\n \"timeout\": 300,\n \"thinkingBudgetTokens\": 32000,\n \"ollamaThink\": true,\n \"maxRetries\": 10,\n \"region\": \"<string>\",\n \"strict\": true,\n \"store\": true,\n \"instructions\": \"<string>\",\n \"additionalKwargs\": {},\n \"apiVersion\": \"<string>\",\n \"azureEndpoint\": \"<string>\"\n },\n \"prompts\": {\n \"system\": \"\",\n \"customInstructions\": \"\",\n \"user\": \"<record>{input_json}</record>\"\n },\n \"description\": \"<string>\",\n \"enabled\": true,\n \"agentType\": \"workflow\",\n \"mcpServer\": {\n \"projectKeyId\": \"<string>\",\n \"serverUrl\": \"<string>\",\n \"headers\": {}\n },\n \"tools\": [\n {\n \"name\": \"<string>\",\n \"description\": \"\",\n \"config\": {},\n \"parameters\": [\n {\n \"name\": \"<string>\",\n \"type\": \"string\",\n \"description\": \"\"\n }\n ]\n }\n ],\n \"memory\": {\n \"keyField\": \"<string>\",\n \"shortTerm\": {\n \"enabled\": false,\n \"ttlMs\": 3600000,\n \"maxEntries\": 20\n },\n \"longTerm\": {\n \"enabled\": false,\n \"vectorStoreConnectionId\": \"<string>\",\n \"namespace\": \"<string>\",\n \"destinationId\": \"<string>\"\n }\n },\n \"knowledgeBases\": [\n {\n \"id\": \"<string>\",\n \"name\": \"\"\n }\n ],\n \"processing\": {\n \"parallelism\": 1,\n \"checkpointIntervalMin\": 5,\n \"maxIterations\": 10,\n \"maxTokensPerHour\": 0\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.streamkap.com/agents/config")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"input\": {\n \"topicPattern\": \"<string>\",\n \"inputSerialization\": \"JsonConfluent\",\n \"fields\": [\n \"<string>\"\n ],\n \"createTableSQL\": \"<string>\",\n \"filterSQL\": \"<string>\"\n },\n \"output\": {\n \"topic\": \"<string>\",\n \"deadLetterTopic\": \"<string>\",\n \"outputSerialization\": \"JsonConfluent\",\n \"schema\": {}\n },\n \"llm\": {\n \"model\": \"<string>\",\n \"apiKey\": \"\",\n \"llmConnectionId\": \"<string>\",\n \"baseUrl\": \"<string>\",\n \"temperature\": 1,\n \"maxTokens\": 50000,\n \"timeout\": 300,\n \"thinkingBudgetTokens\": 32000,\n \"ollamaThink\": true,\n \"maxRetries\": 10,\n \"region\": \"<string>\",\n \"strict\": true,\n \"store\": true,\n \"instructions\": \"<string>\",\n \"additionalKwargs\": {},\n \"apiVersion\": \"<string>\",\n \"azureEndpoint\": \"<string>\"\n },\n \"prompts\": {\n \"system\": \"\",\n \"customInstructions\": \"\",\n \"user\": \"<record>{input_json}</record>\"\n },\n \"description\": \"<string>\",\n \"enabled\": true,\n \"agentType\": \"workflow\",\n \"mcpServer\": {\n \"projectKeyId\": \"<string>\",\n \"serverUrl\": \"<string>\",\n \"headers\": {}\n },\n \"tools\": [\n {\n \"name\": \"<string>\",\n \"description\": \"\",\n \"config\": {},\n \"parameters\": [\n {\n \"name\": \"<string>\",\n \"type\": \"string\",\n \"description\": \"\"\n }\n ]\n }\n ],\n \"memory\": {\n \"keyField\": \"<string>\",\n \"shortTerm\": {\n \"enabled\": false,\n \"ttlMs\": 3600000,\n \"maxEntries\": 20\n },\n \"longTerm\": {\n \"enabled\": false,\n \"vectorStoreConnectionId\": \"<string>\",\n \"namespace\": \"<string>\",\n \"destinationId\": \"<string>\"\n }\n },\n \"knowledgeBases\": [\n {\n \"id\": \"<string>\",\n \"name\": \"\"\n }\n ],\n \"processing\": {\n \"parallelism\": 1,\n \"checkpointIntervalMin\": 5,\n \"maxIterations\": 10,\n \"maxTokensPerHour\": 0\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.streamkap.com/agents/config")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"input\": {\n \"topicPattern\": \"<string>\",\n \"inputSerialization\": \"JsonConfluent\",\n \"fields\": [\n \"<string>\"\n ],\n \"createTableSQL\": \"<string>\",\n \"filterSQL\": \"<string>\"\n },\n \"output\": {\n \"topic\": \"<string>\",\n \"deadLetterTopic\": \"<string>\",\n \"outputSerialization\": \"JsonConfluent\",\n \"schema\": {}\n },\n \"llm\": {\n \"model\": \"<string>\",\n \"apiKey\": \"\",\n \"llmConnectionId\": \"<string>\",\n \"baseUrl\": \"<string>\",\n \"temperature\": 1,\n \"maxTokens\": 50000,\n \"timeout\": 300,\n \"thinkingBudgetTokens\": 32000,\n \"ollamaThink\": true,\n \"maxRetries\": 10,\n \"region\": \"<string>\",\n \"strict\": true,\n \"store\": true,\n \"instructions\": \"<string>\",\n \"additionalKwargs\": {},\n \"apiVersion\": \"<string>\",\n \"azureEndpoint\": \"<string>\"\n },\n \"prompts\": {\n \"system\": \"\",\n \"customInstructions\": \"\",\n \"user\": \"<record>{input_json}</record>\"\n },\n \"description\": \"<string>\",\n \"enabled\": true,\n \"agentType\": \"workflow\",\n \"mcpServer\": {\n \"projectKeyId\": \"<string>\",\n \"serverUrl\": \"<string>\",\n \"headers\": {}\n },\n \"tools\": [\n {\n \"name\": \"<string>\",\n \"description\": \"\",\n \"config\": {},\n \"parameters\": [\n {\n \"name\": \"<string>\",\n \"type\": \"string\",\n \"description\": \"\"\n }\n ]\n }\n ],\n \"memory\": {\n \"keyField\": \"<string>\",\n \"shortTerm\": {\n \"enabled\": false,\n \"ttlMs\": 3600000,\n \"maxEntries\": 20\n },\n \"longTerm\": {\n \"enabled\": false,\n \"vectorStoreConnectionId\": \"<string>\",\n \"namespace\": \"<string>\",\n \"destinationId\": \"<string>\"\n }\n },\n \"knowledgeBases\": [\n {\n \"id\": \"<string>\",\n \"name\": \"\"\n }\n ],\n \"processing\": {\n \"parallelism\": 1,\n \"checkpointIntervalMin\": 5,\n \"maxIterations\": 10,\n \"maxTokensPerHour\": 0\n }\n}"
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"name": "<string>",
"flink_job_name": "<string>",
"flink_job_id": "<string>",
"parallelism": 1,
"error_message": "<string>",
"agent_config": {},
"created_by": "<string>",
"created_timestamp": "2023-11-07T05:31:56Z",
"updated_timestamp": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Create Agent From Config
Create a config-based agent, optionally deploying it.
Set deploy=false to save as draft without deploying.
curl --request POST \
--url https://api.streamkap.com/agents/config \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"input": {
"topicPattern": "<string>",
"inputSerialization": "JsonConfluent",
"fields": [
"<string>"
],
"createTableSQL": "<string>",
"filterSQL": "<string>"
},
"output": {
"topic": "<string>",
"deadLetterTopic": "<string>",
"outputSerialization": "JsonConfluent",
"schema": {}
},
"llm": {
"model": "<string>",
"apiKey": "",
"llmConnectionId": "<string>",
"baseUrl": "<string>",
"temperature": 1,
"maxTokens": 50000,
"timeout": 300,
"thinkingBudgetTokens": 32000,
"ollamaThink": true,
"maxRetries": 10,
"region": "<string>",
"strict": true,
"store": true,
"instructions": "<string>",
"additionalKwargs": {},
"apiVersion": "<string>",
"azureEndpoint": "<string>"
},
"prompts": {
"system": "",
"customInstructions": "",
"user": "<record>{input_json}</record>"
},
"description": "<string>",
"enabled": true,
"agentType": "workflow",
"mcpServer": {
"projectKeyId": "<string>",
"serverUrl": "<string>",
"headers": {}
},
"tools": [
{
"name": "<string>",
"description": "",
"config": {},
"parameters": [
{
"name": "<string>",
"type": "string",
"description": ""
}
]
}
],
"memory": {
"keyField": "<string>",
"shortTerm": {
"enabled": false,
"ttlMs": 3600000,
"maxEntries": 20
},
"longTerm": {
"enabled": false,
"vectorStoreConnectionId": "<string>",
"namespace": "<string>",
"destinationId": "<string>"
}
},
"knowledgeBases": [
{
"id": "<string>",
"name": ""
}
],
"processing": {
"parallelism": 1,
"checkpointIntervalMin": 5,
"maxIterations": 10,
"maxTokensPerHour": 0
}
}
'import requests
url = "https://api.streamkap.com/agents/config"
payload = {
"name": "<string>",
"input": {
"topicPattern": "<string>",
"inputSerialization": "JsonConfluent",
"fields": ["<string>"],
"createTableSQL": "<string>",
"filterSQL": "<string>"
},
"output": {
"topic": "<string>",
"deadLetterTopic": "<string>",
"outputSerialization": "JsonConfluent",
"schema": {}
},
"llm": {
"model": "<string>",
"apiKey": "",
"llmConnectionId": "<string>",
"baseUrl": "<string>",
"temperature": 1,
"maxTokens": 50000,
"timeout": 300,
"thinkingBudgetTokens": 32000,
"ollamaThink": True,
"maxRetries": 10,
"region": "<string>",
"strict": True,
"store": True,
"instructions": "<string>",
"additionalKwargs": {},
"apiVersion": "<string>",
"azureEndpoint": "<string>"
},
"prompts": {
"system": "",
"customInstructions": "",
"user": "<record>{input_json}</record>"
},
"description": "<string>",
"enabled": True,
"agentType": "workflow",
"mcpServer": {
"projectKeyId": "<string>",
"serverUrl": "<string>",
"headers": {}
},
"tools": [
{
"name": "<string>",
"description": "",
"config": {},
"parameters": [
{
"name": "<string>",
"type": "string",
"description": ""
}
]
}
],
"memory": {
"keyField": "<string>",
"shortTerm": {
"enabled": False,
"ttlMs": 3600000,
"maxEntries": 20
},
"longTerm": {
"enabled": False,
"vectorStoreConnectionId": "<string>",
"namespace": "<string>",
"destinationId": "<string>"
}
},
"knowledgeBases": [
{
"id": "<string>",
"name": ""
}
],
"processing": {
"parallelism": 1,
"checkpointIntervalMin": 5,
"maxIterations": 10,
"maxTokensPerHour": 0
}
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
input: {
topicPattern: '<string>',
inputSerialization: 'JsonConfluent',
fields: ['<string>'],
createTableSQL: '<string>',
filterSQL: '<string>'
},
output: {
topic: '<string>',
deadLetterTopic: '<string>',
outputSerialization: 'JsonConfluent',
schema: {}
},
llm: {
model: '<string>',
apiKey: '',
llmConnectionId: '<string>',
baseUrl: '<string>',
temperature: 1,
maxTokens: 50000,
timeout: 300,
thinkingBudgetTokens: 32000,
ollamaThink: true,
maxRetries: 10,
region: '<string>',
strict: true,
store: true,
instructions: '<string>',
additionalKwargs: {},
apiVersion: '<string>',
azureEndpoint: '<string>'
},
prompts: {system: '', customInstructions: '', user: '<record>{input_json}</record>'},
description: '<string>',
enabled: true,
agentType: 'workflow',
mcpServer: {projectKeyId: '<string>', serverUrl: '<string>', headers: {}},
tools: [
{
name: '<string>',
description: '',
config: {},
parameters: [{name: '<string>', type: 'string', description: ''}]
}
],
memory: {
keyField: '<string>',
shortTerm: {enabled: false, ttlMs: 3600000, maxEntries: 20},
longTerm: {
enabled: false,
vectorStoreConnectionId: '<string>',
namespace: '<string>',
destinationId: '<string>'
}
},
knowledgeBases: [{id: '<string>', name: ''}],
processing: {
parallelism: 1,
checkpointIntervalMin: 5,
maxIterations: 10,
maxTokensPerHour: 0
}
})
};
fetch('https://api.streamkap.com/agents/config', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.streamkap.com/agents/config",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'name' => '<string>',
'input' => [
'topicPattern' => '<string>',
'inputSerialization' => 'JsonConfluent',
'fields' => [
'<string>'
],
'createTableSQL' => '<string>',
'filterSQL' => '<string>'
],
'output' => [
'topic' => '<string>',
'deadLetterTopic' => '<string>',
'outputSerialization' => 'JsonConfluent',
'schema' => [
]
],
'llm' => [
'model' => '<string>',
'apiKey' => '',
'llmConnectionId' => '<string>',
'baseUrl' => '<string>',
'temperature' => 1,
'maxTokens' => 50000,
'timeout' => 300,
'thinkingBudgetTokens' => 32000,
'ollamaThink' => true,
'maxRetries' => 10,
'region' => '<string>',
'strict' => true,
'store' => true,
'instructions' => '<string>',
'additionalKwargs' => [
],
'apiVersion' => '<string>',
'azureEndpoint' => '<string>'
],
'prompts' => [
'system' => '',
'customInstructions' => '',
'user' => '<record>{input_json}</record>'
],
'description' => '<string>',
'enabled' => true,
'agentType' => 'workflow',
'mcpServer' => [
'projectKeyId' => '<string>',
'serverUrl' => '<string>',
'headers' => [
]
],
'tools' => [
[
'name' => '<string>',
'description' => '',
'config' => [
],
'parameters' => [
[
'name' => '<string>',
'type' => 'string',
'description' => ''
]
]
]
],
'memory' => [
'keyField' => '<string>',
'shortTerm' => [
'enabled' => false,
'ttlMs' => 3600000,
'maxEntries' => 20
],
'longTerm' => [
'enabled' => false,
'vectorStoreConnectionId' => '<string>',
'namespace' => '<string>',
'destinationId' => '<string>'
]
],
'knowledgeBases' => [
[
'id' => '<string>',
'name' => ''
]
],
'processing' => [
'parallelism' => 1,
'checkpointIntervalMin' => 5,
'maxIterations' => 10,
'maxTokensPerHour' => 0
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.streamkap.com/agents/config"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"input\": {\n \"topicPattern\": \"<string>\",\n \"inputSerialization\": \"JsonConfluent\",\n \"fields\": [\n \"<string>\"\n ],\n \"createTableSQL\": \"<string>\",\n \"filterSQL\": \"<string>\"\n },\n \"output\": {\n \"topic\": \"<string>\",\n \"deadLetterTopic\": \"<string>\",\n \"outputSerialization\": \"JsonConfluent\",\n \"schema\": {}\n },\n \"llm\": {\n \"model\": \"<string>\",\n \"apiKey\": \"\",\n \"llmConnectionId\": \"<string>\",\n \"baseUrl\": \"<string>\",\n \"temperature\": 1,\n \"maxTokens\": 50000,\n \"timeout\": 300,\n \"thinkingBudgetTokens\": 32000,\n \"ollamaThink\": true,\n \"maxRetries\": 10,\n \"region\": \"<string>\",\n \"strict\": true,\n \"store\": true,\n \"instructions\": \"<string>\",\n \"additionalKwargs\": {},\n \"apiVersion\": \"<string>\",\n \"azureEndpoint\": \"<string>\"\n },\n \"prompts\": {\n \"system\": \"\",\n \"customInstructions\": \"\",\n \"user\": \"<record>{input_json}</record>\"\n },\n \"description\": \"<string>\",\n \"enabled\": true,\n \"agentType\": \"workflow\",\n \"mcpServer\": {\n \"projectKeyId\": \"<string>\",\n \"serverUrl\": \"<string>\",\n \"headers\": {}\n },\n \"tools\": [\n {\n \"name\": \"<string>\",\n \"description\": \"\",\n \"config\": {},\n \"parameters\": [\n {\n \"name\": \"<string>\",\n \"type\": \"string\",\n \"description\": \"\"\n }\n ]\n }\n ],\n \"memory\": {\n \"keyField\": \"<string>\",\n \"shortTerm\": {\n \"enabled\": false,\n \"ttlMs\": 3600000,\n \"maxEntries\": 20\n },\n \"longTerm\": {\n \"enabled\": false,\n \"vectorStoreConnectionId\": \"<string>\",\n \"namespace\": \"<string>\",\n \"destinationId\": \"<string>\"\n }\n },\n \"knowledgeBases\": [\n {\n \"id\": \"<string>\",\n \"name\": \"\"\n }\n ],\n \"processing\": {\n \"parallelism\": 1,\n \"checkpointIntervalMin\": 5,\n \"maxIterations\": 10,\n \"maxTokensPerHour\": 0\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.streamkap.com/agents/config")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"input\": {\n \"topicPattern\": \"<string>\",\n \"inputSerialization\": \"JsonConfluent\",\n \"fields\": [\n \"<string>\"\n ],\n \"createTableSQL\": \"<string>\",\n \"filterSQL\": \"<string>\"\n },\n \"output\": {\n \"topic\": \"<string>\",\n \"deadLetterTopic\": \"<string>\",\n \"outputSerialization\": \"JsonConfluent\",\n \"schema\": {}\n },\n \"llm\": {\n \"model\": \"<string>\",\n \"apiKey\": \"\",\n \"llmConnectionId\": \"<string>\",\n \"baseUrl\": \"<string>\",\n \"temperature\": 1,\n \"maxTokens\": 50000,\n \"timeout\": 300,\n \"thinkingBudgetTokens\": 32000,\n \"ollamaThink\": true,\n \"maxRetries\": 10,\n \"region\": \"<string>\",\n \"strict\": true,\n \"store\": true,\n \"instructions\": \"<string>\",\n \"additionalKwargs\": {},\n \"apiVersion\": \"<string>\",\n \"azureEndpoint\": \"<string>\"\n },\n \"prompts\": {\n \"system\": \"\",\n \"customInstructions\": \"\",\n \"user\": \"<record>{input_json}</record>\"\n },\n \"description\": \"<string>\",\n \"enabled\": true,\n \"agentType\": \"workflow\",\n \"mcpServer\": {\n \"projectKeyId\": \"<string>\",\n \"serverUrl\": \"<string>\",\n \"headers\": {}\n },\n \"tools\": [\n {\n \"name\": \"<string>\",\n \"description\": \"\",\n \"config\": {},\n \"parameters\": [\n {\n \"name\": \"<string>\",\n \"type\": \"string\",\n \"description\": \"\"\n }\n ]\n }\n ],\n \"memory\": {\n \"keyField\": \"<string>\",\n \"shortTerm\": {\n \"enabled\": false,\n \"ttlMs\": 3600000,\n \"maxEntries\": 20\n },\n \"longTerm\": {\n \"enabled\": false,\n \"vectorStoreConnectionId\": \"<string>\",\n \"namespace\": \"<string>\",\n \"destinationId\": \"<string>\"\n }\n },\n \"knowledgeBases\": [\n {\n \"id\": \"<string>\",\n \"name\": \"\"\n }\n ],\n \"processing\": {\n \"parallelism\": 1,\n \"checkpointIntervalMin\": 5,\n \"maxIterations\": 10,\n \"maxTokensPerHour\": 0\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.streamkap.com/agents/config")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"input\": {\n \"topicPattern\": \"<string>\",\n \"inputSerialization\": \"JsonConfluent\",\n \"fields\": [\n \"<string>\"\n ],\n \"createTableSQL\": \"<string>\",\n \"filterSQL\": \"<string>\"\n },\n \"output\": {\n \"topic\": \"<string>\",\n \"deadLetterTopic\": \"<string>\",\n \"outputSerialization\": \"JsonConfluent\",\n \"schema\": {}\n },\n \"llm\": {\n \"model\": \"<string>\",\n \"apiKey\": \"\",\n \"llmConnectionId\": \"<string>\",\n \"baseUrl\": \"<string>\",\n \"temperature\": 1,\n \"maxTokens\": 50000,\n \"timeout\": 300,\n \"thinkingBudgetTokens\": 32000,\n \"ollamaThink\": true,\n \"maxRetries\": 10,\n \"region\": \"<string>\",\n \"strict\": true,\n \"store\": true,\n \"instructions\": \"<string>\",\n \"additionalKwargs\": {},\n \"apiVersion\": \"<string>\",\n \"azureEndpoint\": \"<string>\"\n },\n \"prompts\": {\n \"system\": \"\",\n \"customInstructions\": \"\",\n \"user\": \"<record>{input_json}</record>\"\n },\n \"description\": \"<string>\",\n \"enabled\": true,\n \"agentType\": \"workflow\",\n \"mcpServer\": {\n \"projectKeyId\": \"<string>\",\n \"serverUrl\": \"<string>\",\n \"headers\": {}\n },\n \"tools\": [\n {\n \"name\": \"<string>\",\n \"description\": \"\",\n \"config\": {},\n \"parameters\": [\n {\n \"name\": \"<string>\",\n \"type\": \"string\",\n \"description\": \"\"\n }\n ]\n }\n ],\n \"memory\": {\n \"keyField\": \"<string>\",\n \"shortTerm\": {\n \"enabled\": false,\n \"ttlMs\": 3600000,\n \"maxEntries\": 20\n },\n \"longTerm\": {\n \"enabled\": false,\n \"vectorStoreConnectionId\": \"<string>\",\n \"namespace\": \"<string>\",\n \"destinationId\": \"<string>\"\n }\n },\n \"knowledgeBases\": [\n {\n \"id\": \"<string>\",\n \"name\": \"\"\n }\n ],\n \"processing\": {\n \"parallelism\": 1,\n \"checkpointIntervalMin\": 5,\n \"maxIterations\": 10,\n \"maxTokensPerHour\": 0\n }\n}"
response = http.request(request)
puts response.read_body{
"_id": "<string>",
"name": "<string>",
"flink_job_name": "<string>",
"flink_job_id": "<string>",
"parallelism": 1,
"error_message": "<string>",
"agent_config": {},
"created_by": "<string>",
"created_timestamp": "2023-11-07T05:31:56Z",
"updated_timestamp": "2023-11-07T05:31:56Z"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>",
"input": "<unknown>",
"ctx": {}
}
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Query Parameters
Body
Request body for POST /agents/config - create a config-based agent.
Agent display name
1 - 200Input configuration for the agent.
Show child attributes
Show child attributes
Output configuration for the agent.
Show child attributes
Show child attributes
Inline LLM configuration embedded on the agent.
Carries provider, credentials, model, and tuning controls as a single
blob. The FE prefills the form from a saved :class:AgentLlmConnection
(which now carries default model + tuning + reasoning controls) and
the user can override per-agent before save; the resulting blob is
stored verbatim and shipped to the Flink runtime at deploy.
Two credential shapes (XOR, mirrors :class:ValidateLlmRequest):
- Inline -
apiKeyis filled directly. The BE KMS-encrypts it at save and decrypts it at deploy / test-run. - Linked -
llmConnectionIdreferences a row inagent_connections.llmConnectionsandapiKeyis left empty. The BE resolves the real key server-side at deploy and at test-run via :func:agents_service.resolve_saved_llm_credentials, so the browser never needs to hold (or re-paste) the stored plaintext when editing an existing agent.
provider == ollama accepts an empty key without a link (the
runtime is local and unauthenticated).
Show child attributes
Show child attributes
Prompt configuration for the agent.
The final system prompt is auto-assembled by build_system_prompt() from the
agent type template + output schema + tool descriptions + custom_instructions.
The system field stores the assembled result (set by the backend, not the user).
Show child attributes
Show child attributes
Human-readable context for the agent
500Kill switch. When false, the Flink runtime accepts the deploy but stops emitting output — used by support to disable a runaway tenant agent without a full cancel/redeploy.
Agent type — derived from the tool list post-validation; client-supplied value is overwritten
workflow, react Shared MCP server config for all MCP tools
Show child attributes
Show child attributes
Agent tools (MCP, HTTP, transform)
Show child attributes
Show child attributes
Memory config (short-term + long-term)
Show child attributes
Show child attributes
Knowledge bases this agent can query at runtime for RAG
10Show child attributes
Show child attributes
Processing configuration for the agent.
Show child attributes
Show child attributes
Response
Successful Response
pyflink, jar, agent_config, knowledge_base CREATED, DEPLOYING, RUNNING, CANCELLING, CANCELLED, FAILED, FINISHED CREATED, DEPLOYING, RUNNING, CANCELLING, CANCELLED, FAILED, FINISHED Was this page helpful?