Download the PHP package calliostro/spotify-web-api-bundle without Composer

On this page you can find all versions of the php package calliostro/spotify-web-api-bundle. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package spotify-web-api-bundle

Spotify Web API Bundle for Symfony

Package Version Total Downloads License PHP Version CI Code Coverage PHPStan Level Code Style

A resilient Symfony bundle integrating jwilsson/spotify-web-api-php into your Symfony application. Features automated token management for long-running CLI commands and Symfony Messenger background workers, dependency injection, autowiring, and support for Client Credentials & Authorization Code flows on PHP 8.1+ and Symfony 6.4, 7.x, and 8.x.

๐Ÿ“ฆ Installation

Install via Composer:


โš™๏ธ Configuration

Register your application on the Spotify Developer Dashboard to obtain your client_id and client_secret.

Configure the bundle in config/packages/calliostro_spotify_web_api.yaml:

[!NOTE] If you are using the Authorization Code flow, make sure to allowlist your redirect_uri (e.g. https://127.0.0.1:8000/callback/) in your Spotify Developer App settings.


๐Ÿš€ Quick Start

1. Client Credentials Flow (Machine-to-Machine)

For public data endpoints (searching tracks, getting artist info, browsing playlists), inject SpotifyClient directly into your controllers, services, or console commands:

[!TIP] Type-hinting Calliostro\SpotifyWebApiBundle\SpotifyClient is recommended. It extends SpotifyWebAPI\SpotifyWebAPI, ensuring full backward compatibility while providing automated token freshness checks and retry handling for long-running processes.

2. Authorization Code Flow (User Data)

To access private user data (playlists, saved tracks, top artists), inject both SpotifyClient and Session:


โšก Long-Running Processes (CLI & Messenger Workers)

Spotify OAuth access tokens expire strictly after 3,600 seconds (1 hour). In standard setups, long-running CLI commands or Symfony Messenger background workers (bin/console messenger:consume) crash with a 401 Expired Token error after 60 minutes.

This bundle solves this problem automatically out of the box:

  1. In-Memory Caching: TokenProvider caches the access token in memory with an automatic freshness threshold (55 minutes).
  2. Pre-emptive Refresh: Before any API call is sent, SpotifyClient ensures the token is still valid and refreshes it transparently if needed.
  3. Self-Healing Retries: If Spotify returns an expired token exception, SpotifyClient catches it, forces a token refresh, and retries the request once before failing.

Your workers and daemon commands can run for days without interruption or manual token management.


โœจ Key Features


๐Ÿ“‹ Requirements


๐Ÿงช Development & Testing Guide

See DEVELOPMENT.md for detailed setup instructions, test suite commands, static analysis, and contribution guidelines.


๐Ÿค Contributing

Contributions are welcome! Please ensure that all tests pass and coding standards are maintained:


๐Ÿ“„ License

This project is licensed under the MIT License โ€” see the LICENSE file for details.


โš–๏ธ Disclaimer

Spotify is a registered trademark of Spotify AB. This project is an independent, unofficial open-source bundle and is not affiliated with, endorsed by, or sponsored by Spotify AB.


๐Ÿ™ Acknowledgments


All versions of spotify-web-api-bundle with dependencies

PHP Build Version
Package Version
Requires php Version ^8.1
jwilsson/spotify-web-api-php Version ^6.0 || ^7.0
symfony/config Version ^6.4 || ^7.0 || ^8.0
symfony/dependency-injection Version ^6.4 || ^7.0 || ^8.0
symfony/http-kernel Version ^6.4 || ^7.0 || ^8.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package calliostro/spotify-web-api-bundle contains the following files

Loading the files please wait ...