Restful interface - devsnd/cherrymusic GitHub Wiki
/api/v1
THIS INTERFACE IS NOT YET AVAILABLE!
url definitions:
/media
params:
starts_with=STRING
calls:
GET /media → collection
/playlists
params:
format="native"|"pls"|"m3u"
default "native"
calls:
/playlists/USERNAME
/playlists/USERNAME/PLAYLISTNAME
/users
calls:
GET /users/NAME
/sessions
calls:
login:
POST /sessions → LAST_GUI_STATE
logout:
DELETE /sessions
save status:
PUT /sessions/save
/config
calls:
config incl. useroptions:
GET /config/USERNAME
/search
params:
q=STRING
fields="playlist"|"collection"|"track"
calls:
GET /search
/heartbeat
/art
calls:
GET /art/
params:*
TODO!
object definitions:
request:
{
data: dataobj
}
response:
{
status: "success" | "error",
notifications: [ notification* ],
data: dataobj,
}
notification:
{
status: "success"|"error"|"warning" ,
message: STRING,
}
dataobj:
proxy | track | collection | playlist
proxy:
{
id: RESTURL,
type: "proxy" | "collection" | "track" | "playlist",
title: STRING,
label: STRING,
img: URL
}
collection:
proxy + {
list: [proxy*]
}
track:
proxy + {
audio: RELATIVE_URL,
format: "mp3"|"flac"|"ogg"|...
}
playlist:
proxy + {
owner: USER_URI,
tracks: [track*],
}
config:
{
audio_serve_url: URL,
audio_transcoder_url: URL,
user_options: { USER_OPTIONS ... }
}