When trying to modify an active call or conversation, I get a 400 or 404 response.
- Voice API
- 400, 404 Response
- Call Control
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.