The Wavix Speech Analytics API is available exclusively for Flex Pro users.
- Transcribe an active phone call that was initiated or received through Wavix.
- Transcribe a phone call recorded outside Wavix by uploading an audio file. For instructions on uploading and transcribing external recordings, see Call transcription (file upload).
Prerequisites
Before you can access the Wavix Speech Analytics API, sign up for Wavix.Create a Wavix account
- Sign up for a Wavix account using your business email address.
- Confirm your email address and phone number during the sign-up process.
- Wait for your account to be approved by the Wavix team.
- After approval, choose either the Wavix Flex or Flex Pro account level.
Find your API key
Wavix uses API keys to authenticate requests. To find API keys associated with your account:- Sign in to your Wavix account.
- Go to Administration → API Keys.
- Copy the API key you want to use, or create a new one by clicking Create new.
How Wavix call transcription works
When you activate transcription on a SIP trunk or phone number, Wavix automatically converts recorded calls into plain text. Most calls are transcribed within 10 minutes, depending on call length and queue size. After transcription, Wavix detects the call language and labels speakers asagent
or client
based on call direction.
Request transcription for a specific call
To request a transcription for a specific call:-
Use the CDR API to find the call’s unique identifier (
uuid
). -
Request the transcription:
HTTP 200 OK
response with the full transcription. The transcription is divided into blocks by speaker, with start and end times in milliseconds from call answer.
Sample response:
Search for calls containing keywords or phrases
To search for calls with transcription containing specific keywords or phrases, use the following methodtype
- useplaced
for outbound calls orreceived
for inbound callsfrom
- filter results by the lower limit on the date the call was placed or receivedto
- filter results by the upper limit on the date the call was placed or receivedtranscription
- filter results by the call transcription parameters:status
- filter results by transcription statuslanguage
- filter results by the language of the callagent
- filter results based on keywords and phrases said by a speaker labeled asagent
must
- find calls with transcription that includes all specified keywords and phrases. The keywords and phrases are combined using logical AND.match
- find calls with transcription that includes any specified keyword and phrase. The keywords and phrases are combined using logical OR.exclude
- find calls with transcription that do not include any specified keyword and phrase. The keywords and phrases are combined using logical OR.
client
- filter results based on keywords and phrases said by a speaker labeled asclient
must
- find calls with transcription that includes all specified keywords and phrases. The keywords and phrases are combined using logical AND.match
- find calls with transcription that includes any specified keyword and phrase. The keywords and phrases are combined using logical OR.exclude
- find calls with transcription that do not include any specified keyword and phrase. The keywords and phrases are combined using logical OR.
any
- filter results based on keywords and phrases said by any speakermust
- find calls with transcription that includes all specified keywords and phrases. The keywords and phrases are combined using logical AND.match
- find calls with transcription that includes any specified keyword and phrase. The keywords and phrases are combined using logical OR.exclude
- find calls with transcription that do not include any specified keyword and phrase. The keywords and phrases are combined using logical OR.
type
, from
, and to
are mandatory parameters and cannot be blank. All other parameters are optional.
If successful, the method returns the HTTP 200 OK
status code. The response will contain a list of call detail records that match the search criteria. Every call detail record contains the unique identifier of the call and a link to the full call transcription.
Sample response:
Transcribe a single call
To transcribe a specific call:- Use the CDR API to find the call’s unique identifier (
uuid
). - Send a PUT request:
- Include the following JSON in the request body:
language
: (Optional) Force the language for transcription. Wavix uses this instead of auto-detection.webhook_url
: (Optional) Webhook URL for transcription status updates.
HTTP 200 OK
response. When transcription is complete, you receive a POST callback to your webhook:
uuid
: Unique identifier of the recorded callstatus
:completed
(success) orfailed
(error)