API Reference
Audio
Browse audio files and control playback on the device. The phone acts as the media player.
Type Definitions
bash
type Audio {
id: ID!
title: String!
artist: String!
path: String!
duration: Int! # milliseconds
size: Int! # bytes
bucketId: String!
albumFileId: String! # use GET /fs?id=<albumFileId> for album art
createdAt: String!
updatedAt: String!
tags: [Tag!]!
}
type PlaylistAudio {
title: String!
artist: String!
path: String!
duration: Int! # milliseconds
}
enum MediaPlayMode {
REPEAT_ALL
REPEAT_ONE
SHUFFLE
}Operations
query
audios
Search audio files. Leave query empty to list all.
bash
query GetAudios($offset: Int!, $limit: Int!, $query: String!, $sortBy: FileSortBy!) {
audios(offset: $offset, limit: $limit, query: $query, sortBy: $sortBy) {
id title artist path duration size bucketId albumFileId createdAt
tags { id name }
}
}query
audioCount
Count audio files matching a query.
bash
query GetAudioCount($query: String!) {
audioCount(query: $query)
}mutation
playAudio
Start playing an audio file on the device. Adds to playlist if not already present.
bash
mutation PlayAudio($path: String!) {
playAudio(path: $path) { title artist path duration }
}mutation
updateAudioPlayMode
Set the playback mode.
bash
mutation UpdateAudioPlayMode($mode: MediaPlayMode!) {
updateAudioPlayMode(mode: $mode)
}mutation
clearAudioPlaylist
Clear the current playlist and stop playback.
bash
mutation ClearAudioPlaylist {
clearAudioPlaylist
}mutation
deletePlaylistAudio
Remove one track from the playlist by file path.
bash
mutation DeletePlaylistAudio($path: String!) {
deletePlaylistAudio(path: $path)
}mutation
addPlaylistAudios
Add up to 1,000 matching audio files to the current playlist.
bash
mutation AddPlaylistAudios($query: String!) {
addPlaylistAudios(query: $query)
}mutation
reorderPlaylistAudios
Reorder the playlist by providing an ordered list of file paths.
bash
mutation ReorderPlaylistAudios($paths: [String!]!) {
reorderPlaylistAudios(paths: $paths)
}