curl --request POST \
--url https://api.eka.care/voice/api/v2/transaction/init/{txn_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"additional_data": {
"doctor": {
"_id": "174097180967921",
"profile": {
"personal": {
"name": {
"f": "Divyesh",
"l": ""
}
}
}
},
"patient": {},
"visitid": "09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782"
},
"mode": "dictation",
"input_language": [
"en-IN"
],
"output_language": "en-IN",
"speciality": "general_medicine",
"output_format_template": [
{
"template_id": "eka_emr_template",
"codification_needed": false
}
],
"transfer": "non-vaded",
"batch_s3_url": "s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/"
}
'import requests
url = "https://api.eka.care/voice/api/v2/transaction/init/{txn_id}"
payload = {
"additional_data": {
"doctor": {
"_id": "174097180967921",
"profile": { "personal": { "name": {
"f": "Divyesh",
"l": ""
} } }
},
"patient": {},
"visitid": "09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782"
},
"mode": "dictation",
"input_language": ["en-IN"],
"output_language": "en-IN",
"speciality": "general_medicine",
"output_format_template": [
{
"template_id": "eka_emr_template",
"codification_needed": False
}
],
"transfer": "non-vaded",
"batch_s3_url": "s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
additional_data: {
doctor: {_id: '174097180967921', profile: {personal: {name: {f: 'Divyesh', l: ''}}}},
patient: {},
visitid: '09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782'
},
mode: 'dictation',
input_language: ['en-IN'],
output_language: 'en-IN',
speciality: 'general_medicine',
output_format_template: [{template_id: 'eka_emr_template', codification_needed: false}],
transfer: 'non-vaded',
batch_s3_url: 's3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/'
})
};
fetch('https://api.eka.care/voice/api/v2/transaction/init/{txn_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.eka.care/voice/api/v2/transaction/init/{txn_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'additional_data' => [
'doctor' => [
'_id' => '174097180967921',
'profile' => [
'personal' => [
'name' => [
'f' => 'Divyesh',
'l' => ''
]
]
]
],
'patient' => [
],
'visitid' => '09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782'
],
'mode' => 'dictation',
'input_language' => [
'en-IN'
],
'output_language' => 'en-IN',
'speciality' => 'general_medicine',
'output_format_template' => [
[
'template_id' => 'eka_emr_template',
'codification_needed' => false
]
],
'transfer' => 'non-vaded',
'batch_s3_url' => 's3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.eka.care/voice/api/v2/transaction/init/{txn_id}"
payload := strings.NewReader("{\n \"additional_data\": {\n \"doctor\": {\n \"_id\": \"174097180967921\",\n \"profile\": {\n \"personal\": {\n \"name\": {\n \"f\": \"Divyesh\",\n \"l\": \"\"\n }\n }\n }\n },\n \"patient\": {},\n \"visitid\": \"09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782\"\n },\n \"mode\": \"dictation\",\n \"input_language\": [\n \"en-IN\"\n ],\n \"output_language\": \"en-IN\",\n \"speciality\": \"general_medicine\",\n \"output_format_template\": [\n {\n \"template_id\": \"eka_emr_template\",\n \"codification_needed\": false\n }\n ],\n \"transfer\": \"non-vaded\",\n \"batch_s3_url\": \"s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.eka.care/voice/api/v2/transaction/init/{txn_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"additional_data\": {\n \"doctor\": {\n \"_id\": \"174097180967921\",\n \"profile\": {\n \"personal\": {\n \"name\": {\n \"f\": \"Divyesh\",\n \"l\": \"\"\n }\n }\n }\n },\n \"patient\": {},\n \"visitid\": \"09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782\"\n },\n \"mode\": \"dictation\",\n \"input_language\": [\n \"en-IN\"\n ],\n \"output_language\": \"en-IN\",\n \"speciality\": \"general_medicine\",\n \"output_format_template\": [\n {\n \"template_id\": \"eka_emr_template\",\n \"codification_needed\": false\n }\n ],\n \"transfer\": \"non-vaded\",\n \"batch_s3_url\": \"s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eka.care/voice/api/v2/transaction/init/{txn_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"additional_data\": {\n \"doctor\": {\n \"_id\": \"174097180967921\",\n \"profile\": {\n \"personal\": {\n \"name\": {\n \"f\": \"Divyesh\",\n \"l\": \"\"\n }\n }\n }\n },\n \"patient\": {},\n \"visitid\": \"09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782\"\n },\n \"mode\": \"dictation\",\n \"input_language\": [\n \"en-IN\"\n ],\n \"output_language\": \"en-IN\",\n \"speciality\": \"general_medicine\",\n \"output_format_template\": [\n {\n \"template_id\": \"eka_emr_template\",\n \"codification_needed\": false\n }\n ],\n \"transfer\": \"non-vaded\",\n \"batch_s3_url\": \"s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/\"\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"message": "Transaction initialized successfully",
"txn_id": "test_1234",
"b_id": "b-1234567890"
}{
"error": "Unauthorized",
"message": "Invalid or missing authentication token"
}{
"status": "error",
"message": "Transaction already initialized"
}{
"details": [
{}
]
}{
"error": "<string>",
"code": "<string>"
}Start Transcription
Start the transcription process for the uploaded audio files. This endpoint is called after uploading any audio files in S3 bucket for transcription and processing.
curl --request POST \
--url https://api.eka.care/voice/api/v2/transaction/init/{txn_id} \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"additional_data": {
"doctor": {
"_id": "174097180967921",
"profile": {
"personal": {
"name": {
"f": "Divyesh",
"l": ""
}
}
}
},
"patient": {},
"visitid": "09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782"
},
"mode": "dictation",
"input_language": [
"en-IN"
],
"output_language": "en-IN",
"speciality": "general_medicine",
"output_format_template": [
{
"template_id": "eka_emr_template",
"codification_needed": false
}
],
"transfer": "non-vaded",
"batch_s3_url": "s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/"
}
'import requests
url = "https://api.eka.care/voice/api/v2/transaction/init/{txn_id}"
payload = {
"additional_data": {
"doctor": {
"_id": "174097180967921",
"profile": { "personal": { "name": {
"f": "Divyesh",
"l": ""
} } }
},
"patient": {},
"visitid": "09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782"
},
"mode": "dictation",
"input_language": ["en-IN"],
"output_language": "en-IN",
"speciality": "general_medicine",
"output_format_template": [
{
"template_id": "eka_emr_template",
"codification_needed": False
}
],
"transfer": "non-vaded",
"batch_s3_url": "s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
additional_data: {
doctor: {_id: '174097180967921', profile: {personal: {name: {f: 'Divyesh', l: ''}}}},
patient: {},
visitid: '09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782'
},
mode: 'dictation',
input_language: ['en-IN'],
output_language: 'en-IN',
speciality: 'general_medicine',
output_format_template: [{template_id: 'eka_emr_template', codification_needed: false}],
transfer: 'non-vaded',
batch_s3_url: 's3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/'
})
};
fetch('https://api.eka.care/voice/api/v2/transaction/init/{txn_id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.eka.care/voice/api/v2/transaction/init/{txn_id}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'additional_data' => [
'doctor' => [
'_id' => '174097180967921',
'profile' => [
'personal' => [
'name' => [
'f' => 'Divyesh',
'l' => ''
]
]
]
],
'patient' => [
],
'visitid' => '09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782'
],
'mode' => 'dictation',
'input_language' => [
'en-IN'
],
'output_language' => 'en-IN',
'speciality' => 'general_medicine',
'output_format_template' => [
[
'template_id' => 'eka_emr_template',
'codification_needed' => false
]
],
'transfer' => 'non-vaded',
'batch_s3_url' => 's3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.eka.care/voice/api/v2/transaction/init/{txn_id}"
payload := strings.NewReader("{\n \"additional_data\": {\n \"doctor\": {\n \"_id\": \"174097180967921\",\n \"profile\": {\n \"personal\": {\n \"name\": {\n \"f\": \"Divyesh\",\n \"l\": \"\"\n }\n }\n }\n },\n \"patient\": {},\n \"visitid\": \"09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782\"\n },\n \"mode\": \"dictation\",\n \"input_language\": [\n \"en-IN\"\n ],\n \"output_language\": \"en-IN\",\n \"speciality\": \"general_medicine\",\n \"output_format_template\": [\n {\n \"template_id\": \"eka_emr_template\",\n \"codification_needed\": false\n }\n ],\n \"transfer\": \"non-vaded\",\n \"batch_s3_url\": \"s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.eka.care/voice/api/v2/transaction/init/{txn_id}")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"additional_data\": {\n \"doctor\": {\n \"_id\": \"174097180967921\",\n \"profile\": {\n \"personal\": {\n \"name\": {\n \"f\": \"Divyesh\",\n \"l\": \"\"\n }\n }\n }\n },\n \"patient\": {},\n \"visitid\": \"09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782\"\n },\n \"mode\": \"dictation\",\n \"input_language\": [\n \"en-IN\"\n ],\n \"output_language\": \"en-IN\",\n \"speciality\": \"general_medicine\",\n \"output_format_template\": [\n {\n \"template_id\": \"eka_emr_template\",\n \"codification_needed\": false\n }\n ],\n \"transfer\": \"non-vaded\",\n \"batch_s3_url\": \"s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eka.care/voice/api/v2/transaction/init/{txn_id}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"additional_data\": {\n \"doctor\": {\n \"_id\": \"174097180967921\",\n \"profile\": {\n \"personal\": {\n \"name\": {\n \"f\": \"Divyesh\",\n \"l\": \"\"\n }\n }\n }\n },\n \"patient\": {},\n \"visitid\": \"09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782\"\n },\n \"mode\": \"dictation\",\n \"input_language\": [\n \"en-IN\"\n ],\n \"output_language\": \"en-IN\",\n \"speciality\": \"general_medicine\",\n \"output_format_template\": [\n {\n \"template_id\": \"eka_emr_template\",\n \"codification_needed\": false\n }\n ],\n \"transfer\": \"non-vaded\",\n \"batch_s3_url\": \"s3://m-pp-voice2rx/250307/R-S3-195D5131-D014-56A8-ACCF-2F8F2D230DEC/\"\n}"
response = http.request(request)
puts response.read_body{
"status": "success",
"message": "Transaction initialized successfully",
"txn_id": "test_1234",
"b_id": "b-1234567890"
}{
"error": "Unauthorized",
"message": "Invalid or missing authentication token"
}{
"status": "error",
"message": "Transaction already initialized"
}{
"details": [
{}
]
}{
"error": "<string>",
"code": "<string>"
}Available Template IDs
Eka Care supports multiple output templates for different medical documentation needs. Choose the appropriate template ID based on your requirements:| Template ID | Description | Use Case |
|---|---|---|
clinical_notes_template | Comprehensive clinical notes with structured medical information | General clinical documentation, patient consultations |
eka_emr_template | EMR-compatible format for electronic medical records | Integration with EMR systems |
transcript_template | Basic transcription with minimal structuring | Simple audio-to-text conversion |
Available model types
| Model Type | Description |
|---|---|
| pro | Our most accurate model |
| lite | More performant model for lower latency |
Supported Input Languages
Eka Care supports transcription in multiple languages. Specify the appropriate language ID in theinput_language parameter:
| Language ID | Language Name |
|---|---|
en-IN | English (India) |
en-US | English (United States) |
hi | Hindi |
gu | Gujarati |
kn | Kannada |
ml | Malayalam |
ta | Tamil |
te | Telugu |
bn | Bengali |
mr | Marathi |
pa | Punjabi |
or | Oriya |
Supported Output Languages
Eka Care supports generating transcription output in multiple languages, but only one can be selected at a time. Specify the appropriate language ID in theoutput_language parameter.
| Language ID | Language Name |
|---|---|
en-IN | English (India) |
en-US | English (United States) |
hi | Hindi |
gu | Gujarati |
kn | Kannada |
ml | Malayalam |
ta | Tamil |
te | Telugu |
bn | Bengali |
mr | Marathi |
pa | Punjabi |
or | Oriya |
Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Path Parameters
Unique Transaction ID - same as passed in presigned URL request
"test_1234"
Body
Processing mode
dictation, consultation "dictation"
Transfer mode use vaded for pre-processed audio with Voice Activity Detection, non-vaded for raw audio files
non-vaded, vaded "non-vaded"
Complete S3 URL path where audio files are uploaded. This is constructed by combining:
- Base S3 URL from presigned response:
presigned_url["uploadData"]["url"] - Folder path from presigned response:
presigned_url["folderPath"]
Construction: presigned_url["uploadData"]["url"] + presigned_url["folderPath"]
"https://m-prod-ekascribe-batch.s3.amazonaws.com/EC_173210496011417/txn_301/20250617_105524/"
Array of audio file names that were uploaded to S3
["audio_first.m4a", "audio_second.m4a"]
Type of model to be used for transcription
pro, lite "pro"
Contextual information for the transaction
{
"doctor": {
"_id": "174097180967921",
"profile": {
"personal": { "name": { "f": "Divyesh", "l": "" } }
}
},
"patient": {},
"visitid": "09e4f00f-d665-4212-b77c-b2dd5f22bd92_1742560488782"
}
Array of supported input languages for voice transcription
en-IN, en-US, hi, gu, kn, ml, ta, te, bn, mr, pa, or ["en-IN"]
Output language for the transcription result
en-IN, en-US, hi, gu, kn, ml, ta, te, bn, mr, pa, or "en-IN"
Medical speciality context for better transcription accuracy
"general_medicine"
Array of template configurations for output format
Show child attributes
Show child attributes
[
{
"template_id": "eka_emr_template",
"codification_needed": false
}
]
Was this page helpful?

