Run Agent
curl --request POST \
--url https://api.example.com/api/runs \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"model": "o3",
"provider": "openai",
"wait_for_completion": true,
"webhook_url": "<string>",
"response_format": "text",
"json_schema": "<string>",
"use_cached_workflow": true,
"cached_workflow": {}
}
'import requests
url = "https://api.example.com/api/runs"
payload = {
"prompt": "<string>",
"model": "o3",
"provider": "openai",
"wait_for_completion": True,
"webhook_url": "<string>",
"response_format": "text",
"json_schema": "<string>",
"use_cached_workflow": True,
"cached_workflow": {}
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
model: 'o3',
provider: 'openai',
wait_for_completion: true,
webhook_url: '<string>',
response_format: 'text',
json_schema: '<string>',
use_cached_workflow: true,
cached_workflow: {}
})
};
fetch('https://api.example.com/api/runs', 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.example.com/api/runs",
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([
'prompt' => '<string>',
'model' => 'o3',
'provider' => 'openai',
'wait_for_completion' => true,
'webhook_url' => '<string>',
'response_format' => 'text',
'json_schema' => '<string>',
'use_cached_workflow' => true,
'cached_workflow' => [
]
]),
CURLOPT_HTTPHEADER => [
"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.example.com/api/runs"
payload := strings.NewReader("{\n \"prompt\": \"<string>\",\n \"model\": \"o3\",\n \"provider\": \"openai\",\n \"wait_for_completion\": true,\n \"webhook_url\": \"<string>\",\n \"response_format\": \"text\",\n \"json_schema\": \"<string>\",\n \"use_cached_workflow\": true,\n \"cached_workflow\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
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.example.com/api/runs")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"<string>\",\n \"model\": \"o3\",\n \"provider\": \"openai\",\n \"wait_for_completion\": true,\n \"webhook_url\": \"<string>\",\n \"response_format\": \"text\",\n \"json_schema\": \"<string>\",\n \"use_cached_workflow\": true,\n \"cached_workflow\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/runs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"<string>\",\n \"model\": \"o3\",\n \"provider\": \"openai\",\n \"wait_for_completion\": true,\n \"webhook_url\": \"<string>\",\n \"response_format\": \"text\",\n \"json_schema\": \"<string>\",\n \"use_cached_workflow\": true,\n \"cached_workflow\": {}\n}"
response = http.request(request)
puts response.read_body{
"task_id": 123,
"task_run_id": 123,
"history": [
{
"description": "<string>",
"actions": [
{
"name": "<string>",
"params": {},
"is_done": true,
"success": true,
"extracted_content": "<string>",
"error": "<string>",
"include_in_memory": true
}
]
}
],
"result": "<unknown>",
"is_done": true,
"is_successful": true,
"status": "in_progress"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}API Reference
Run Agent
POST
/
api
/
runs
Run Agent
curl --request POST \
--url https://api.example.com/api/runs \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"model": "o3",
"provider": "openai",
"wait_for_completion": true,
"webhook_url": "<string>",
"response_format": "text",
"json_schema": "<string>",
"use_cached_workflow": true,
"cached_workflow": {}
}
'import requests
url = "https://api.example.com/api/runs"
payload = {
"prompt": "<string>",
"model": "o3",
"provider": "openai",
"wait_for_completion": True,
"webhook_url": "<string>",
"response_format": "text",
"json_schema": "<string>",
"use_cached_workflow": True,
"cached_workflow": {}
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
prompt: '<string>',
model: 'o3',
provider: 'openai',
wait_for_completion: true,
webhook_url: '<string>',
response_format: 'text',
json_schema: '<string>',
use_cached_workflow: true,
cached_workflow: {}
})
};
fetch('https://api.example.com/api/runs', 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.example.com/api/runs",
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([
'prompt' => '<string>',
'model' => 'o3',
'provider' => 'openai',
'wait_for_completion' => true,
'webhook_url' => '<string>',
'response_format' => 'text',
'json_schema' => '<string>',
'use_cached_workflow' => true,
'cached_workflow' => [
]
]),
CURLOPT_HTTPHEADER => [
"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.example.com/api/runs"
payload := strings.NewReader("{\n \"prompt\": \"<string>\",\n \"model\": \"o3\",\n \"provider\": \"openai\",\n \"wait_for_completion\": true,\n \"webhook_url\": \"<string>\",\n \"response_format\": \"text\",\n \"json_schema\": \"<string>\",\n \"use_cached_workflow\": true,\n \"cached_workflow\": {}\n}")
req, _ := http.NewRequest("POST", url, payload)
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.example.com/api/runs")
.header("Content-Type", "application/json")
.body("{\n \"prompt\": \"<string>\",\n \"model\": \"o3\",\n \"provider\": \"openai\",\n \"wait_for_completion\": true,\n \"webhook_url\": \"<string>\",\n \"response_format\": \"text\",\n \"json_schema\": \"<string>\",\n \"use_cached_workflow\": true,\n \"cached_workflow\": {}\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.example.com/api/runs")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"prompt\": \"<string>\",\n \"model\": \"o3\",\n \"provider\": \"openai\",\n \"wait_for_completion\": true,\n \"webhook_url\": \"<string>\",\n \"response_format\": \"text\",\n \"json_schema\": \"<string>\",\n \"use_cached_workflow\": true,\n \"cached_workflow\": {}\n}"
response = http.request(request)
puts response.read_body{
"task_id": 123,
"task_run_id": 123,
"history": [
{
"description": "<string>",
"actions": [
{
"name": "<string>",
"params": {},
"is_done": true,
"success": true,
"extracted_content": "<string>",
"error": "<string>",
"include_in_memory": true
}
]
}
],
"result": "<unknown>",
"is_done": true,
"is_successful": true,
"status": "in_progress"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Body
application/json
The task to be performed by the agent
Minimum string length:
3Available options:
openai, deepseek, anthropic, google, groq, mistral, together Whether to wait for the task to complete before returning the response. If false, the task will be executed in the background and the response will contain only the task ID.
URL to send webhook notification when task is complete
Whether to return the result as text or JSON
The JSON schema for the task result
Internal field: whether to use cached workflow
Internal field: the cached workflow data
Response
Successful Response
- AgentResponse
- AsyncAgentResponse
Represents the complete response from the agent.
The ID of the task
The ID of the task run
List of steps in the history
Show child attributes
Show child attributes
The final result of the agent's task
Whether the agent has completed its task
Whether the agent was successful in completing its task
The status of the agent's task
Available options:
success, failure, in_progress ⌘I
