Got this error: {"message": "cold_transfer_failed...
# ask-ai
l
Got this error: {"message": "cold_transfer_failed", "level": "ERROR", "name": "root", "room": "sip-pool-room-e4c2b0ca-ad8b-4544-8495-122037465aa4", "participant_identity": "sip_+919853527185", "transfer_to": "tel:+919437671511", "error": "TwirpError(code=permission_denied, message=twirp error unknown: call transfer failed: sip status: 403: Caller ID verification rejected, status=403, metadata={'error_details': 'CAcSRmNhbGwgdHJhbnNmZXIgZmFpbGVkOiBzaXAgc3RhdHVzOiA0MDM6IENhbGxlciBJRCB2ZXJpZmljYXRpb24gcmVqZWN0ZWQaTQoldHlwZS5nb29nbGVhcGlzLmNvbS9saXZla2l0LlNJUFN0YXR1cxIkCJMDEh9DYWxsZXIgSUQgdmVyaWZpY2F0aW9uIHJlamVjdGVk', 'sip_status': 'Caller ID verification rejected', 'sip_status_code': '403'})", "pid": 57, "job_id": "AJ_2WAYwAda8MTh", "room_id": "RM_syCfS9nbEyks", "timestamp": "2026-03-18T041456.401360+00:00"}
✅ 1
t
Thanks for reaching out, Piyush. I'm an AI assistant and I'm here to help. Give me a moment while I research this topic.
Thanks — I’m sorry you ran into this error. You’re seeing a cold transfer fail with a SIP 403 and the SIP provider’s message: “Caller ID verification rejected.” I’ll explain what that means and the practical steps you can take to fix it. What this error means • The SIP provider rejected the outbound transfer because the Caller ID (ANI) presented for the outbound call is not allowed or not verified by the provider. • A 403 with “Caller ID verification rejected” is a provider-side rejection — LiveKit attempted the transfer but the SIP trunk refused the call based on its caller ID rules. Actions to resolve 1. Verify the caller ID number ◦ Ensure the number being used as the outbound Caller ID is registered/verified in your SIP provider account. ◦ If you are setting
sip_number
or otherwise specifying the ANI for transfers, make sure that exact number is whitelisted/verified by the provider. 1. Confirm caller ID passthrough is allowed ◦ Some providers block arbitrary caller IDs unless caller ID passthrough/spoofing is explicitly allowed on the trunk. Confirm your trunk/settings permit presenting that Caller ID. 1. Check provider rules for outbound numbers ◦ Some providers restrict which numbers can be used as caller ID (for example, must belong to your account, be purchased from them, or be explicitly validated). Make sure you meet those requirements. 1. If you need a workaround ◦ Use a provider-verified number as the transfer caller ID. ◦ Configure the transfer request to present a number that your SIP provider accepts (for example, a number provisioned in that provider account). What I can help with next • If you tell me the SIP provider you’re using (e.g., Twilio, Telnyx) and which Caller ID you attempted to present, I can give more specific steps for that provider (where to verify numbers or enable passthrough). • If you’d like, share the transfer request fields you used (redact sensitive tokens) so I can confirm which field contains the caller ID and whether it looks correct. Reference • For more detail on how LiveKit interacts with SIP transfers and caller ID handling, see: Preserving Caller ID During SIP Transfers in LiveKit Agents: https://kb.livekit.io/articles/8118805435-preserving-caller-id-during-sip-transfers-in-livekit-agents Would you like to share the provider and the caller ID you tried to use so I can guide you through the exact verification steps? Sources: Preserving Caller ID During SIP Transfers in LiveKit Agents, with interactive elements