ban_listList all active ban rules on the virtual serverInput schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
} | — | | — |
ban_manageCreate, delete, or clear ban rules on the serverInput schema{
"type": "object",
"properties": {
"action": {
"type": "string",
"enum": [
"add",
"delete",
"delete_all"
],
"description": "Action to perform"
},
"ban_id": {
"type": "number",
"description": "Ban ID (required for delete)"
},
"ip": {
"type": "string",
"description": "IP address pattern to ban"
},
"name": {
"type": "string",
"description": "Name pattern to ban"
},
"uid": {
"type": "string",
"description": "Client unique identifier to ban"
},
"time": {
"type": "number",
"default": 0,
"description": "Ban duration in seconds (0 = permanent)"
},
"reason": {
"type": "string",
"default": "Banned by AI",
"description": "Ban reason"
}
},
"required": [
"action"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
cgroup_assignAssign a client to a channel group in a specific channelInput schema{
"type": "object",
"properties": {
"group_id": {
"type": "number",
"description": "Channel group ID to assign"
},
"channel_id": {
"type": "number",
"description": "Channel ID where the assignment applies"
},
"client_db_id": {
"type": "number",
"description": "Client database ID"
}
},
"required": [
"group_id",
"channel_id",
"client_db_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
cgroup_createCreate a new channel groupInput schema{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name for the new channel group"
},
"type": {
"type": "number",
"default": 1,
"description": "Group type (0=template, 1=regular, 2=query)"
}
},
"required": [
"name"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
cgroup_permManage permissions for a channel group: add, remove, or listInput schema{
"type": "object",
"properties": {
"group_id": {
"type": "number",
"description": "Channel group ID"
},
"action": {
"type": "string",
"enum": [
"add",
"remove",
"list"
],
"description": "Action to perform"
},
"permission": {
"type": "string",
"description": "Permission name (for add/remove)"
},
"value": {
"type": "number",
"description": "Permission value (for add)"
}
},
"required": [
"group_id",
"action"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
channel_createCreate a new channel on the serverInput schema{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Channel name"
},
"parent_id": {
"type": "number",
"description": "Parent channel ID"
},
"permanent": {
"type": "boolean",
"default": false,
"description": "Permanent or temporary channel"
}
},
"required": [
"name"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
channel_deleteDelete a channel from the serverInput schema{
"type": "object",
"properties": {
"channel_id": {
"type": "number",
"description": "Channel ID to delete"
},
"force": {
"type": "boolean",
"default": false,
"description": "Force deletion even if clients are present"
}
},
"required": [
"channel_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
channel_infoGet detailed information about a specific channelInput schema{
"type": "object",
"properties": {
"channel_id": {
"type": "number",
"description": "Channel ID"
}
},
"required": [
"channel_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
channel_permManage permissions on a specific channel: add, remove, or listInput schema{
"type": "object",
"properties": {
"channel_id": {
"type": "number",
"description": "Channel ID"
},
"action": {
"type": "string",
"enum": [
"add",
"remove",
"list"
],
"description": "Action to perform"
},
"permission": {
"type": "string",
"description": "Permission name (required for add/remove)"
},
"value": {
"type": "number",
"description": "Permission value (required for add)"
}
},
"required": [
"channel_id",
"action"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
channel_updateUpdate channel properties. Talk power presets: 0=normal, 50=moderated, 999=silentInput schema{
"type": "object",
"properties": {
"channel_id": {
"type": "number",
"description": "Channel ID to update"
},
"name": {
"type": "string",
"description": "New channel name"
},
"description": {
"type": "string",
"description": "New channel description"
},
"password": {
"type": "string",
"description": "New channel password (empty string to remove)"
},
"max_clients": {
"type": "number",
"description": "Maximum number of clients"
},
"talk_power": {
"type": "number",
"description": "Required talk power (0=normal, 50=moderated, 999=silent)"
},
"codec_quality": {
"type": "number",
"description": "Audio codec quality 1-10"
},
"permanent": {
"type": "boolean",
"description": "Make channel permanent"
}
},
"required": [
"channel_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
client_banBan a client from the serverInput schema{
"type": "object",
"properties": {
"client_id": {
"type": "number",
"description": "Client ID"
},
"reason": {
"type": "string",
"default": "Banned by AI",
"description": "Ban reason"
},
"duration": {
"type": "number",
"default": 0,
"description": "Ban duration in seconds (0 = permanent)"
}
},
"required": [
"client_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
client_db_listList historical clients from the server database (includes offline clients). Supports pagination for large databasesInput schema{
"type": "object",
"properties": {
"start": {
"type": "number",
"default": 0,
"description": "Offset to start from (for pagination)"
},
"limit": {
"type": "number",
"default": 25,
"description": "Max number of entries to return (max 1000)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
client_infoGet detailed information about a specific online clientInput schema{
"type": "object",
"properties": {
"client_id": {
"type": "number",
"description": "Client ID"
}
},
"required": [
"client_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
client_kickKick a client from the server or current channelInput schema{
"type": "object",
"properties": {
"client_id": {
"type": "number",
"description": "Client ID"
},
"reason": {
"type": "string",
"default": "Kicked by AI",
"description": "Kick reason"
},
"from_server": {
"type": "boolean",
"default": false,
"description": "true = kick from server, false = kick from channel"
}
},
"required": [
"client_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
client_moveMove a client to another channelInput schema{
"type": "object",
"properties": {
"client_id": {
"type": "number",
"description": "Client ID"
},
"channel_id": {
"type": "number",
"description": "Destination channel ID"
}
},
"required": [
"client_id",
"channel_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
client_permManage a client's server group membership and individual permissionsInput schema{
"type": "object",
"properties": {
"client_id": {
"type": "number",
"description": "Client ID"
},
"action": {
"type": "string",
"enum": [
"add_group",
"remove_group",
"list_groups",
"add_perm",
"remove_perm",
"list_perms"
],
"description": "Action to perform"
},
"group_id": {
"type": "number",
"description": "Server group ID (for add_group / remove_group)"
},
"permission": {
"type": "string",
"description": "Permission name (for add_perm / remove_perm)"
},
"value": {
"type": "number",
"description": "Permission value (for add_perm)"
},
"skip": {
"type": "boolean",
"default": false,
"description": "Skip flag for permission"
},
"negate": {
"type": "boolean",
"default": false,
"description": "Negate flag for permission"
}
},
"required": [
"client_id",
"action"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
client_pokeSend a poke (alert popup) to a client — more attention-grabbing than a private messageInput schema{
"type": "object",
"properties": {
"client_id": {
"type": "number",
"description": "Target client ID"
},
"message": {
"type": "string",
"description": "Poke message"
}
},
"required": [
"client_id",
"message"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
complaint_listList complaints on the virtual server, optionally filtered by target clientInput schema{
"type": "object",
"properties": {
"target_client_db_id": {
"type": "number",
"description": "Target client database ID to filter"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
file_infoGet detailed information about a specific file in a channel's file repositoryInput schema{
"type": "object",
"properties": {
"channel_id": {
"type": "number",
"description": "Channel ID containing the file"
},
"file_path": {
"type": "string",
"description": "Full path to the file"
},
"channel_password": {
"type": "string",
"description": "Channel password if required"
}
},
"required": [
"channel_id",
"file_path"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
file_listList files in a channel's file repositoryInput schema{
"type": "object",
"properties": {
"channel_id": {
"type": "number",
"description": "Channel ID"
},
"path": {
"type": "string",
"default": "/",
"description": "Directory path to list"
},
"channel_password": {
"type": "string",
"description": "Channel password if required"
}
},
"required": [
"channel_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
msg_sendSend a text message to a channel or a private message to a clientInput schema{
"type": "object",
"properties": {
"mode": {
"type": "string",
"enum": [
"channel",
"private"
],
"description": "'channel' = send to a channel, 'private' = send to a specific client"
},
"target_id": {
"type": "number",
"description": "Channel ID (for mode=channel) or Client ID (for mode=private)"
},
"message": {
"type": "string",
"description": "Message text to send"
}
},
"required": [
"mode",
"target_id",
"message"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
perm_findFind all assignments of a specific permission across server groups, channel groups, channels, and clientsInput schema{
"type": "object",
"properties": {
"permission": {
"type": "string",
"description": "Permission name (e.g. 'b_virtualserver_info_view')"
}
},
"required": [
"permission"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
perm_listList available permission definitions. Use 'filter' to search by keyword (e.g. 'kick') or 'category' to narrow by domain. Returns only names by default; set verbose=true for descriptionsInput schema{
"type": "object",
"properties": {
"filter": {
"type": "string",
"description": "Keyword to search in permission name or description"
},
"category": {
"type": "string",
"enum": [
"server",
"channel",
"client",
"group",
"filetransfer"
],
"description": "Filter by permission category"
},
"verbose": {
"type": "boolean",
"default": false,
"description": "Include permission descriptions (increases token usage)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
perm_overviewGet the effective permission overview for a client in a specific channel. Shows all permissions and their sourcesInput schema{
"type": "object",
"properties": {
"client_db_id": {
"type": "number",
"description": "Client database ID"
},
"channel_id": {
"type": "number",
"description": "Channel ID"
}
},
"required": [
"client_db_id",
"channel_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
server_diagnoseDiagnose current ServerQuery connection permissions and provide troubleshooting infoInput schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
} | — | | — |
server_infoGet TeamSpeak server information. Use scope 'overview' for general server details, 'connection' for network/bandwidth statisticsInput schema{
"type": "object",
"properties": {
"scope": {
"type": "string",
"enum": [
"overview",
"connection"
],
"default": "overview",
"description": "Info scope: 'overview' = general server details, 'connection' = network statistics"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
server_listList server resources: online clients, channels, server groups, or channel groupsInput schema{
"type": "object",
"properties": {
"resource": {
"type": "string",
"enum": [
"clients",
"channels",
"server_groups",
"channel_groups"
],
"description": "Resource type to list"
}
},
"required": [
"resource"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
server_logView recent entries from the virtual server logInput schema{
"type": "object",
"properties": {
"lines": {
"type": "number",
"minimum": 1,
"maximum": 100,
"default": 50,
"description": "Number of log lines to retrieve"
},
"reverse": {
"type": "boolean",
"default": true,
"description": "Newest first"
},
"instance_log": {
"type": "boolean",
"default": false,
"description": "Show instance log instead of virtual server log"
},
"begin_pos": {
"type": "number",
"description": "Starting position in log file"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
server_searchSearch for online clients by name/UID or channels by name patternInput schema{
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"client",
"channel"
],
"description": "Search type"
},
"pattern": {
"type": "string",
"description": "Search pattern (name or UID)"
},
"by_uid": {
"type": "boolean",
"default": false,
"description": "Search clients by unique identifier instead of name (only for type=client)"
}
},
"required": [
"type",
"pattern"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
sgroup_clientsList all clients assigned to a server groupInput schema{
"type": "object",
"properties": {
"group_id": {
"type": "number",
"description": "Server group ID"
}
},
"required": [
"group_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
sgroup_createCreate a new server groupInput schema{
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "Name for the new server group"
},
"type": {
"type": "number",
"default": 1,
"description": "Group type (0=template, 1=regular, 2=query)"
}
},
"required": [
"name"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
sgroup_deleteDelete a server group. Use force=true to remove even if clients are assignedInput schema{
"type": "object",
"properties": {
"group_id": {
"type": "number",
"description": "Server group ID to delete"
},
"force": {
"type": "boolean",
"default": false,
"description": "Force deletion even if clients are assigned to this group"
}
},
"required": [
"group_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
sgroup_permManage permissions for a server group: add, remove, or listInput schema{
"type": "object",
"properties": {
"group_id": {
"type": "number",
"description": "Server group ID"
},
"action": {
"type": "string",
"enum": [
"add",
"remove",
"list"
],
"description": "Action to perform"
},
"permission": {
"type": "string",
"description": "Permission name (for add/remove)"
},
"value": {
"type": "number",
"description": "Permission value (for add)"
},
"skip": {
"type": "boolean",
"default": false,
"description": "Skip flag"
},
"negate": {
"type": "boolean",
"default": false,
"description": "Negate flag"
}
},
"required": [
"group_id",
"action"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
token_createCreate a new privilege key/token for server or channel group accessInput schema{
"type": "object",
"properties": {
"token_type": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "0 = server group token, 1 = channel group token"
},
"group_id": {
"type": "number",
"description": "Server group ID (type=0) or channel group ID (type=1)"
},
"channel_id": {
"type": "number",
"description": "Channel ID (required for channel group tokens)"
},
"description": {
"type": "string",
"description": "Token description"
},
"custom_set": {
"type": "string",
"description": "Custom client properties (format: ident=value|ident=value)"
}
},
"required": [
"token_type",
"group_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
} | — | | — |
token_listList all privilege keys/tokens available on the serverInput schema{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "object",
"properties": {}
} | — | | — |