Set a team's tool permissions
Replaces the grant whole and returns it. Every server must be one of the instance’s MCP servers or APIs, named once. A key reaches the servers granted to it or to its team, and the servers open to every key; when both grant, only the servers in both. The instance must be ready; otherwise the request answers 409.
PUT
/
agent_gateways
/
{instance_id}
/
teams
/
{team_id}
/
tool_permissions
JavaScript
import Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
const AgentGatewayToolPermissions = await client.agentGateways.teams.toolPermissions.create('instance_id', 'team_id', {
servers: [],
});
console.log(AgentGatewayToolPermissions.data);import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)
agent_gateway_tool_permissions = client.agent_gateways.teams.tool_permissions.create(
instance_id="instance_id",
team_id="team_id",
servers=[],
)
print(agent_gateway_tool_permissions.data)
package main
import (
"context"
"fmt"
"github.com/team-telnyx/telnyx-go"
"github.com/team-telnyx/telnyx-go/option"
)
func main() {
client := telnyx.NewClient(
option.WithAPIKey("My API Key"),
)
toolPermission, err := client.AgentGateways.Teams.ToolPermissions.New(
context.TODO(),
"instance_id",
"team_id",
telnyx.AgentGatewayTeamToolPermissionNewParams{
Servers: "servers",
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", toolPermission.Data)
}
package com.telnyx.sdk.example;
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
import com.telnyx.sdk.models.agentGateways.teams.toolPermissions.ToolPermissionCreateParams;
import java.util.List;
public final class Main {
private Main() {}
public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
ToolPermissionCreateParams params = ToolPermissionCreateParams.builder()
.servers(List.of())
.build();
var response = client.agentGateways().teams().toolPermissions().create("instance_id", "team_id", params);
}
}require "telnyx"
telnyx = Telnyx::Client.new(api_key: "My API Key")
agent_gateway_tool_permissions = telnyx.agent_gateways.teams.tool_permissions.create("instance_id", "team_id", servers: [])
puts(agent_gateway_tool_permissions)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Telnyx\Client;
use Telnyx\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('TELNYX_API_KEY') ?: 'My API Key');
try {
$agent_gateway_tool_permissions = $client->agentGateways->teams->toolPermissions->create(
'instance_id',
'team_id',
servers: [],
);
var_dump($agent_gateway_tool_permissions);
} catch (APIException $e) {
echo $e->getMessage();
}telnyx agent-gateways:teams:tool-permissions create \
--api-key 'My API Key' \
--instance-id 32ce035d-3165-4031-b1a7-a7c0c259590a \
--team-id d7b21324-a2bf-406c-ba49-c6ec4d23d476 \
--servers serverscurl --request PUT \
--url https://api.telnyx.com/v2/agent_gateways/{instance_id}/teams/{team_id}/tool_permissions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"servers": [
{
"id": "88d5a97b-4080-4855-8bac-a39811b1dc24",
"tools": [
"get_order"
]
}
]
}
'{
"data": {
"servers": [
{
"id": "88d5a97b-4080-4855-8bac-a39811b1dc24",
"tools": [
"get_order"
]
}
]
}
}{
"errors": [
{
"code": "10013",
"title": "Missing association",
"detail": "One of the associated fields does not exist.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10013"
},
"source": {
"pointer": "/servers/0/id"
}
}
]
}{
"errors": [
{
"code": "10009",
"title": "Authentication failed",
"detail": "The required authentication headers were either invalid or not included in the request.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10009"
}
}
]
}{
"errors": [
{
"code": "10005",
"title": "Resource not found",
"detail": "The requested resource or URL could not be found.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10005"
}
}
]
}{
"errors": [
{
"code": "99901",
"title": "Instance not ready",
"detail": "The instance is not ready; its engine is not running."
}
]
}{
"errors": [
{
"code": "10027",
"title": "Unprocessable Entity",
"detail": "The value is invalid.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10027"
},
"source": {
"pointer": "/servers"
}
}
]
}{
"errors": [
{
"code": "99903",
"title": "Engine unavailable",
"detail": "The instance's engine did not answer; try again shortly."
}
]
}Authorizations
Telnyx API key
Path Parameters
The Agent Gateway's id.
The team's id.
Body
application/json
The servers granted, each with its tools. [] grants none.
Show child attributes
Show child attributes
Response
The grant
Show child attributes
Show child attributes
Was this page helpful?
JavaScript
import Telnyx from 'telnyx';
const client = new Telnyx({
apiKey: process.env['TELNYX_API_KEY'], // This is the default and can be omitted
});
const AgentGatewayToolPermissions = await client.agentGateways.teams.toolPermissions.create('instance_id', 'team_id', {
servers: [],
});
console.log(AgentGatewayToolPermissions.data);import os
from telnyx import Telnyx
client = Telnyx(
api_key=os.environ.get("TELNYX_API_KEY"), # This is the default and can be omitted
)
agent_gateway_tool_permissions = client.agent_gateways.teams.tool_permissions.create(
instance_id="instance_id",
team_id="team_id",
servers=[],
)
print(agent_gateway_tool_permissions.data)
package main
import (
"context"
"fmt"
"github.com/team-telnyx/telnyx-go"
"github.com/team-telnyx/telnyx-go/option"
)
func main() {
client := telnyx.NewClient(
option.WithAPIKey("My API Key"),
)
toolPermission, err := client.AgentGateways.Teams.ToolPermissions.New(
context.TODO(),
"instance_id",
"team_id",
telnyx.AgentGatewayTeamToolPermissionNewParams{
Servers: "servers",
},
)
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", toolPermission.Data)
}
package com.telnyx.sdk.example;
import com.telnyx.sdk.client.TelnyxClient;
import com.telnyx.sdk.client.okhttp.TelnyxOkHttpClient;
import com.telnyx.sdk.models.agentGateways.teams.toolPermissions.ToolPermissionCreateParams;
import java.util.List;
public final class Main {
private Main() {}
public static void main(String[] args) {
TelnyxClient client = TelnyxOkHttpClient.fromEnv();
ToolPermissionCreateParams params = ToolPermissionCreateParams.builder()
.servers(List.of())
.build();
var response = client.agentGateways().teams().toolPermissions().create("instance_id", "team_id", params);
}
}require "telnyx"
telnyx = Telnyx::Client.new(api_key: "My API Key")
agent_gateway_tool_permissions = telnyx.agent_gateways.teams.tool_permissions.create("instance_id", "team_id", servers: [])
puts(agent_gateway_tool_permissions)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Telnyx\Client;
use Telnyx\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('TELNYX_API_KEY') ?: 'My API Key');
try {
$agent_gateway_tool_permissions = $client->agentGateways->teams->toolPermissions->create(
'instance_id',
'team_id',
servers: [],
);
var_dump($agent_gateway_tool_permissions);
} catch (APIException $e) {
echo $e->getMessage();
}telnyx agent-gateways:teams:tool-permissions create \
--api-key 'My API Key' \
--instance-id 32ce035d-3165-4031-b1a7-a7c0c259590a \
--team-id d7b21324-a2bf-406c-ba49-c6ec4d23d476 \
--servers serverscurl --request PUT \
--url https://api.telnyx.com/v2/agent_gateways/{instance_id}/teams/{team_id}/tool_permissions \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"servers": [
{
"id": "88d5a97b-4080-4855-8bac-a39811b1dc24",
"tools": [
"get_order"
]
}
]
}
'{
"data": {
"servers": [
{
"id": "88d5a97b-4080-4855-8bac-a39811b1dc24",
"tools": [
"get_order"
]
}
]
}
}{
"errors": [
{
"code": "10013",
"title": "Missing association",
"detail": "One of the associated fields does not exist.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10013"
},
"source": {
"pointer": "/servers/0/id"
}
}
]
}{
"errors": [
{
"code": "10009",
"title": "Authentication failed",
"detail": "The required authentication headers were either invalid or not included in the request.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10009"
}
}
]
}{
"errors": [
{
"code": "10005",
"title": "Resource not found",
"detail": "The requested resource or URL could not be found.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10005"
}
}
]
}{
"errors": [
{
"code": "99901",
"title": "Instance not ready",
"detail": "The instance is not ready; its engine is not running."
}
]
}{
"errors": [
{
"code": "10027",
"title": "Unprocessable Entity",
"detail": "The value is invalid.",
"meta": {
"url": "https://developers.telnyx.com/docs/overview/errors/10027"
},
"source": {
"pointer": "/servers"
}
}
]
}{
"errors": [
{
"code": "99903",
"title": "Engine unavailable",
"detail": "The instance's engine did not answer; try again shortly."
}
]
}