Integrate in 5 minutes

PDF version

*: Nexiwave API is part of Nexiwave Enterprise service. Contact us for setup.

Have You Considered?

Nexiwave's "Voicemail-to-text Email Service" does not require any coding. Simply send voicemail audio to a Nexiwave email address. Our automated service will receive, transcribe and send the Voicemail Transcription email to your destination address. You save valuable development and testing time and instant enterprise class service integration.


Nexiwave API is as simple as posting the audio to Nexiwave via HTTP and receiving transcript back.

Nexiwave Simple API Call Flow


For the impatient ones, here is the one liner. The wav file will be transcribed and the transcript will be printed to stdout:
wget -q --max-redirect=100 --post-file /data/audio/test.wav --password=mypassword --header="Content-Type: audio/vnd.wav" -O - ""
The response will be just the raw transcript. Sample Response:
Hi. My name is Carla I'm calling with I.B.M.. If you can give me a call back, it'd be greatly appreciated it. Our number here is 1 (800) 555-1234.


(More code samples: PHP/CURL    PYTHON       Java      C#       VB.NET )



Here is the PHP sample code:
// Change these:
$user = '';
$passwd = 'XYZ';
$file = '/data/audio/test.wav';

// the request URL
$url = '';
// Build the connection object:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_USERPWD, $user+":"+$passwd);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
// curl_setopt($ch, CURLOPT_MAXREDIRS, 100);
// curl_setopt($ch, CURLOPT_VERBOSE, 1);
// To explicitly configure to wait indefintely for sync requests:
// curl_setopt($ch, CURLOPT_CONNECTTIMEOUT ,0);
// curl_setopt($ch, CURLOPT_TIMEOUT, 0);
// set_time_limit(0); // time execution of php script self

$post = array("data.mediaFileData"=>sprintf("@%s", $file),);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post);
// Ready to send:
$result = curl_exec($ch);
$code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
if ($code == 200) {
    $result = json_decode($result, true);
    $transcript = $result["text"];
    // Perform your magic here
    echo $transcript;
else {
    // Something is wrong. Timed out? Configure the timeout setting above.
    throw new exception($result);



Also check out our Simple CallBack API.

Instructions for:

magicJACK (also works for ooma, netTalk, RingCentral, Line2, etc)

Outlook/LYNC Unified Messaging


Asterisk, FreeSWITCH, PBXInaFlash



Terms of Use    © Copyright 2017 Nexiwave
  legal  cancel