Search
K

Transcription API

- NEW! - Interactive API docs, now live!
Visit api-docs.plumvoice.com to read Plum API documentation, build and test requests in our interactive API sandbox, review the responses, and share it all with your team.

Overview

Attention! Our queue transcription API method has reached its End of Life (EOL). Please use our AI-powered transcription method instead.
Review the following links for sample use cases of when a company might benefit from the Transcription API or detailed examples that explain how to call the Transcription API across Plum's product suite.
Plum offers two services for its Transcription REST API:
Please note that each of the Transcription REST APIs use HTTP AUTH for authentication. Please contact your account manager to get access credentials.
All of the Transcription REST APIs have the same return format that includes a status (success or failure), error message, and the result data.

Sample Responses

XML (success)
XML (failure)
JSON (success)
JSON (failure)
<sample>
<status>success</status>
<error/>
<result>
<!-- SAMPLE RESULT DATA -->
</result>
</sample>
<sample>
<status>failure</status>
<error>Unauthorized access to sample service</error>
</sample>
{
"status":"success",
"error":"",
"result": {
// SAMPLE RESULT DATA
}
}
{
"status":"failure",
"error":"Unauthorized access to sample service",
}
get
https://hosting.plumvoice.com
/ws/transcription/{resource_type}/{transcription_id}
Transcription Status
Sample Code
checkstatus.php
CURL (command line)
<?php
header("Content-type: text/xml");
// for this example, our transcription_id is f85bd7682c9f71b60e216f2f6d39e95d
$transcription_id = 'f85bd7682c9f71b60e216f2f6d39e95d';
// initialize curl
$ch = curl_init();
// set necessary curl options
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERPWD, "username:password");
curl_setopt($ch, CURLOPT_URL, "https://hosting.plumvoice.com/ws/transcription/status.xml/".$transcription_message_id);
echo(curl_exec($ch));
curl_close($ch);
?>
curl -u username:password https://hosting.plumvoice.com/ws/transcription/status.json/f85bd7682c9f71b60e216f2f6d39e95d
post
https://hosting.plumvoice.com
/ws/transcription/{resource_type}
Real-Time Transcription
Sample Code
transcribe.xml
CURL (command line)
<?xml version="1.0"?>
<vxml version="2.0">
<form>
<record name="recording1" beep="true">
<prompt bargein="false">Record your message after the beep.</prompt>
</record>
<block>
<var name="language" expr="'en-US'"/>
<var name="audio" expr="recording1"/>
<data name="transcribe" src="https://username:[email protected]/ws/transcription/transcribe.json" namelist="language audio" method="post" enctype="multipart/form-data" accept="application/json"/>
<if cond="transcribe.status == 'success'">
<log expr="'transcription_id: '+transcribe.result.transcription_id"/>
<prompt>You said: <value expr="transcribe.result.message"/></prompt>
<else/>
<log expr="'error: '+transcribe.error"/>
</if>
</block>
</form>
</vxml>
curl -u username:password -F language=en-US -F audio=@/path/to/audio https://hosting.plumvoice.com/ws/transcription/transcribe.json

Supported Language Codes

Language Code
Language
Country
de-DE
German
Germany
*
en-AU
English
Australia
en-GB
English
United Kingdom
en-US
English
United States
es-ES
Spanish
Spain
*
es-MX
Spanish
Mexico
*
es-US
Spanish
United States
*
fr-CA
French
Canada
fr-FR
French
France
ja-JP
Japanese
Japan
pt-BR
Portuguese
Brazil
zh-CN
Mandarin
China
Note: Languages marked with an asterisk (*) are currently in Beta release and may not be ready for production use and are subject to change. They are initial offerings that are expected to improve in quality with time and usage.