***

title: transfer
slug: /reference/python/relay/call/transfer
description: Transfer call control to another RELAY application or SWML script.
max-toc-depth: 3
---------------------

For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

Transfer control of the call to another RELAY application or SWML script.
The current application loses control of the call after a successful transfer.

## **Parameters**

<ParamField path="dest" type="str" required={true} toc={true}>
  The transfer destination. This can be a RELAY context name or a URL pointing
  to a SWML script.
</ParamField>

## **Returns**

`dict` -- Server response confirming the transfer.

## **Example**

```python {16}
from signalwire.relay import RelayClient

client = RelayClient(
    project="your-project-id",
    token="your-api-token",
    host="your-space.signalwire.com",
    contexts=["default"],
)

@client.on_call
async def handle_call(call):
    await call.answer()
    action = await call.play([{"type": "tts", "text": "Transferring you now..."}])
    await action.wait()

    result = await call.transfer("support-queue")
    print(f"Transfer result: {result}")

client.run()
```