Menu

404 HTTP Response When Sending an API Request to Change an Active Call


Symptom

When trying to change an active call or conversation, I get a 404 response.

Applies To

  • Voice API
  • 404 Response
  • Call Control

Resolution

If you receive a 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. You can then resend your API request directly to the other Data Centre using the following API endpoints:

  • https://api-us-1.nexmo.com
  • https://api-sg-1.nexmo.com

Cause

Conversations and calls are currently tied to a geographic Data Center, depending on the location they originated. If the inbound call is to a virtual number closer to the US Data Center, then the conversation will reside in the US. If the outbound API request is closer to the Singapore Data Center, then the conversation will reside in Singapore. Media (RTP) will continue to use the lowest latency route available using Automatic Location-Based Routing.

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 in this way because the originating country is Puerto Rico and this country is closer to the USA Data Center, and so the conversation resides in the USA, but your server is closer to the Singapore Data Center, and thus the API request is routed to Singapore. As the Singapore Data Center cannot find your active call or conversation, it is unable to fulfill the request and so returns a 404.

A fix is in development to enable full cross-data-center clustering and enable calls to move between data centers.

Was this article helpful?
0 out of 0 found this helpful
Follow
Have more questions? Submit a request