{"id":28236,"library":"spotipyio","title":"SpotipyIO","description":"An async Python client for the Spotify Web API, supporting authentication, caching, and all major endpoints. Current version 1.1.1, requires Python 3.8–3.12. Released sporadically.","status":"active","version":"1.1.1","language":"python","source_language":"en","source_url":"https://github.com/nirv-ai/spotipyio","tags":["spotify","async","api","web-api","music"],"install":[{"cmd":"pip install spotipyio","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"HTTP client for async requests","package":"httpx","optional":false}],"imports":[{"note":"SpotifyClient is exported at package level, not from submodule.","wrong":"from spotipyio.client import SpotifyClient","symbol":"SpotifyClient","correct":"from spotipyio import SpotifyClient"}],"quickstart":{"code":"import asyncio\nfrom spotipyio import SpotifyClient\n\nasync def main():\n    client = SpotifyClient(\n        client_id=os.environ.get('SPOTIPY_CLIENT_ID', ''),\n        client_secret=os.environ.get('SPOTIPY_CLIENT_SECRET', ''),\n        redirect_uri=os.environ.get('SPOTIPY_REDIRECT_URI', 'http://localhost:8080/callback')\n    )\n    # Example: search for an artist\n    results = await client.search(q='Radiohead', type='artist', limit=1)\n    print(results)\n\nasyncio.run(main())","lang":"python","description":"Initialize a SpotifyClient with credentials and perform a search."},"warnings":[{"fix":"Upgrade to 1.1.1 and wrap all client calls with `await`.","message":"In version 1.0.0, the async API was rewritten. Sync methods were removed. All calls now require `await`.","severity":"breaking","affected_versions":"<1.0.0"},{"fix":"Ensure your redirect_uri matches exactly what is set in the Spotify Developer Dashboard (e.g., http://localhost:8080/callback).","message":"Authentication flow requires a running HTTP server on localhost to capture the redirect. Without a properly configured redirect URI, authorization fails silently.","severity":"gotcha","affected_versions":">=1.0.0"},{"fix":"Replace `cache_path='/path/to/cache'` with `token_cache=FileCache('/path/to/cache')`.","message":"The `SpotifyClient` initializer parameter `cache_path` is deprecated and will be removed in v2.0. Use `token_cache` option instead.","severity":"deprecated","affected_versions":">=1.1.0"}],"env_vars":null,"last_verified":"2026-05-09T00:00:00.000Z","next_check":"2026-08-07T00:00:00.000Z","problems":[{"fix":"Upgrade to spotipyio>=1.0.0 with `pip install --upgrade spotipyio`.","cause":"Installed an older version (<1.0.0) that used a different export pattern.","error":"ImportError: cannot import name 'SpotifyClient' from 'spotipyio'"},{"fix":"Set SPOTIPY_CLIENT_ID and SPOTIPY_CLIENT_SECRET environment variables with valid Spotify app credentials.","cause":"Missing or incorrect environment variables SPOTIPY_CLIENT_ID or SPOTIPY_CLIENT_SECRET.","error":"spotipyio.exceptions.AuthenticationError: Invalid client credentials"}],"ecosystem":"pypi","meta_description":null,"install_score":null,"install_tag":null,"quickstart_score":null,"quickstart_tag":null}