curl --request POST \
--url https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}', 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://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"organization_id": "<string>",
"name": "<string>",
"description": "<string>",
"status": "active",
"configuration": {
"member_ids": [
"<string>"
],
"instructions": "",
"reasoning": {
"enabled": false,
"model": "<string>",
"agent_id": "<string>",
"min_steps": 1,
"max_steps": 10
},
"llm": {
"model": "<string>",
"temperature": 1,
"max_tokens": 2,
"top_p": 0.5,
"top_k": 1,
"stop": [
"<string>"
],
"frequency_penalty": 0,
"presence_penalty": 0
},
"tools": [
{}
],
"knowledge_base": {},
"session": {
"user_id": "<string>",
"session_id": "<string>",
"auto_save": true,
"persist": true
},
"dependencies": {},
"markdown": true,
"add_datetime_to_instructions": false,
"structured_outputs": false,
"response_model": "<string>",
"debug_mode": false,
"monitoring": false,
"metadata": {}
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"agents": [
{}
],
"runtime": "default",
"projects": [
{}
],
"skill_ids": [
"<string>"
],
"skills": [
{}
],
"execution_environment": {
"working_dir": "<string>",
"env_vars": {},
"secrets": [
"<string>"
],
"integration_ids": [
"<string>"
],
"mcp_servers": {}
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Add Agent To Team
Add an agent to a team.
This sets the agent’s team_id foreign key. You can also manage members through the team’s configuration.member_ids field. Only allows adding agents to teams belonging to the current organization.
curl --request POST \
--url https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id} \
--header 'Authorization: Bearer <token>'import requests
url = "https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}"
headers = {"Authorization": "Bearer <token>"}
response = requests.post(url, headers=headers)
print(response.text)const options = {method: 'POST', headers: {Authorization: 'Bearer <token>'}};
fetch('https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}', 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://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}"
req, _ := http.NewRequest("POST", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://control-plane.kubiya.ai/api/v1/teams/{team_id}/agents/{agent_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"id": "<string>",
"organization_id": "<string>",
"name": "<string>",
"description": "<string>",
"status": "active",
"configuration": {
"member_ids": [
"<string>"
],
"instructions": "",
"reasoning": {
"enabled": false,
"model": "<string>",
"agent_id": "<string>",
"min_steps": 1,
"max_steps": 10
},
"llm": {
"model": "<string>",
"temperature": 1,
"max_tokens": 2,
"top_p": 0.5,
"top_k": 1,
"stop": [
"<string>"
],
"frequency_penalty": 0,
"presence_penalty": 0
},
"tools": [
{}
],
"knowledge_base": {},
"session": {
"user_id": "<string>",
"session_id": "<string>",
"auto_save": true,
"persist": true
},
"dependencies": {},
"markdown": true,
"add_datetime_to_instructions": false,
"structured_outputs": false,
"response_model": "<string>",
"debug_mode": false,
"monitoring": false,
"metadata": {}
},
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"agents": [
{}
],
"runtime": "default",
"projects": [
{}
],
"skill_ids": [
"<string>"
],
"skills": [
{}
],
"execution_environment": {
"working_dir": "<string>",
"env_vars": {},
"secrets": [
"<string>"
],
"integration_ids": [
"<string>"
],
"mcp_servers": {}
}
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Authorizations
Enter your Kubiya API token (format: Bearer )
Response
Successful Response
Team response including member agents
Team status enumeration
active, inactive, archived, idle Comprehensive team configuration aligned with Agno's Team capabilities. This allows full control over team behavior, reasoning, tools, and LLM settings.
Show child attributes
Show child attributes
Runtime type for team leader: 'default' (Agno) or 'claude_code' (Claude Code SDK)
Projects this team belongs to
IDs of associated skills
Associated skills with details
Execution environment configuration for agents/teams
Show child attributes
Show child attributes
Was this page helpful?