Skip to main content
POST
/
api
/
v1
/
channels
/
{channel_id}
/
targets
Python (SDK)
import os
from syllable_sdk import SyllableSDK, models


with SyllableSDK(
    api_key_header=os.getenv("SYLLABLESDK_API_KEY_HEADER", ""),
) as ss_client:

    res = ss_client.channels.targets.create(channel_id=824809, channel_target_create_request={
        "agent_id": 1,
        "channel_id": 1,
        "target": "+19995551234",
        "target_mode": models.TargetModes.EMAIL,
        "fallback_target": "+19995551235",
        "is_test": True,
    })

    # Handle response
    print(res)
{
  "agent_id": 123,
  "channel_id": 123,
  "target": "<string>",
  "target_mode": "voice",
  "id": 123,
  "channel_name": "<string>",
  "updated_at": "2023-11-07T05:31:56Z",
  "last_updated_by": "<string>",
  "fallback_target": "+19995551235",
  "is_test": false,
  "agent": {
    "name": "<string>",
    "type": "<string>",
    "prompt_id": 123,
    "custom_message_id": 123,
    "timezone": "<string>",
    "variables": {},
    "tool_headers": {
      "some-header": "some-value"
    },
    "id": 123,
    "updated_at": "2023-11-07T05:31:56Z",
    "last_updated_by": "[email protected]",
    "description": "Agent for answering questions about weather.",
    "label": "Information",
    "labels": [
      "Information",
      "Weather"
    ],
    "language_group_id": 1,
    "prompt_tool_defaults": [
      {
        "tool_name": "<string>",
        "default_values": [
          {
            "field_name": "<string>",
            "default_value": "<unknown>"
          }
        ]
      }
    ],
    "languages": [
      "<string>"
    ],
    "agent_initiated": false,
    "stt_provider": "Google STT V2 (Chirp 2)",
    "wait_sound": "No Sound",
    "prompt": {
      "name": "<string>",
      "type": "<string>",
      "llm_config": {
        "provider": "azure_openai",
        "model": "gpt-4o",
        "version": "2024-05-13",
        "api_version": "2024-06-01",
        "temperature": 1,
        "seed": 123
      },
      "id": 123,
      "last_updated": "2024-01-01T12:00:00Z",
      "description": "Prompt for a weather agent.",
      "context": "You are a weather agent. Answer the user's questions about weather and nothing else.",
      "tools": [],
      "session_end_enabled": false,
      "session_end_tool_id": 1,
      "edit_comments": "Updated prompt text to include requirement to not answer questions that aren't about weather.",
      "last_updated_by": "[email protected]",
      "session_end_tool": {
        "name": "<string>",
        "definition": {
          "tool": {
            "function": {
              "name": "<string>",
              "description": "<string>",
              "parameters": "<unknown>"
            },
            "type": "function"
          },
          "type": "endpoint",
          "endpoint": {
            "url": "<string>",
            "method": "get",
            "argument_location": "body"
          },
          "context": {
            "task": {
              "id": "<string>",
              "config": {},
              "variables": [
                {
                  "name": "<string>",
                  "value": "<unknown>",
                  "value_from": {
                    "expression": "<string>",
                    "type": "cel"
                  },
                  "type": "string",
                  "description": "<string>",
                  "title": "<string>",
                  "format": "<string>",
                  "pattern": "<string>",
                  "enum": [
                    "<string>"
                  ],
                  "examples": [
                    "<unknown>"
                  ]
                }
              ],
              "metadata": {
                "priority": 123,
                "parent_tool_name": "<string>"
              },
              "tool": {
                "name": "<string>",
                "description": "<string>"
              },
              "type": "expression",
              "version": "v1alpha",
              "inputs": [
                {
                  "name": "<string>",
                  "type": "string",
                  "description": "<string>",
                  "title": "<string>",
                  "format": "<string>",
                  "pattern": "<string>",
                  "enum": [
                    "<string>"
                  ],
                  "examples": [
                    "<unknown>"
                  ],
                  "required": true
                }
              ],
              "expression": {
                "expression": "<string>",
                "type": "cel"
              },
              "output": "<unknown>",
              "on": {
                "start": [
                  {
                    "name": "<string>",
                    "value": "<unknown>",
                    "value_from": "<unknown>",
                    "if": "<unknown>",
                    "action": "set"
                  }
                ],
                "submit": [
                  {
                    "name": "<string>",
                    "value": "<unknown>",
                    "value_from": "<unknown>",
                    "if": "<unknown>",
                    "action": "set"
                  }
                ]
              }
            }
          },
          "defaults": "<unknown>",
          "static_parameters": [
            {
              "default": "fahrenheit",
              "description": "Whether the temperature information should be fetched in Celsius or Fahrenheit",
              "name": "temperature_unit",
              "required": false,
              "type": "string"
            }
          ],
          "result": "<unknown>",
          "options": {
            "propagate_tool_result": false
          }
        },
        "service_id": 123,
        "id": 123,
        "last_updated": "2023-11-07T05:31:56Z",
        "last_updated_by": "<string>",
        "last_updated_comments": "Updated to use new API endpoint",
        "service_name": "<string>",
        "prompts_info": [
          {
            "id": 123,
            "name": "<string>"
          }
        ],
        "agents_info": [
          {
            "id": 123,
            "name": "<string>"
          }
        ]
      },
      "agent_count": 5,
      "version_number": 1,
      "tools_full": [
        {
          "name": "<string>",
          "definition": {
            "tool": {
              "function": {
                "name": "<string>",
                "description": "<string>",
                "parameters": "<unknown>"
              },
              "type": "function"
            },
            "type": "endpoint",
            "endpoint": {
              "url": "<string>",
              "method": "get",
              "argument_location": "body"
            },
            "context": {
              "task": {
                "id": "<string>",
                "config": {},
                "variables": [
                  {
                    "name": "<string>",
                    "value": "<unknown>",
                    "value_from": {
                      "expression": "<string>",
                      "type": "cel"
                    },
                    "type": "string",
                    "description": "<string>",
                    "title": "<string>",
                    "format": "<string>",
                    "pattern": "<string>",
                    "enum": [
                      "<string>"
                    ],
                    "examples": [
                      "<unknown>"
                    ]
                  }
                ],
                "metadata": {
                  "priority": 123,
                  "parent_tool_name": "<string>"
                },
                "tool": {
                  "name": "<string>",
                  "description": "<string>"
                },
                "type": "expression",
                "version": "v1alpha",
                "inputs": [
                  {
                    "name": "<string>",
                    "type": "string",
                    "description": "<string>",
                    "title": "<string>",
                    "format": "<string>",
                    "pattern": "<string>",
                    "enum": [
                      "<string>"
                    ],
                    "examples": [
                      "<unknown>"
                    ],
                    "required": true
                  }
                ],
                "expression": {
                  "expression": "<string>",
                  "type": "cel"
                },
                "output": "<unknown>",
                "on": {
                  "start": [
                    {
                      "name": "<string>",
                      "value": "<unknown>",
                      "value_from": "<unknown>",
                      "if": "<unknown>",
                      "action": "set"
                    }
                  ],
                  "submit": [
                    {
                      "name": "<string>",
                      "value": "<unknown>",
                      "value_from": "<unknown>",
                      "if": "<unknown>",
                      "action": "set"
                    }
                  ]
                }
              }
            },
            "defaults": "<unknown>",
            "static_parameters": [
              {
                "default": "fahrenheit",
                "description": "Whether the temperature information should be fetched in Celsius or Fahrenheit",
                "name": "temperature_unit",
                "required": false,
                "type": "string"
              }
            ],
            "result": "<unknown>",
            "options": {
              "propagate_tool_result": false
            }
          },
          "service_id": 123,
          "id": 123,
          "last_updated": "2023-11-07T05:31:56Z",
          "last_updated_by": "<string>",
          "last_updated_comments": "Updated to use new API endpoint",
          "service_name": "<string>",
          "prompts_info": [
            {
              "id": 123,
              "name": "<string>"
            }
          ],
          "agents_info": [
            {
              "id": 123,
              "name": "<string>"
            }
          ]
        }
      ]
    },
    "custom_message": {
      "name": "<string>",
      "text": "<string>",
      "id": 123,
      "updated_at": "2023-11-07T05:31:56Z",
      "last_updated_by": "<string>",
      "label": "Customer service",
      "rules": [],
      "agent_count": 1,
      "type": "greeting"
    },
    "channel_targets": [
      "<unknown>"
    ],
    "tools": [
      {
        "name": "<string>",
        "definition": {
          "tool": {
            "function": {
              "name": "<string>",
              "description": "<string>",
              "parameters": "<unknown>"
            },
            "type": "function"
          },
          "type": "endpoint",
          "endpoint": {
            "url": "<string>",
            "method": "get",
            "argument_location": "body"
          },
          "context": {
            "task": {
              "id": "<string>",
              "config": {},
              "variables": [
                {
                  "name": "<string>",
                  "value": "<unknown>",
                  "value_from": {
                    "expression": "<string>",
                    "type": "cel"
                  },
                  "type": "string",
                  "description": "<string>",
                  "title": "<string>",
                  "format": "<string>",
                  "pattern": "<string>",
                  "enum": [
                    "<string>"
                  ],
                  "examples": [
                    "<unknown>"
                  ]
                }
              ],
              "metadata": {
                "priority": 123,
                "parent_tool_name": "<string>"
              },
              "tool": {
                "name": "<string>",
                "description": "<string>"
              },
              "type": "expression",
              "version": "v1alpha",
              "inputs": [
                {
                  "name": "<string>",
                  "type": "string",
                  "description": "<string>",
                  "title": "<string>",
                  "format": "<string>",
                  "pattern": "<string>",
                  "enum": [
                    "<string>"
                  ],
                  "examples": [
                    "<unknown>"
                  ],
                  "required": true
                }
              ],
              "expression": {
                "expression": "<string>",
                "type": "cel"
              },
              "output": "<unknown>",
              "on": {
                "start": [
                  {
                    "name": "<string>",
                    "value": "<unknown>",
                    "value_from": {
                      "expression": "<string>",
                      "type": "cel"
                    },
                    "if": {
                      "expression": "<string>",
                      "type": "cel"
                    },
                    "action": "set"
                  }
                ],
                "submit": [
                  {
                    "name": "<string>",
                    "value": "<unknown>",
                    "value_from": {
                      "expression": "<string>",
                      "type": "cel"
                    },
                    "if": {
                      "expression": "<string>",
                      "type": "cel"
                    },
                    "action": "set"
                  }
                ]
              }
            }
          },
          "defaults": "<unknown>",
          "static_parameters": [
            {
              "default": "fahrenheit",
              "description": "Whether the temperature information should be fetched in Celsius or Fahrenheit",
              "name": "temperature_unit",
              "required": false,
              "type": "string"
            }
          ],
          "result": "<unknown>",
          "options": {
            "propagate_tool_result": false
          }
        },
        "service_id": 123,
        "id": 123,
        "last_updated": "2023-11-07T05:31:56Z",
        "last_updated_by": "<string>",
        "last_updated_comments": "Updated to use new API endpoint",
        "service_name": "<string>",
        "prompts_info": [
          {
            "id": 123,
            "name": "<string>"
          }
        ],
        "agents_info": [
          {
            "id": 123,
            "name": "<string>"
          }
        ]
      }
    ],
    "language_group": {
      "name": "<string>",
      "language_configs": [
        {
          "language_code": "yue-HK",
          "voice_provider": "OpenAI",
          "voice_display_name": "Achernar (English)",
          "dtmf_code": 123,
          "voice_speed": 1,
          "voice_pitch": 0
        }
      ],
      "skip_current_language_in_message": true,
      "id": 123,
      "updated_at": "2023-11-07T05:31:56Z",
      "last_updated_by": "<string>",
      "description": "Languages spoken by operators at Call Center 1",
      "edit_comments": "Added Spanish support.",
      "agents_info": [
        {
          "id": 1,
          "name": "Test Agent"
        }
      ]
    }
  }
}

