curl --request POST \
--url https://api.eka.care/voice/api/v1/template \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "Cardiology OPD Note",
"desc": "Generate a cardiology outpatient note with these sections:\n## Chief Complaint\n## History of Present Illness\n## Examination (bullet points, include vitals table)\n## Assessment\n## Plan (numbered list with medications and follow-up date)\n",
"section_ids": []
}
'import requests
url = "https://api.eka.care/voice/api/v1/template"
payload = {
"title": "Cardiology OPD Note",
"desc": "Generate a cardiology outpatient note with these sections:
## Chief Complaint
## History of Present Illness
## Examination (bullet points, include vitals table)
## Assessment
## Plan (numbered list with medications and follow-up date)
",
"section_ids": []
}
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({
title: 'Cardiology OPD Note',
desc: 'Generate a cardiology outpatient note with these sections:\n## Chief Complaint\n## History of Present Illness\n## Examination (bullet points, include vitals table)\n## Assessment\n## Plan (numbered list with medications and follow-up date)\n',
section_ids: []
})
};
fetch('https://api.eka.care/voice/api/v1/template', 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/v1/template",
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([
'title' => 'Cardiology OPD Note',
'desc' => 'Generate a cardiology outpatient note with these sections:
## Chief Complaint
## History of Present Illness
## Examination (bullet points, include vitals table)
## Assessment
## Plan (numbered list with medications and follow-up date)
',
'section_ids' => [
]
]),
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/v1/template"
payload := strings.NewReader("{\n \"title\": \"Cardiology OPD Note\",\n \"desc\": \"Generate a cardiology outpatient note with these sections:\\n## Chief Complaint\\n## History of Present Illness\\n## Examination (bullet points, include vitals table)\\n## Assessment\\n## Plan (numbered list with medications and follow-up date)\\n\",\n \"section_ids\": []\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/v1/template")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"title\": \"Cardiology OPD Note\",\n \"desc\": \"Generate a cardiology outpatient note with these sections:\\n## Chief Complaint\\n## History of Present Illness\\n## Examination (bullet points, include vitals table)\\n## Assessment\\n## Plan (numbered list with medications and follow-up date)\\n\",\n \"section_ids\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eka.care/voice/api/v1/template")
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 \"title\": \"Cardiology OPD Note\",\n \"desc\": \"Generate a cardiology outpatient note with these sections:\\n## Chief Complaint\\n## History of Present Illness\\n## Examination (bullet points, include vitals table)\\n## Assessment\\n## Plan (numbered list with medications and follow-up date)\\n\",\n \"section_ids\": []\n}"
response = http.request(request)
puts response.read_body{
"msg": "created successfully",
"template_id": "tpl_7d1a2b3c4d5e"
}{
"error": {
"code": "invalid_audio_format",
"message": "Audio format 'audio/mp3' is not supported",
"details": {}
}
}{
"error": {
"code": "invalid_audio_format",
"message": "Audio format 'audio/mp3' is not supported",
"details": {}
}
}Create Template
Create a custom note template. Describe the exact structure, sections and style you want in desc using plain text or markdown — for example “SOAP note with Subjective, Objective, Assessment, Plan; use bullet points; include a medication table”. EkaScribe uses this description as the authoring instruction when generating notes. Pass the returned template_id in Create Session (templates) or Process Template.
curl --request POST \
--url https://api.eka.care/voice/api/v1/template \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"title": "Cardiology OPD Note",
"desc": "Generate a cardiology outpatient note with these sections:\n## Chief Complaint\n## History of Present Illness\n## Examination (bullet points, include vitals table)\n## Assessment\n## Plan (numbered list with medications and follow-up date)\n",
"section_ids": []
}
'import requests
url = "https://api.eka.care/voice/api/v1/template"
payload = {
"title": "Cardiology OPD Note",
"desc": "Generate a cardiology outpatient note with these sections:
## Chief Complaint
## History of Present Illness
## Examination (bullet points, include vitals table)
## Assessment
## Plan (numbered list with medications and follow-up date)
",
"section_ids": []
}
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({
title: 'Cardiology OPD Note',
desc: 'Generate a cardiology outpatient note with these sections:\n## Chief Complaint\n## History of Present Illness\n## Examination (bullet points, include vitals table)\n## Assessment\n## Plan (numbered list with medications and follow-up date)\n',
section_ids: []
})
};
fetch('https://api.eka.care/voice/api/v1/template', 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/v1/template",
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([
'title' => 'Cardiology OPD Note',
'desc' => 'Generate a cardiology outpatient note with these sections:
## Chief Complaint
## History of Present Illness
## Examination (bullet points, include vitals table)
## Assessment
## Plan (numbered list with medications and follow-up date)
',
'section_ids' => [
]
]),
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/v1/template"
payload := strings.NewReader("{\n \"title\": \"Cardiology OPD Note\",\n \"desc\": \"Generate a cardiology outpatient note with these sections:\\n## Chief Complaint\\n## History of Present Illness\\n## Examination (bullet points, include vitals table)\\n## Assessment\\n## Plan (numbered list with medications and follow-up date)\\n\",\n \"section_ids\": []\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/v1/template")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"title\": \"Cardiology OPD Note\",\n \"desc\": \"Generate a cardiology outpatient note with these sections:\\n## Chief Complaint\\n## History of Present Illness\\n## Examination (bullet points, include vitals table)\\n## Assessment\\n## Plan (numbered list with medications and follow-up date)\\n\",\n \"section_ids\": []\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.eka.care/voice/api/v1/template")
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 \"title\": \"Cardiology OPD Note\",\n \"desc\": \"Generate a cardiology outpatient note with these sections:\\n## Chief Complaint\\n## History of Present Illness\\n## Examination (bullet points, include vitals table)\\n## Assessment\\n## Plan (numbered list with medications and follow-up date)\\n\",\n \"section_ids\": []\n}"
response = http.request(request)
puts response.read_body{
"msg": "created successfully",
"template_id": "tpl_7d1a2b3c4d5e"
}{
"error": {
"code": "invalid_audio_format",
"message": "Audio format 'audio/mp3' is not supported",
"details": {}
}
}{
"error": {
"code": "invalid_audio_format",
"message": "Audio format 'audio/mp3' is not supported",
"details": {}
}
}title and a desc describing your format in plain text or markdown (sections, bullets, tables, tone). Always pass section_ids: [].
{
"title": "Cardiology OPD Note",
"desc": "## Chief Complaint\n## History\n## Examination (bullets, vitals table)\n## Plan (numbered, with follow-up date)",
"section_ids": []
}
template_id in Create Session or Process Template.Authorizations
Bearer authentication header of the form Bearer <token>, where <token> is your auth token.
Body
Display name of the template.
"Cardiology OPD Note"
Pass an empty array []. Describe your desired structure in desc instead.
[]
The template instructions in plain text or markdown. Describe the sections, ordering, formatting (bullets, tables, headings) and tone you want in the generated note. This is what EkaScribe follows when generating notes with this template.
Template type. Use custom (default) for your own templates.
"custom"
Was this page helpful?

