curl https://api.kallglot.com/v1/sessions/sess_01HXYZ123456789 \
-H "Authorization: Bearer sk_live_your_api_key"
import os
import requests
API_KEY = os.environ.get('KALLGLOT_API_KEY')
SESSION_ID = 'sess_01HXYZ123456789'
response = requests.get(
f'https://api.kallglot.com/v1/sessions/{SESSION_ID}',
headers={'Authorization': f'Bearer {API_KEY}'}
)
if response.status_code == 200:
session = response.json()
print(f"Status: {session['status']}")
print(f"Mode: {session['mode']}")
if session.get('stream'):
print(f"WebSocket: {session['stream']['url']}")
elif response.status_code == 404:
print('Session not found')
else:
error = response.json()
print(f"Error: {error['error']['message']}")
const API_KEY = process.env.KALLGLOT_API_KEY;
const SESSION_ID = 'sess_01HXYZ123456789';
const response = await fetch(`https://api.kallglot.com/v1/sessions/${SESSION_ID}`, {
headers: { 'Authorization': `Bearer ${API_KEY}` }
});
const data = await response.json();
if (response.ok) {
console.log('Status:', data.status);
console.log('Mode:', data.mode);
if (data.stream) {
console.log('WebSocket:', data.stream.url);
}
} else {
console.error('Error:', data.error.message);
}
{
"id": "sess_01HXYZ123456789",
"object": "session",
"status": "active",
"mode": "bidirectional_translation",
"provider": "twilio",
"phone_number": "+14155551234",
"source_language": "de",
"target_language": "en",
"stream": {
"url": "wss://api.kallglot.com/v1/sessions/sess_01HXYZ123456789/connect",
"token": "kst_live_xxxxxxxx",
"expires_at": "2026-03-26T12:00:00Z"
},
"recording": { "enabled": true },
"metadata": { "customer_id": "123" },
"created_at": "2026-03-26T11:00:00Z",
"started_at": "2026-03-26T11:00:15Z",
"ended_at": null
}
{
"id": "sess_01HXYZ123456789",
"object": "session",
"status": "ended",
"mode": "bidirectional_translation",
"provider": "twilio",
"source_language": "de",
"target_language": "en",
"recording": { "enabled": true },
"metadata": { "customer_id": "123" },
"created_at": "2026-03-26T11:00:00Z",
"started_at": "2026-03-26T11:00:15Z",
"ended_at": "2026-03-26T11:04:20Z"
}
{
"error": {
"code": "session_not_found",
"message": "Session not found",
"type": "not_found_error"
}
}
Sessions
Retrieve Session
Get session details and status
GET
/
v1
/
sessions
/
{id}
curl https://api.kallglot.com/v1/sessions/sess_01HXYZ123456789 \
-H "Authorization: Bearer sk_live_your_api_key"
import os
import requests
API_KEY = os.environ.get('KALLGLOT_API_KEY')
SESSION_ID = 'sess_01HXYZ123456789'
response = requests.get(
f'https://api.kallglot.com/v1/sessions/{SESSION_ID}',
headers={'Authorization': f'Bearer {API_KEY}'}
)
if response.status_code == 200:
session = response.json()
print(f"Status: {session['status']}")
print(f"Mode: {session['mode']}")
if session.get('stream'):
print(f"WebSocket: {session['stream']['url']}")
elif response.status_code == 404:
print('Session not found')
else:
error = response.json()
print(f"Error: {error['error']['message']}")
const API_KEY = process.env.KALLGLOT_API_KEY;
const SESSION_ID = 'sess_01HXYZ123456789';
const response = await fetch(`https://api.kallglot.com/v1/sessions/${SESSION_ID}`, {
headers: { 'Authorization': `Bearer ${API_KEY}` }
});
const data = await response.json();
if (response.ok) {
console.log('Status:', data.status);
console.log('Mode:', data.mode);
if (data.stream) {
console.log('WebSocket:', data.stream.url);
}
} else {
console.error('Error:', data.error.message);
}
{
"id": "sess_01HXYZ123456789",
"object": "session",
"status": "active",
"mode": "bidirectional_translation",
"provider": "twilio",
"phone_number": "+14155551234",
"source_language": "de",
"target_language": "en",
"stream": {
"url": "wss://api.kallglot.com/v1/sessions/sess_01HXYZ123456789/connect",
"token": "kst_live_xxxxxxxx",
"expires_at": "2026-03-26T12:00:00Z"
},
"recording": { "enabled": true },
"metadata": { "customer_id": "123" },
"created_at": "2026-03-26T11:00:00Z",
"started_at": "2026-03-26T11:00:15Z",
"ended_at": null
}
{
"id": "sess_01HXYZ123456789",
"object": "session",
"status": "ended",
"mode": "bidirectional_translation",
"provider": "twilio",
"source_language": "de",
"target_language": "en",
"recording": { "enabled": true },
"metadata": { "customer_id": "123" },
"created_at": "2026-03-26T11:00:00Z",
"started_at": "2026-03-26T11:00:15Z",
"ended_at": "2026-03-26T11:04:20Z"
}
{
"error": {
"code": "session_not_found",
"message": "Session not found",
"type": "not_found_error"
}
}
Retrieve the current state of a session including status, languages, and connection details.
Path Parameters
Session ID (e.g.,
sess_01HXYZ123456789).Response
Session identifier.
Always
session.created, active, or ended.Session mode.
Source language code.
Target language code.
Response only — which carrier is attached (
twilio, telnyx, or sip). Set telephony on create with routing, not this field.Phone number used (if applicable).
Custom metadata.
Creation timestamp (ISO 8601).
When session became active. Null if not started.
When session ended. Null if still active.
curl https://api.kallglot.com/v1/sessions/sess_01HXYZ123456789 \
-H "Authorization: Bearer sk_live_your_api_key"
import os
import requests
API_KEY = os.environ.get('KALLGLOT_API_KEY')
SESSION_ID = 'sess_01HXYZ123456789'
response = requests.get(
f'https://api.kallglot.com/v1/sessions/{SESSION_ID}',
headers={'Authorization': f'Bearer {API_KEY}'}
)
if response.status_code == 200:
session = response.json()
print(f"Status: {session['status']}")
print(f"Mode: {session['mode']}")
if session.get('stream'):
print(f"WebSocket: {session['stream']['url']}")
elif response.status_code == 404:
print('Session not found')
else:
error = response.json()
print(f"Error: {error['error']['message']}")
const API_KEY = process.env.KALLGLOT_API_KEY;
const SESSION_ID = 'sess_01HXYZ123456789';
const response = await fetch(`https://api.kallglot.com/v1/sessions/${SESSION_ID}`, {
headers: { 'Authorization': `Bearer ${API_KEY}` }
});
const data = await response.json();
if (response.ok) {
console.log('Status:', data.status);
console.log('Mode:', data.mode);
if (data.stream) {
console.log('WebSocket:', data.stream.url);
}
} else {
console.error('Error:', data.error.message);
}
{
"id": "sess_01HXYZ123456789",
"object": "session",
"status": "active",
"mode": "bidirectional_translation",
"provider": "twilio",
"phone_number": "+14155551234",
"source_language": "de",
"target_language": "en",
"stream": {
"url": "wss://api.kallglot.com/v1/sessions/sess_01HXYZ123456789/connect",
"token": "kst_live_xxxxxxxx",
"expires_at": "2026-03-26T12:00:00Z"
},
"recording": { "enabled": true },
"metadata": { "customer_id": "123" },
"created_at": "2026-03-26T11:00:00Z",
"started_at": "2026-03-26T11:00:15Z",
"ended_at": null
}
{
"id": "sess_01HXYZ123456789",
"object": "session",
"status": "ended",
"mode": "bidirectional_translation",
"provider": "twilio",
"source_language": "de",
"target_language": "en",
"recording": { "enabled": true },
"metadata": { "customer_id": "123" },
"created_at": "2026-03-26T11:00:00Z",
"started_at": "2026-03-26T11:00:15Z",
"ended_at": "2026-03-26T11:04:20Z"
}
{
"error": {
"code": "session_not_found",
"message": "Session not found",
"type": "not_found_error"
}
}
⌘I