Properties
| Name | Type | Description |
|---|---|---|
| message | object | This is spoken to the customer before connecting them to the destination. Usage: - If this is not provided and transfer tool messages is not provided, default is "Transferring the call now". - If set |
| type | string | |
| numberE164CheckEnabled | boolean | This is the flag to toggle the E164 check for the `number` field. This is an advanced property which should be used if you know your use case requires it. Use cases: - `false`: To allow non-E164 numbe |
| number | string | This is the phone number to transfer the call to. |
| extension | string | This is the extension to dial after transferring the call to the `number`. |
| callerId | string | This is the caller ID to use when transferring the call to the `number`. Usage: - If not provided, the caller ID will be the number the call is coming **from**. Example: a customer with number +141511 |
| transferPlan | object | This configures how transfer is executed and the experience of the destination party receiving the call. Defaults to `blind-transfer`. @default `transferPlan.mode='blind-transfer'` |
| description | string | This is the description of the destination, used by the AI to choose when and how to transfer the call. |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/TransferDestinationNumber",
"title": "TransferDestinationNumber",
"type": "object",
"properties": {
"message": {
"description": "This is spoken to the customer before connecting them to the destination.\n\nUsage:\n- If this is not provided and transfer tool messages is not provided, default is \"Transferring the call now\".\n- If set to \"\", nothing is spoken. This is useful when you want to silently transfer. This is especially useful when transferring between assistants in a squad. In this scenario, you likely also want to set `assistant.firstMessageMode=assistant-speaks-first-with-model-generated-message` for the destination assistant.\n\nThis accepts a string or a ToolMessageStart class. Latter is useful if you want to specify multiple messages for different languages through the `contents` field.",
"oneOf": [
{
"type": "string"
},
{
"$ref": "#/components/schemas/CustomMessage"
}
]
},
"type": {
"type": "string",
"enum": [
"number"
]
},
"numberE164CheckEnabled": {
"type": "boolean",
"description": "This is the flag to toggle the E164 check for the `number` field. This is an advanced property which should be used if you know your use case requires it.\n\nUse cases:\n- `false`: To allow non-E164 numbers like `+001234567890`, `1234`, or `abc`. This is useful for dialing out to non-E164 numbers on your SIP trunks.\n- `true` (default): To allow only E164 numbers like `+14155551234`. This is standard for PSTN calls.\n\nIf `false`, the `number` is still required to only contain alphanumeric characters (regex: `/^\\+?[a-zA-Z0-9]+$/`).\n\n@default true (E164 check is enabled)",
"default": true
},
"number": {
"type": "string",
"description": "This is the phone number to transfer the call to.",
"minLength": 3,
"maxLength": 40
},
"extension": {
"type": "string",
"description": "This is the extension to dial after transferring the call to the `number`.",
"minLength": 1,
"maxLength": 10
},
"callerId": {
"type": "string",
"description": "This is the caller ID to use when transferring the call to the `number`.\n\nUsage:\n- If not provided, the caller ID will be the number the call is coming **from**.\n Example: a customer with number +14151111111 calls in to and the assistant transfers out to +16470000000. +16470000000 will see +14151111111 as the caller.\n For inbound calls, the caller ID is the customer's number. For outbound calls, the caller ID is the phone number of the assistant.\n- To change this behavior, provide a `callerId`.\n- Set to '{{customer.number}}' to always use the customer's number as the caller ID.\n- Set to '{{phoneNumber.number}}' to always use the phone number of the assistant as the caller ID.\n- Set to any E164 number to always use that number as the caller ID. This needs to be a number that is owned or verified by your Transport provider like Twilio.\n\nFor Twilio, you can read up more here: https://www.twilio.com/docs/voice/twiml/dial#callerid",
"maxLength": 40
},
"transferPlan": {
"description": "This configures how transfer is executed and the experience of the destination party receiving the call. Defaults to `blind-transfer`.\n\n@default `transferPlan.mode='blind-transfer'`",
"allOf": [
{
"$ref": "#/components/schemas/TransferPlan"
}
]
},
"description": {
"type": "string",
"description": "This is the description of the destination, used by the AI to choose when and how to transfer the call."
}
},
"required": [
"type",
"number"
]
}