transfer.md

call.transfer(
    destination: str,
    instructions: str | None = None,
)
await call.transfer(
  destination: string,
  instructions?: string,
): Promise<void>

transfer()

call.transfer() hands the active call off to another phone number or SIP address. It is a soft transfer — the agent notifies the caller before bridging, so there's no abrupt silence or dead air.

@agent.on_task_complete("collect_issue")
def on_issue_collected(call: guava.Call):
    call.transfer(
        destination="+18005550199",
        instructions="Let the caller know you're transferring them to a service representative."
    )
agent.onTaskComplete("collect_issue", async (call: guava.Call) => {
  await call.transfer(
    " +18005550199",
    "Let the caller know you're transferring them to a service representative."
  );
});

<PropTable rows={[ { name: "destination", type: "str", desc: "The phone number or SIP address to transfer the call to.", }, { name: "instructions", type: "str | None", desc: 'What the agent should say before bridging. Defaults to a generic "I'll transfer you now" message.', }, ]} />

Example