Symptom
When trying to modify an active call or conversation, I get a 400 or 404 response.
Applies To
- Voice API
- 400, 404 Response
- Call Control
Resolution
If you receive a 400 or 404 HTTP response when sending an API request to change an active call or conversation, and you have not received the completed event for the Call ID, it is likely your call is residing on a different Data Center. The Data Center region URL is sent to your answer URL when requesting the NCCO, and should be used for all future API requests in the same conversation.
You can find all current region URLs for all Data Centres in our documentation.
Conversations and calls are currently tied to a geographic Data Center, depending on their origin location. If the inbound call is to a virtual number closer to the US Data Center, then the conversation will usually reside in the US. If the outbound API request is closer to the Singapore Data Center, then the conversation will usually reside in Singapore.
If you receive a call to your Puerto Rico virtual number, and you wish to stream an audio file to the Call-ID, and your server is based in Indonesia, you will receive a 404 HTTP response. The call is routed this way because the originating country is Puerto Rico, which is closer to the US Data Center. So the conversation resides in the US, but your server is closer to the Singapore Data Center, and thus the API request is routed to Singapore. The Singapore Data Center cannot find your active call or conversation, so it cannot fulfill the request and returns a 404.
Articles in this section
- Why is there an extended silence at the beginning of a call and how can it be reduced?
- Intermittent WebSocket Disconnections
- What Is An NCCO
- How Does Jitter Impact Voice Calls
- Voice API "Bad Request" Error When Ending Calls Immediately After Creation
- What Is MOS Score In Voice Calls?
- Is there a way to see current active calls on our account?
- How To Make MP3 of Recording From Voice API in Python
- How To Enter DTMF Before MP3 Stream Finishes
- Can a user call leg be removed from the voice call recording?