Documentation Index
Fetch the complete documentation index at: https://docs.rocksky.app/llms.txt
Use this file to discover all available pages before exploring further.
rocksky is an async-first, typed Python client for the Rocksky API.
- Built on
asyncio+httpx.AsyncClient - Pydantic v2 models for every common entity
- Resource-style namespaces (
client.actor,client.scrobble, …) - Escape hatch via
client.call(method)for un-wrapped XRPC methods - Works on Python 3.10+
Install
Quick start
Authenticating
Self-hosting / custom base URL
Builder
- Every setter returns
self, so chain freely. - Hooks may be sync or async — the SDK awaits when needed.
retries(n)retriesTransportError+ any 5xx response with exponential backoff (backoff * 2**attempt). 4xx surfaces immediately.
IPython autoawait
Resources
| Namespace | Methods |
|---|---|
actor | get_profile, get_albums, get_artists, get_songs, get_scrobbles, get_loved_songs, get_playlists, get_neighbours, get_compatibility |
album | get, list, get_tracks |
artist | get, list, get_albums, get_tracks, get_listeners, get_recent_listeners |
song | get, list, match, get_recent_listeners, create |
scrobble | get, list, create |
charts | top_tracks, top_artists, scrobbles_chart |
feed | get, search, stories, recommendations, artist_recommendations, album_recommendations, get_generator, list_generators |
graph | follow, unfollow, get_followers, get_follows, get_known_followers |
shout | create, reply, remove, report, for_profile, for_album, for_artist, for_track, replies |
like | like_song, dislike_song, like_shout, dislike_shout |
playlist | get, list, create, remove, start, insert_files, insert_directory |
player | currently_playing, queue, play, pause, next, previous, seek, play_file, play_directory, add_items_to_queue |
spotify | currently_playing, play, pause, next, previous, seek |
apikey | list, create, update, remove |
stats | get, wrapped |
mirror | list_sources, put_source |
dropbox / googledrive | list_files, get_file, download_file, … |
Escape hatch
Errors
APIError exposes status_code, method, error, message, and body.
Testing
Types
Public model types are derived from the Rocksky lexicons and live inrocksky.gen.models (Pydantic) and rocksky.gen.types (dataclasses). rocksky.models re-exports the Pydantic shapes under their historical SDK names. Regenerate with bun run lexgen:types at the repo root.
License
MIT © Tsiry Sandratraina. Source:sdk/python.