curl --request POST \
--url https://api.krea.ai/agent/send-message \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "",
"attachments": [],
"name": "<string>",
"desktopAppId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.krea.ai/agent/send-message"
payload = {
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "",
"attachments": [],
"name": "<string>",
"desktopAppId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
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({
sessionId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
prompt: '',
attachments: [],
name: '<string>',
desktopAppId: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.krea.ai/agent/send-message', 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.krea.ai/agent/send-message",
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([
'sessionId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'prompt' => '',
'attachments' => [
],
'name' => '<string>',
'desktopAppId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
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.krea.ai/agent/send-message"
payload := strings.NewReader("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"prompt\": \"\",\n \"attachments\": [],\n \"name\": \"<string>\",\n \"desktopAppId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\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.krea.ai/agent/send-message")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"prompt\": \"\",\n \"attachments\": [],\n \"name\": \"<string>\",\n \"desktopAppId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.krea.ai/agent/send-message")
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 \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"prompt\": \"\",\n \"attachments\": [],\n \"name\": \"<string>\",\n \"desktopAppId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"sessionId": "<string>",
"threadId": "<string>",
"runId": "<string>",
"status": "running",
"url": "<string>"
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}Send Agent Message
curl --request POST \
--url https://api.krea.ai/agent/send-message \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "",
"attachments": [],
"name": "<string>",
"desktopAppId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.krea.ai/agent/send-message"
payload = {
"sessionId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"prompt": "",
"attachments": [],
"name": "<string>",
"desktopAppId": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
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({
sessionId: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
prompt: '',
attachments: [],
name: '<string>',
desktopAppId: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.krea.ai/agent/send-message', 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.krea.ai/agent/send-message",
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([
'sessionId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'prompt' => '',
'attachments' => [
],
'name' => '<string>',
'desktopAppId' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
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.krea.ai/agent/send-message"
payload := strings.NewReader("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"prompt\": \"\",\n \"attachments\": [],\n \"name\": \"<string>\",\n \"desktopAppId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\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.krea.ai/agent/send-message")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"prompt\": \"\",\n \"attachments\": [],\n \"name\": \"<string>\",\n \"desktopAppId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.krea.ai/agent/send-message")
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 \"sessionId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"prompt\": \"\",\n \"attachments\": [],\n \"name\": \"<string>\",\n \"desktopAppId\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"sessionId": "<string>",
"threadId": "<string>",
"runId": "<string>",
"status": "running",
"url": "<string>"
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}{
"error": "<string>",
"code": "<string>",
"allowedModels": [
"<string>"
]
}Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Omit to start a new session; pass an existing id to continue it
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$100000Transfer reference files that are not otherwise accessible to the Agent here. Usable URLs in the prompt, existing Krea context, and prior session files need not be repeated in attachments. The Agent does not inherit your conversation or attachments. Mentioning OpenAI file_ IDs in prompt text does not transfer their bytes, and those IDs cannot be converted to Krea file URIs.
20Show child attributes
Show child attributes
Pin an LLM. Omit for Auto. Must be included in the workspace plan.
openai/gpt-6-astra, openai/gpt-6.1-sol, openai/gpt-6-sol, openai/gpt-6-luna, openai/gpt-5.6-sol, openai/gpt-5.6-terra, openai/gpt-5.6-luna, openai/gpt-5.5, anthropic/claude-opus-5.5, anthropic/claude-opus-5, anthropic/claude-fable-5.1, anthropic/claude-fable-5, anthropic/claude-opus-4.8, anthropic/claude-sonnet-5, anthropic/claude-sonnet-4.5, anthropic/claude-opus-4.5, google/gemini-4-argon, google/gemini-3.8-flash, google/gemini-3.5-flash, google/gemini-3.5-flash-lite, google/gemini-3.1-pro-preview, google/gemini-3.1-flash-lite, google/gemini-2.5-flash-lite, xai/grok-4.5, zai/glm-5.2, moonshotai/kimi-k3 fast, default, high, xhigh Session name, new sessions only
1 - 120An appId from list_desktop_apps. The Agent then works inside that desktop app for this turn.
^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$Was this page helpful?