API Überblick
Standard‑Basis‑URL: http://<host>:<port> (typisch http://localhost:2333).
Alle Endpoints liegen unter /v0. Authentifizierung: Authorization: <passwort> Header senden, falls konfiguriert.
Ressourcen
| Ressource | Funktionen |
|---|---|
| Players | Erstellen, listen, Playback steuern, löschen |
| Queue | Einreihen, abrufen, Loop‑Modi, Skip |
| Filter | Lautstärke & EQ aktualisieren |
| Metadata | JSON zusammenführen oder ersetzen |
| Resolver | Seiten‑URL in direkte URL konvertieren (wenn aktiv) |
| Track Encoding Helpers | base64 Track‑Identifier encodieren/decodieren (Kompatibilität) |
| WebSocket Streams | Audioframes & Events |
Konventionen
- JSON Bodies für POST/PATCH
- 204 No Content bei erfolgreichen Statusänderungen ohne Body
- 201 Created bei Ressourcenerstellung (Player, Track in Queue)
- 4xx Codes für Clientfehler (403 blockierte Quelle, 404 unbekannter Player, 409 doppelte ID)
- 5xx für unerwartete interne Fehler
Player Lebenszyklus
POST /v0/playersmit{ id, uri, metadata? }- Verbinden
GET /v0/players/{id}/wsfür Audio - (Optional) Verbinden
GET /v0/players/{id}/eventsfür JSON Eventstream - Weitere Tracks einreihen:
POST /v0/players/{id}/queue - Playback steuern (play/pause/skip/loop/filter)
- Player löschen:
DELETE /v0/players/{id}
Status Snapshot
GET /v0/players liefert ein Array von Playerobjekten inkl. aktuellem Track & Metadaten.
