Media File
The Media File object is supported by the MiRTA PBX OpenAPI endpoint. This object is normally tenant-scoped. With a global API key, use global=1 to manage the shared/global record set. Tenant writes still require tenant=CANISTRACCI.
Object Summary
| Property | Value |
|---|---|
| Object | mediafile |
| Primary path | /mediafiles |
| ID field | me_id |
| Label field | me_name |
| Primary source table | me_mediafiles |
| Required on create | me_name |
| Path aliases | /mediafiles, /media_files, /media_file |
Endpoint Patterns
| Action | Example pattern |
|---|---|
| List | GET https://pbx.example.com/pbx/openapi.php/mediafiles?tenant=CANISTRACCI |
| Get by ID | GET https://pbx.example.com/pbx/openapi.php/mediafiles/OBJECT_ID?tenant=CANISTRACCI |
| Create | POST https://pbx.example.com/pbx/openapi.php/mediafiles?tenant=CANISTRACCI |
| Update | PATCH https://pbx.example.com/pbx/openapi.php/mediafiles/OBJECT_ID?tenant=CANISTRACCI |
| Delete | DELETE https://pbx.example.com/pbx/openapi.php/mediafiles/OBJECT_ID?tenant=CANISTRACCI |
Accepted Field Aliases
| Request field | Source field |
|---|---|
name | me_name |
description | me_description |
format | me_format |
type | me_type |
text | me_text |
engine | me_engine |
language | me_language |
data_base64 | me_data |
Examples
List Media Files
Returns the media files visible to the key and scope.
curl -H "X-API-Key: TENANT_API_KEY" \
"https://pbx.example.com/pbx/openapi.php/mediafiles?tenant=CANISTRACCI"
Get Media File
Reads one object by its internal ID.
curl -H "X-API-Key: TENANT_API_KEY" \
"https://pbx.example.com/pbx/openapi.php/mediafiles/OBJECT_ID?tenant=CANISTRACCI"
Create Media File
Creates a new object. Use the short aliases shown above or the source field names.
curl -X POST \
-H "X-API-Key: TENANT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Docs API Welcome Prompt",
"description": "Generated prompt for documentation",
"type": "tts",
"text": "Welcome to Kartoon Cars. Press 1 for sales or 2 for support.",
"engine": "azure",
"language": "en-US"
}' \
"https://pbx.example.com/pbx/openapi.php/mediafiles?tenant=CANISTRACCI"
Edit Media File
Updates only the supplied fields.
curl -X PATCH \
-H "X-API-Key: TENANT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"description": "Updated generated prompt"
}' \
"https://pbx.example.com/pbx/openapi.php/mediafiles/OBJECT_ID?tenant=CANISTRACCI"
Delete Media File
Deletes the object. Check references before deleting configuration used by routing or reporting.
curl -X DELETE \
-H "X-API-Key: TENANT_API_KEY" \
"https://pbx.example.com/pbx/openapi.php/mediafiles/OBJECT_ID?tenant=CANISTRACCI"
List Global Media Files
curl -H "X-API-Key: GLOBAL_API_KEY" \
"https://pbx.example.com/pbx/openapi.php/mediafiles?global=1"
Media File Binary Upload
Sends audio data as base64. Replace the shortened example with the complete encoded file.
curl -X POST \
-H "X-API-Key: TENANT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"name": "Docs API Uploaded Prompt",
"format": "wav",
"data_base64": "UklGRiQAAABXQVZFZm10IBAAAAABAAEA..."
}' \
"https://pbx.example.com/pbx/openapi.php/mediafiles/OBJECT_ID?tenant=CANISTRACCI"
Common Errors
| Error | Meaning |
|---|---|
missing_api_key | No API key was supplied in the query string, X-API-Key, or bearer token. |
invalid_api_key | The supplied key does not match the tenant or global API key. |
tenant_required | A tenant code is required for tenant-scoped writes or tenant-key reads. |
read_only_api_key | The key can read data but cannot create, update, or delete objects. |
missing_required_field | A required create field is missing. |