# Music Streaming API ## Description This is version `1.0.0` of this API documentation. Last update on Nov 15, 2025. RESTful API pro správu hudební streaming služby. ## Verzování Major verzování v url: ### Formát verze - Součástí URL: `/v1/users`, `/v2/users` - Formát: `/v{major}/` major - celé číslo ### Typy změn - **Breaking change** (v1 → v2): Odstranění endpointu, změna odpovědi... (vše co rozbije závislé služby) - **Nová funkcionalita** (v1 → v1): Nový endpoint, nové volitelné pole - **Oprava chyby** (v1 → v1): Bugfix ### Životnost - Každá major verze podporována **4 měsíce** po vytvoření nové - Deprecated verze označena `X-API-Deprecated: true` --- ## Formáty dat ### Request/Response - **Content-Type**: `application/json` - **Encoding**: UTF-8 - **DateTime**: ISO 8601 (`2025-11-03T14:30:00Z`) ### Stránkování Query parametry `page` (od 1) a `limit` (max 100). Response: ```json { "data": [...], "pagination": { "page": 1, "limit": 20, "total": 150 } } ``` --- ## Autentizace **JWT Bearer token** autentizace: 1. `POST /auth/login` → získání tokenu 2. Použití: `Authorization: Bearer ` 3. Platnost: 24 hodin ### Role - **admin**: Plný přístup - **artist**: Správa vlastních písní - **user**: Správa vlastních playlistů --- ## Zdroje API ### Vazby M:N - **User** (1:N) → **Playlist** - **Playlist** (M:N) ↔ **Song** - **Song** (M:N) ↔ **Artist** ### Endpointy Každý zdroj má CRUD operace: - `GET /{resource}` - Seznam - `POST /{resource}` - Vytvoření - `GET /{resource}/{id}` - Detail - `PUT /{resource}/{id}` - Aktualizace - `DELETE /{resource}/{id}` - Smazání ## Servers - Produkční server: https://api.mstonjek.cz/v1 (Produkční server) ## Authentication ## Endpoints and operations ### [Authentication](https://api.mstonjek.cz/group/endpoint-authentication.md) - [Přihlášení uživatele](https://api.mstonjek.cz/operation/operation-post-auth-login.md) - [Obnovení JWT tokenu](https://api.mstonjek.cz/operation/operation-post-auth-refresh.md) - [Odhlášení uživatele](https://api.mstonjek.cz/operation/operation-logoutuser.md) ### [Users](https://api.mstonjek.cz/group/endpoint-users.md) - [Seznam všech uživatelů](https://api.mstonjek.cz/operation/operation-get-users.md) - [Vytvoření nového uživatele](https://api.mstonjek.cz/operation/operation-post-users.md) - [Detail jednoho uživatele](https://api.mstonjek.cz/operation/operation-get-users-parameter.md) - [Úprava existujícího uživatele](https://api.mstonjek.cz/operation/operation-put-users-parameter.md) - [Smazání uživatele](https://api.mstonjek.cz/operation/operation-delete-users-parameter.md) ### [Playlists](https://api.mstonjek.cz/group/endpoint-playlists.md) - [Seznam všech playlistů](https://api.mstonjek.cz/operation/operation-listplaylists.md) - [Vytvoření nového playlistu](https://api.mstonjek.cz/operation/operation-createplaylist.md) - [Detail jednoho playlistu](https://api.mstonjek.cz/operation/operation-getplaylistbyid.md) - [Úprava existujícího playlistu](https://api.mstonjek.cz/operation/operation-replaceplaylist.md) - [Smazání playlistu](https://api.mstonjek.cz/operation/operation-deleteplaylist.md) - [Seznam skladeb v playlistu](https://api.mstonjek.cz/operation/operation-listsongsinplaylist.md) - [Přidání skladby do playlistu](https://api.mstonjek.cz/operation/operation-addsongtoplaylist.md) - [Odebrání skladby z playlistu](https://api.mstonjek.cz/operation/operation-removesongfromplaylist.md) ### [Songs](https://api.mstonjek.cz/group/endpoint-songs.md) - [Seznam všech skladeb](https://api.mstonjek.cz/operation/operation-get-songs.md) - [Vytvoření nové skladby](https://api.mstonjek.cz/operation/operation-post-songs.md) - [Detail jedné skladby](https://api.mstonjek.cz/operation/operation-get-songs-parameter.md) - [Smazání skladby](https://api.mstonjek.cz/operation/operation-delete-songs-parameter.md) - [Částečná úprava skladby](https://api.mstonjek.cz/operation/operation-patch-songs-parameter.md) ### [Artists](https://api.mstonjek.cz/group/endpoint-artists.md) - [Seznam interpretů](https://api.mstonjek.cz/operation/operation-listartists.md) - [Vytvořit interpreta](https://api.mstonjek.cz/operation/operation-createartist.md) - [Detail interpreta](https://api.mstonjek.cz/operation/operation-getartist.md) - [Plná aktualizace interpreta](https://api.mstonjek.cz/operation/operation-replaceartist.md) - [Smazat interpreta](https://api.mstonjek.cz/operation/operation-deleteartist.md) - [Částečná aktualizace interpreta](https://api.mstonjek.cz/operation/operation-updateartist.md) - [Seznam skladeb interpreta](https://api.mstonjek.cz/operation/operation-listartistsongs.md) - [Přiřadit skladbu k interpretovi](https://api.mstonjek.cz/operation/operation-linksongtoartist.md) - [Odebrat skladbu od interpreta](https://api.mstonjek.cz/operation/operation-unlinksongfromartist.md) [Powered by Bump.sh](https://bump.sh)