curl https://api.bota.dev/v1/recordings/rec_abc123 \
-H "Authorization: Bearer sk_live_..."
const response = await fetch('https://api.bota.dev/v1/recordings/rec_abc123', {
headers: {
'Authorization': 'Bearer sk_live_...',
},
});
const recording = await response.json();
import requests
response = requests.get(
'https://api.bota.dev/v1/recordings/rec_abc123',
headers={'Authorization': 'Bearer sk_live_...'},
)
recording = response.json()
{
"id": "rec_abc123",
"device_id": "dev_abc123",
"end_user_id": "eu_xyz789",
"name": "Product interview - Jane Doe",
"status": "completed",
"duration_ms": 1800000,
"started_at": "2025-01-15T09:00:00Z",
"ended_at": "2025-01-15T09:30:00Z",
"transcription_id": "txn_abc123",
"media": [
{
"id": "med_001",
"type": "audio",
"mime_type": "audio/opus",
"file_size_bytes": 2048576,
"status": "uploaded",
"captured_at": "2025-01-15T09:00:00Z",
"created_at": "2025-01-15T10:00:00Z"
},
{
"id": "med_002",
"type": "image",
"mime_type": "image/jpeg",
"file_size_bytes": 245000,
"status": "uploaded",
"captured_at": "2025-01-15T09:05:30Z",
"created_at": "2025-01-15T10:01:00Z"
},
{
"id": "med_003",
"type": "image",
"mime_type": "image/jpeg",
"file_size_bytes": 312000,
"status": "uploaded",
"captured_at": "2025-01-15T09:15:00Z",
"created_at": "2025-01-15T10:01:00Z"
}
],
"metadata": {
"meeting_type": "interview",
"location": "office"
},
"created_at": "2025-01-15T10:00:00Z"
}
{
"error": {
"code": "not_found",
"message": "Recording not found"
}
}
Recordings
Get Recording
Retrieve details of a specific recording
GET
/
recordings
/
{id}
curl https://api.bota.dev/v1/recordings/rec_abc123 \
-H "Authorization: Bearer sk_live_..."
const response = await fetch('https://api.bota.dev/v1/recordings/rec_abc123', {
headers: {
'Authorization': 'Bearer sk_live_...',
},
});
const recording = await response.json();
import requests
response = requests.get(
'https://api.bota.dev/v1/recordings/rec_abc123',
headers={'Authorization': 'Bearer sk_live_...'},
)
recording = response.json()
{
"id": "rec_abc123",
"device_id": "dev_abc123",
"end_user_id": "eu_xyz789",
"name": "Product interview - Jane Doe",
"status": "completed",
"duration_ms": 1800000,
"started_at": "2025-01-15T09:00:00Z",
"ended_at": "2025-01-15T09:30:00Z",
"transcription_id": "txn_abc123",
"media": [
{
"id": "med_001",
"type": "audio",
"mime_type": "audio/opus",
"file_size_bytes": 2048576,
"status": "uploaded",
"captured_at": "2025-01-15T09:00:00Z",
"created_at": "2025-01-15T10:00:00Z"
},
{
"id": "med_002",
"type": "image",
"mime_type": "image/jpeg",
"file_size_bytes": 245000,
"status": "uploaded",
"captured_at": "2025-01-15T09:05:30Z",
"created_at": "2025-01-15T10:01:00Z"
},
{
"id": "med_003",
"type": "image",
"mime_type": "image/jpeg",
"file_size_bytes": 312000,
"status": "uploaded",
"captured_at": "2025-01-15T09:15:00Z",
"created_at": "2025-01-15T10:01:00Z"
}
],
"metadata": {
"meeting_type": "interview",
"location": "office"
},
"created_at": "2025-01-15T10:00:00Z"
}
{
"error": {
"code": "not_found",
"message": "Recording not found"
}
}
Retrieve the details of an existing recording by its unique identifier.
Authentication
Requires an API key withrecordings:read scope.
curl https://api.bota.dev/v1/recordings/rec_abc123 \
-H "Authorization: Bearer sk_live_..."
const response = await fetch('https://api.bota.dev/v1/recordings/rec_abc123', {
headers: {
'Authorization': 'Bearer sk_live_...',
},
});
const recording = await response.json();
import requests
response = requests.get(
'https://api.bota.dev/v1/recordings/rec_abc123',
headers={'Authorization': 'Bearer sk_live_...'},
)
recording = response.json()
Path Parameters
The recording’s unique identifier (e.g.,
rec_abc123).Response
Returns the recording object.{
"id": "rec_abc123",
"device_id": "dev_abc123",
"end_user_id": "eu_xyz789",
"name": "Product interview - Jane Doe",
"status": "completed",
"duration_ms": 1800000,
"started_at": "2025-01-15T09:00:00Z",
"ended_at": "2025-01-15T09:30:00Z",
"transcription_id": "txn_abc123",
"media": [
{
"id": "med_001",
"type": "audio",
"mime_type": "audio/opus",
"file_size_bytes": 2048576,
"status": "uploaded",
"captured_at": "2025-01-15T09:00:00Z",
"created_at": "2025-01-15T10:00:00Z"
},
{
"id": "med_002",
"type": "image",
"mime_type": "image/jpeg",
"file_size_bytes": 245000,
"status": "uploaded",
"captured_at": "2025-01-15T09:05:30Z",
"created_at": "2025-01-15T10:01:00Z"
},
{
"id": "med_003",
"type": "image",
"mime_type": "image/jpeg",
"file_size_bytes": 312000,
"status": "uploaded",
"captured_at": "2025-01-15T09:15:00Z",
"created_at": "2025-01-15T10:01:00Z"
}
],
"metadata": {
"meeting_type": "interview",
"location": "office"
},
"created_at": "2025-01-15T10:00:00Z"
}
{
"error": {
"code": "not_found",
"message": "Recording not found"
}
}
Response Fields
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the recording (rec_*). |
device_id | string | ID of the device that captured the recording. |
end_user_id | string | ID of the associated end user. |
name | string | Human-readable name for the recording. |
status | string | Current recording status: pending, uploaded, processing, completed, or failed. |
duration_ms | integer | null | Recording duration in milliseconds. |
started_at | string | ISO 8601 timestamp of when the recording started. |
ended_at | string | ISO 8601 timestamp of when the recording ended. |
transcription_id | string | null | ID of the associated transcription. |
media | array | Files associated with this recording (audio, images, video). |
media[].id | string | Media identifier (med_*). |
media[].type | string | Media type: audio, image, or video. |
media[].mime_type | string | MIME type (e.g., audio/opus, image/jpeg, video/mp4). |
media[].file_size_bytes | integer | File size in bytes. |
media[].status | string | Upload status: pending, uploaded. |
media[].captured_at | string | null | ISO 8601 timestamp of when the media was captured. |
media[].created_at | string | ISO 8601 timestamp of when the media record was created. |
metadata | object | Arbitrary key-value metadata. |
created_at | string | ISO 8601 timestamp of when the recording was created. |
Was this page helpful?
⌘I

