Create Standalone Employee
curl --request POST \
--url https://api.tess.im/digital-employees/standalone \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-workspace-id: <x-workspace-id>' \
--data '
{
"name": "<string>",
"execution_mode": "<string>",
"execution_approval_mode": "<string>",
"heartbeat_cron": "<string>",
"heartbeat_schedule_json": {},
"execution_timezone": "<string>",
"default_interval_seconds": 123,
"system_prompt_override": "<string>",
"model_override": "<string>",
"tools_override": "<string>",
"search_intelligence_enabled": true,
"connectors_json": [
{}
],
"skills_override_json": [
{}
],
"max_consecutive_failures": 123,
"execution_order": 123,
"share_memory_with_owner": true,
"knowledge_base_file_ids": [
{}
],
"avatar": "<string>",
"avatar_thumbnail": "<string>",
"personality_type": "<string>",
"wake_policy_json": {},
"budget_policy_json": {},
"goal_json": {},
"work_policy_json": {},
"voice_realtime_voice": "<string>"
}
'import requests
url = "https://api.tess.im/digital-employees/standalone"
payload = {
"name": "<string>",
"execution_mode": "<string>",
"execution_approval_mode": "<string>",
"heartbeat_cron": "<string>",
"heartbeat_schedule_json": {},
"execution_timezone": "<string>",
"default_interval_seconds": 123,
"system_prompt_override": "<string>",
"model_override": "<string>",
"tools_override": "<string>",
"search_intelligence_enabled": True,
"connectors_json": [{}],
"skills_override_json": [{}],
"max_consecutive_failures": 123,
"execution_order": 123,
"share_memory_with_owner": True,
"knowledge_base_file_ids": [{}],
"avatar": "<string>",
"avatar_thumbnail": "<string>",
"personality_type": "<string>",
"wake_policy_json": {},
"budget_policy_json": {},
"goal_json": {},
"work_policy_json": {},
"voice_realtime_voice": "<string>"
}
headers = {
"x-workspace-id": "<x-workspace-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-workspace-id': '<x-workspace-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: '<string>',
execution_mode: '<string>',
execution_approval_mode: '<string>',
heartbeat_cron: '<string>',
heartbeat_schedule_json: {},
execution_timezone: '<string>',
default_interval_seconds: 123,
system_prompt_override: '<string>',
model_override: '<string>',
tools_override: '<string>',
search_intelligence_enabled: true,
connectors_json: [{}],
skills_override_json: [{}],
max_consecutive_failures: 123,
execution_order: 123,
share_memory_with_owner: true,
knowledge_base_file_ids: [{}],
avatar: '<string>',
avatar_thumbnail: '<string>',
personality_type: '<string>',
wake_policy_json: {},
budget_policy_json: {},
goal_json: {},
work_policy_json: {},
voice_realtime_voice: '<string>'
})
};
fetch('https://api.tess.im/digital-employees/standalone', 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.tess.im/digital-employees/standalone",
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>',
'execution_mode' => '<string>',
'execution_approval_mode' => '<string>',
'heartbeat_cron' => '<string>',
'heartbeat_schedule_json' => [
],
'execution_timezone' => '<string>',
'default_interval_seconds' => 123,
'system_prompt_override' => '<string>',
'model_override' => '<string>',
'tools_override' => '<string>',
'search_intelligence_enabled' => true,
'connectors_json' => [
[
]
],
'skills_override_json' => [
[
]
],
'max_consecutive_failures' => 123,
'execution_order' => 123,
'share_memory_with_owner' => true,
'knowledge_base_file_ids' => [
[
]
],
'avatar' => '<string>',
'avatar_thumbnail' => '<string>',
'personality_type' => '<string>',
'wake_policy_json' => [
],
'budget_policy_json' => [
],
'goal_json' => [
],
'work_policy_json' => [
],
'voice_realtime_voice' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-workspace-id: <x-workspace-id>"
],
]);
$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.tess.im/digital-employees/standalone"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"execution_mode\": \"<string>\",\n \"execution_approval_mode\": \"<string>\",\n \"heartbeat_cron\": \"<string>\",\n \"heartbeat_schedule_json\": {},\n \"execution_timezone\": \"<string>\",\n \"default_interval_seconds\": 123,\n \"system_prompt_override\": \"<string>\",\n \"model_override\": \"<string>\",\n \"tools_override\": \"<string>\",\n \"search_intelligence_enabled\": true,\n \"connectors_json\": [\n {}\n ],\n \"skills_override_json\": [\n {}\n ],\n \"max_consecutive_failures\": 123,\n \"execution_order\": 123,\n \"share_memory_with_owner\": true,\n \"knowledge_base_file_ids\": [\n {}\n ],\n \"avatar\": \"<string>\",\n \"avatar_thumbnail\": \"<string>\",\n \"personality_type\": \"<string>\",\n \"wake_policy_json\": {},\n \"budget_policy_json\": {},\n \"goal_json\": {},\n \"work_policy_json\": {},\n \"voice_realtime_voice\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-workspace-id", "<x-workspace-id>")
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.tess.im/digital-employees/standalone")
.header("x-workspace-id", "<x-workspace-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"execution_mode\": \"<string>\",\n \"execution_approval_mode\": \"<string>\",\n \"heartbeat_cron\": \"<string>\",\n \"heartbeat_schedule_json\": {},\n \"execution_timezone\": \"<string>\",\n \"default_interval_seconds\": 123,\n \"system_prompt_override\": \"<string>\",\n \"model_override\": \"<string>\",\n \"tools_override\": \"<string>\",\n \"search_intelligence_enabled\": true,\n \"connectors_json\": [\n {}\n ],\n \"skills_override_json\": [\n {}\n ],\n \"max_consecutive_failures\": 123,\n \"execution_order\": 123,\n \"share_memory_with_owner\": true,\n \"knowledge_base_file_ids\": [\n {}\n ],\n \"avatar\": \"<string>\",\n \"avatar_thumbnail\": \"<string>\",\n \"personality_type\": \"<string>\",\n \"wake_policy_json\": {},\n \"budget_policy_json\": {},\n \"goal_json\": {},\n \"work_policy_json\": {},\n \"voice_realtime_voice\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tess.im/digital-employees/standalone")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-workspace-id"] = '<x-workspace-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"execution_mode\": \"<string>\",\n \"execution_approval_mode\": \"<string>\",\n \"heartbeat_cron\": \"<string>\",\n \"heartbeat_schedule_json\": {},\n \"execution_timezone\": \"<string>\",\n \"default_interval_seconds\": 123,\n \"system_prompt_override\": \"<string>\",\n \"model_override\": \"<string>\",\n \"tools_override\": \"<string>\",\n \"search_intelligence_enabled\": true,\n \"connectors_json\": [\n {}\n ],\n \"skills_override_json\": [\n {}\n ],\n \"max_consecutive_failures\": 123,\n \"execution_order\": 123,\n \"share_memory_with_owner\": true,\n \"knowledge_base_file_ids\": [\n {}\n ],\n \"avatar\": \"<string>\",\n \"avatar_thumbnail\": \"<string>\",\n \"personality_type\": \"<string>\",\n \"wake_policy_json\": {},\n \"budget_policy_json\": {},\n \"goal_json\": {},\n \"work_policy_json\": {},\n \"voice_realtime_voice\": \"<string>\"\n}"
response = http.request(request)
puts response.read_bodyDigital Employees
Create Standalone Employee
Creates a new Digital Employee with a new host agent.
POST
/
digital-employees
/
standalone
Create Standalone Employee
curl --request POST \
--url https://api.tess.im/digital-employees/standalone \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'x-workspace-id: <x-workspace-id>' \
--data '
{
"name": "<string>",
"execution_mode": "<string>",
"execution_approval_mode": "<string>",
"heartbeat_cron": "<string>",
"heartbeat_schedule_json": {},
"execution_timezone": "<string>",
"default_interval_seconds": 123,
"system_prompt_override": "<string>",
"model_override": "<string>",
"tools_override": "<string>",
"search_intelligence_enabled": true,
"connectors_json": [
{}
],
"skills_override_json": [
{}
],
"max_consecutive_failures": 123,
"execution_order": 123,
"share_memory_with_owner": true,
"knowledge_base_file_ids": [
{}
],
"avatar": "<string>",
"avatar_thumbnail": "<string>",
"personality_type": "<string>",
"wake_policy_json": {},
"budget_policy_json": {},
"goal_json": {},
"work_policy_json": {},
"voice_realtime_voice": "<string>"
}
'import requests
url = "https://api.tess.im/digital-employees/standalone"
payload = {
"name": "<string>",
"execution_mode": "<string>",
"execution_approval_mode": "<string>",
"heartbeat_cron": "<string>",
"heartbeat_schedule_json": {},
"execution_timezone": "<string>",
"default_interval_seconds": 123,
"system_prompt_override": "<string>",
"model_override": "<string>",
"tools_override": "<string>",
"search_intelligence_enabled": True,
"connectors_json": [{}],
"skills_override_json": [{}],
"max_consecutive_failures": 123,
"execution_order": 123,
"share_memory_with_owner": True,
"knowledge_base_file_ids": [{}],
"avatar": "<string>",
"avatar_thumbnail": "<string>",
"personality_type": "<string>",
"wake_policy_json": {},
"budget_policy_json": {},
"goal_json": {},
"work_policy_json": {},
"voice_realtime_voice": "<string>"
}
headers = {
"x-workspace-id": "<x-workspace-id>",
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {
'x-workspace-id': '<x-workspace-id>',
Authorization: 'Bearer <token>',
'Content-Type': 'application/json'
},
body: JSON.stringify({
name: '<string>',
execution_mode: '<string>',
execution_approval_mode: '<string>',
heartbeat_cron: '<string>',
heartbeat_schedule_json: {},
execution_timezone: '<string>',
default_interval_seconds: 123,
system_prompt_override: '<string>',
model_override: '<string>',
tools_override: '<string>',
search_intelligence_enabled: true,
connectors_json: [{}],
skills_override_json: [{}],
max_consecutive_failures: 123,
execution_order: 123,
share_memory_with_owner: true,
knowledge_base_file_ids: [{}],
avatar: '<string>',
avatar_thumbnail: '<string>',
personality_type: '<string>',
wake_policy_json: {},
budget_policy_json: {},
goal_json: {},
work_policy_json: {},
voice_realtime_voice: '<string>'
})
};
fetch('https://api.tess.im/digital-employees/standalone', 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.tess.im/digital-employees/standalone",
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>',
'execution_mode' => '<string>',
'execution_approval_mode' => '<string>',
'heartbeat_cron' => '<string>',
'heartbeat_schedule_json' => [
],
'execution_timezone' => '<string>',
'default_interval_seconds' => 123,
'system_prompt_override' => '<string>',
'model_override' => '<string>',
'tools_override' => '<string>',
'search_intelligence_enabled' => true,
'connectors_json' => [
[
]
],
'skills_override_json' => [
[
]
],
'max_consecutive_failures' => 123,
'execution_order' => 123,
'share_memory_with_owner' => true,
'knowledge_base_file_ids' => [
[
]
],
'avatar' => '<string>',
'avatar_thumbnail' => '<string>',
'personality_type' => '<string>',
'wake_policy_json' => [
],
'budget_policy_json' => [
],
'goal_json' => [
],
'work_policy_json' => [
],
'voice_realtime_voice' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json",
"x-workspace-id: <x-workspace-id>"
],
]);
$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.tess.im/digital-employees/standalone"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"execution_mode\": \"<string>\",\n \"execution_approval_mode\": \"<string>\",\n \"heartbeat_cron\": \"<string>\",\n \"heartbeat_schedule_json\": {},\n \"execution_timezone\": \"<string>\",\n \"default_interval_seconds\": 123,\n \"system_prompt_override\": \"<string>\",\n \"model_override\": \"<string>\",\n \"tools_override\": \"<string>\",\n \"search_intelligence_enabled\": true,\n \"connectors_json\": [\n {}\n ],\n \"skills_override_json\": [\n {}\n ],\n \"max_consecutive_failures\": 123,\n \"execution_order\": 123,\n \"share_memory_with_owner\": true,\n \"knowledge_base_file_ids\": [\n {}\n ],\n \"avatar\": \"<string>\",\n \"avatar_thumbnail\": \"<string>\",\n \"personality_type\": \"<string>\",\n \"wake_policy_json\": {},\n \"budget_policy_json\": {},\n \"goal_json\": {},\n \"work_policy_json\": {},\n \"voice_realtime_voice\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("x-workspace-id", "<x-workspace-id>")
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.tess.im/digital-employees/standalone")
.header("x-workspace-id", "<x-workspace-id>")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"execution_mode\": \"<string>\",\n \"execution_approval_mode\": \"<string>\",\n \"heartbeat_cron\": \"<string>\",\n \"heartbeat_schedule_json\": {},\n \"execution_timezone\": \"<string>\",\n \"default_interval_seconds\": 123,\n \"system_prompt_override\": \"<string>\",\n \"model_override\": \"<string>\",\n \"tools_override\": \"<string>\",\n \"search_intelligence_enabled\": true,\n \"connectors_json\": [\n {}\n ],\n \"skills_override_json\": [\n {}\n ],\n \"max_consecutive_failures\": 123,\n \"execution_order\": 123,\n \"share_memory_with_owner\": true,\n \"knowledge_base_file_ids\": [\n {}\n ],\n \"avatar\": \"<string>\",\n \"avatar_thumbnail\": \"<string>\",\n \"personality_type\": \"<string>\",\n \"wake_policy_json\": {},\n \"budget_policy_json\": {},\n \"goal_json\": {},\n \"work_policy_json\": {},\n \"voice_realtime_voice\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.tess.im/digital-employees/standalone")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["x-workspace-id"] = '<x-workspace-id>'
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"execution_mode\": \"<string>\",\n \"execution_approval_mode\": \"<string>\",\n \"heartbeat_cron\": \"<string>\",\n \"heartbeat_schedule_json\": {},\n \"execution_timezone\": \"<string>\",\n \"default_interval_seconds\": 123,\n \"system_prompt_override\": \"<string>\",\n \"model_override\": \"<string>\",\n \"tools_override\": \"<string>\",\n \"search_intelligence_enabled\": true,\n \"connectors_json\": [\n {}\n ],\n \"skills_override_json\": [\n {}\n ],\n \"max_consecutive_failures\": 123,\n \"execution_order\": 123,\n \"share_memory_with_owner\": true,\n \"knowledge_base_file_ids\": [\n {}\n ],\n \"avatar\": \"<string>\",\n \"avatar_thumbnail\": \"<string>\",\n \"personality_type\": \"<string>\",\n \"wake_policy_json\": {},\n \"budget_policy_json\": {},\n \"goal_json\": {},\n \"work_policy_json\": {},\n \"voice_realtime_voice\": \"<string>\"\n}"
response = http.request(request)
puts response.read_bodyCode Examples
curl --request POST \
--url 'https://api.tess.im/digital-employees/standalone' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--header 'x-workspace-id: YOUR_WORKSPACE_ID' \
--data '{
"name": "Finance Ops",
"execution_mode": "agent",
"execution_approval_mode": "autonomous",
"heartbeat_cron": "0 9 * * 1-5",
"execution_timezone": "America/Sao_Paulo"
}'
const axios = require('axios');
const config = {
method: 'post',
url: 'https://api.tess.im/digital-employees/standalone',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json',
'x-workspace-id': 'YOUR_WORKSPACE_ID'
},
data: {
name: 'Finance Ops',
execution_mode: 'agent',
execution_approval_mode: 'autonomous',
heartbeat_cron: '0 9 * * 1-5',
execution_timezone: 'America/Sao_Paulo'
}
};
try {
const response = await axios(config);
console.log(response.data);
} catch (error) {
console.error(error);
}
import requests
url = "https://api.tess.im/digital-employees/standalone"
headers = {
"Authorization": "Bearer YOUR_API_KEY",
"Content-Type": "application/json",
"x-workspace-id": "YOUR_WORKSPACE_ID"
}
payload = {
"name": "Finance Ops",
"execution_mode": "agent",
"execution_approval_mode": "autonomous",
"heartbeat_cron": "0 9 * * 1-5",
"execution_timezone": "America/Sao_Paulo"
}
response = requests.post(url, json=payload, headers=headers)
print(response.json())
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.tess.im/digital-employees/standalone",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
"name" => "Finance Ops",
"execution_mode" => "agent",
"execution_approval_mode" => "autonomous",
"heartbeat_cron" => "0 9 * * 1-5",
"execution_timezone" => "America/Sao_Paulo"
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer YOUR_API_KEY",
"Content-Type: application/json",
"x-workspace-id: YOUR_WORKSPACE_ID"
]
]);
$response = curl_exec($curl);
curl_close($curl);
echo $response;
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
String body = """
{
"name": "Finance Ops",
"execution_mode": "agent",
"execution_approval_mode": "autonomous",
"heartbeat_cron": "0 9 * * 1-5",
"execution_timezone": "America/Sao_Paulo"
}
""";
HttpClient client = HttpClient.newHttpClient();
HttpRequest request = HttpRequest.newBuilder()
.uri(URI.create("https://api.tess.im/digital-employees/standalone"))
.header("Authorization", "Bearer YOUR_API_KEY")
.header("Content-Type", "application/json")
.header("x-workspace-id", "YOUR_WORKSPACE_ID")
.POST(HttpRequest.BodyPublishers.ofString(body))
.build();
HttpResponse<String> response = client.send(request,
HttpResponse.BodyHandlers.ofString());
System.out.println(response.body());
package main
import (
"fmt"
"io/ioutil"
"net/http"
"strings"
)
func main() {
payload := strings.NewReader(`{
"name": "Finance Ops",
"execution_mode": "agent",
"execution_approval_mode": "autonomous",
"heartbeat_cron": "0 9 * * 1-5",
"execution_timezone": "America/Sao_Paulo"
}`)
client := &http.Client{}
req, _ := http.NewRequest("POST", "https://api.tess.im/digital-employees/standalone", payload)
req.Header.Add("Authorization", "Bearer YOUR_API_KEY")
req.Header.Add("Content-Type", "application/json")
req.Header.Add("x-workspace-id", "YOUR_WORKSPACE_ID")
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(string(body))
}
using System.Net.Http;
using System.Text;
using var client = new HttpClient();
client.DefaultRequestHeaders.Add("Authorization", "Bearer YOUR_API_KEY");
client.DefaultRequestHeaders.Add("x-workspace-id", "YOUR_WORKSPACE_ID");
var json = """
{
"name": "Finance Ops",
"execution_mode": "agent",
"execution_approval_mode": "autonomous",
"heartbeat_cron": "0 9 * * 1-5",
"execution_timezone": "America/Sao_Paulo"
}
""";
var content = new StringContent(json, Encoding.UTF8, "application/json");
var response = await client.PostAsync(
"https://api.tess.im/digital-employees/standalone", content);
Console.WriteLine(await response.Content.ReadAsStringAsync());
require 'uri'
require 'net/http'
require 'json'
uri = URI('https://api.tess.im/digital-employees/standalone')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Authorization'] = 'Bearer YOUR_API_KEY'
request['Content-Type'] = 'application/json'
request['x-workspace-id'] = 'YOUR_WORKSPACE_ID'
request.body = {
name: 'Finance Ops',
execution_mode: 'agent',
execution_approval_mode: 'autonomous',
heartbeat_cron: '0 9 * * 1-5',
execution_timezone: 'America/Sao_Paulo'
}.to_json
response = http.request(request)
puts response.read_body
Headers
Pass your API key as a Bearer token in the
Authorization header.integer
required
ID of the workspace.
Request Body
string
required
Employee name. Max 255 characters.
string
Execution mode. Values:
agent (autonomous) or chat. Default: agent.string
Whether runs require manual approval. Values:
autonomous or approval_required.string
Cron expression for scheduled runs (e.g.
0 9 * * 1-5). Max 128 characters.object
Schedule builder config (alternative to
heartbeat_cron).string
Timezone for schedule execution (e.g.
America/Sao_Paulo). Max 64 characters.integer
Minimum seconds between runs. Either
0 (no limit) or >= 60.string
Custom system prompt for this employee. Max 4096 characters.
string
Override the AI model (e.g.
tess-6). Max 100 characters.string
Override tool configuration. Max 255 characters.
boolean
Enable Search Intelligence for runs.
array
Array of connector identifiers to enable.
array
Array of skill identifiers to override.
integer
Max consecutive run failures before auto-pause. Range: 1–100.
integer
Execution priority order. Range: 0–999.
boolean
Whether the employee shares memory with its owner agent.
array
Array of file IDs for the knowledge base. Max 20 entries.
string
Avatar image URL. Max 2048 characters.
string
Thumbnail image URL. Max 2048 characters.
string
MBTI personality type (e.g.
INTJ).object
Wake policy configuration object.
object
Budget policy configuration object.
object
Goal configuration object.
object
Work policy configuration object.
string
Voice identifier for real-time voice mode.
Response
{
"data": {
"id": 123,
"name": "Finance Ops",
"workspace_id": 10
}
}
⌘I