Authorizations

Syllable-API-Key
string
header
required

Path Parameters

channel_id
integer
required

Body

application/json

Request model to create a channel target.

agent_id
integer
required

The internal ID of the agent associated with the channel target

channel_id
integer
required

The internal ID of the channel associated with the channel target

target
string
required

The name of the channel target. Must correspond to an organization-level target (available targets can be fetched from /channels/available-targets).

target_mode
enum<string>
required

The mode of the channel target (must match one of the supported modes of the associated channel)

Available options:
voice,
chat,
sms,
email
fallback_target
string | null

The fallback for the channel target (currently only supported for "voice" mode)

Example:

"+19995551235"

is_test
boolean
default:false

Whether the channel target is intended for testing. If true, any sessions created through this target will be labeled as a test session (i.e., will not be included in dashboard data and can easily be filtered out in the Sessions screen in the SyllableConsole).

Response

Successful Response

Response model for channel target operations. A channel target links a channel to an agent, allowing users to communicate with the agent through that channel. For more information, see Console docs.

agent_id
integer
required

The internal ID of the agent associated with the channel target

channel_id
integer
required

The internal ID of the channel associated with the channel target

target
string
required

The name of the channel target. Must correspond to an organization-level target (available targets can be fetched from /channels/available-targets).

target_mode
enum<string>
required

The mode of the channel target (must match one of the supported modes of the associated channel)

Available options:
voice,
chat,
sms,
email
id
integer
required

The internal ID of the channel target

channel_name
string
required

The name of the channel associated with the channel target

updated_at
string<date-time>
required

Timestamp of the most recent update to the channel target

last_updated_by
string
required

Email of the user who last updated the channel target

fallback_target
string | null

The fallback for the channel target (currently only supported for "voice" mode)

Example:

"+19995551235"

is_test
boolean
default:false

Whether the channel target is intended for testing. If true, any sessions created through this target will be labeled as a test session (i.e., will not be included in dashboard data and can easily be filtered out in the Sessions screen in the SyllableConsole).

agent
AgentResponse · object

Definition of the agent with which the channel target is associated.