Overview
Audio endpoints allow you to upload audio files, send them to specific locations, and manage your audio library. All audio must be uploaded before it can be played on Raspberry Pi devices.Supported formats: MP3, WAV, OGG, AAC
Max file size: 10MB per file
Recommended: MP3 at 128kbps or higher for best quality
Max file size: 10MB per file
Recommended: MP3 at 128kbps or higher for best quality
Create Audio
Upload a new audio file to your Musique library.Endpoint
Headers
Your API authentication token
Must be
multipart/form-dataRequest Body
Audio file to upload (MP3, WAV, OGG, AAC)
Display name for the audio file
Optional description or notes about the audio
Category for organization (e.g., “announcement”, “promotion”, “emergency”)
Request Example
Response
Unique identifier for the uploaded audio
Display name of the audio file
CDN URL for the audio file
Audio duration in seconds
File size in bytes
Audio format (mp3, wav, ogg, aac)
ISO 8601 timestamp of upload
Send Audio
Send an audio file to one or more Raspberry Pi devices. Supports both single location sends and broadcasts to multiple locations.Endpoint
Headers
Your API authentication token
Path Parameters
ID of the audio file to send
Request Body
Array of external IDs for target locations. Single ID for specific location, multiple IDs for broadcast.
ISO 8601 timestamp for scheduled playback. Omit for immediate playback.
Playback priority:
low, normal, high, urgent. High/urgent interrupt current playback.Number of times to play the audio (1-10)
Playback volume percentage (0-100)
Request Examples
Response
Unique identifier for this send operation
ID of the audio file sent
Array of destination objects with external IDs and user IDs
Whether the audio is scheduled for future playback
Scheduled playback time or null for immediate
Send status:
queued, scheduled, sent, failedSingle vs Broadcast:
- Single: One external ID in array → sends to specific location
- Broadcast: Multiple external IDs → sends to all locations simultaneously
List Audio
Retrieve all audio files in your library with pagination and filtering options.Endpoint
Headers
Your API authentication token
Query Parameters
Page number for pagination
Number of results per page (max 100)
Filter by category
Search by name or description
Sort field:
createdAt, name, durationSort order:
asc or descRequest Example
Response
Array of audio objects
Pagination metadata (page, limit, total, totalPages)
Get Audio
Retrieve details for a specific audio file including usage statistics.Endpoint
Headers
Your API authentication token
Path Parameters
ID of the audio file
Request Example
Response
Unique identifier for the audio
Display name of the audio file
CDN URL for the audio file
Usage statistics (timesPlayed, lastPlayedAt, totalRecipients)
Delete Audio
Permanently delete an audio file from your library.Endpoint
Headers
Your API authentication token
Path Parameters
ID of the audio file to delete
Request Example
Response
Confirmation that the audio was deleted
ID of the deleted audio file
Common Workflows
Send Immediate Announcement
Send Immediate Announcement
Scenario: Send an urgent announcement to a specific store right now.Steps:
- Upload audio:
POST /api/audiowith your announcement file - Send immediately:
POST /api/{audioId}/sendwithpriority: "urgent"andexternalIds: ["store_001"] - Monitor: Check
/api/integration/logsto confirm delivery
Schedule Daily Promotion
Schedule Daily Promotion
Scenario: Play a promotional message at all stores tomorrow at 3 PM.Steps:
- Upload audio:
POST /api/audiowith promotional file - Schedule broadcast:
POST /api/{audioId}/sendwithscheduleAt: "2024-01-16T15:00:00Z"andexternalIds: ["store_001", "store_002", "store_003"] - Verify:
GET /api/audio/{audioId}to check schedule status
Manage Audio Library
Manage Audio Library
Scenario: Clean up old promotional audio files.Steps:
- List all audio:
GET /api/audio?category=promotion - Get details:
GET /api/audio/{audioId}to check usage stats - Delete unused:
DELETE /api/{audioId}for files not played recently
Test Audio Before Broadcast
Test Audio Before Broadcast
Scenario: Test audio at one location before broadcasting to all.Steps:
- Upload:
POST /api/audiowith test file - Send to test location:
POST /api/{audioId}/sendwithexternalIds: ["test_store"] - If successful, broadcast:
POST /api/{audioId}/sendwith all store IDs

