(Beta) The Spotify iOS SDK makes it easy to add streaming, user authentication and other Spotify features to iOS apps.

Important! The iOS SDK is currently a beta release; the content and functionality of future versions is likely to change significantly and without warning.
By using Spotify developer tools, you accept our Developer Terms of Use.

About the iOS SDK

The Spotify iOS SDK makes it easy to add Spotify functionality to your iOS app. The SDK  consists of a small footprint binary library and a set of API header files. It is packaged as an Xcode project and includes APIs for:

  • User authentication
  • Audio playback and stream management
  • Metadata (artist, album, track) lookup including artwork
  • Playlist management
  • User’s Your Music Library management

The iOS SDK binary takes care of all negotiation with backend Spotify services, including digital rights management and decoding. It delivers audio as a PCM stream ready for rendering by the iOS device. To keep integration simple, the binary runs single-threaded.

The iOS SDK provides a lightweight alternative to CocoaLibSpotify.

Registering your bundle ID

To communicate with Spotify you need to register your application’s bundle id section in the Developer Portal. This value is used to authenticate your application against Spotify client.

Checkout the SDK

The iOS SDK is available for checkout from its home on GitHub:

Tutorial and Examples

We provide a beginner’s tutorial to help you set up your Xcode environment and get started with the iOS SDK. It leads you through the creation of a simple iOS app that connects to the Spotify service and plays a track.

Note: to complete the tutorial you will need to have a Spotify Premium account.

Within the download package you will also find several demonstration projects and project templates which provide example and starter code.

API Documentation

The API documentation is available online.

Frequently Asked Questions about the iOS SDK

Using it in non-iOS platforms

Can the iOS SDK be used in an OSX App?

No, the iOS SDK is built against the iOS SDKs and won’t work in a Mac OS X app.

Keeping the user authenticated

How can I maintain Spotify login session in my app for more than one hour?

When authenticating via the Web API you will receive a refresh token as well as an access token. For security, the access token will expire after 1 hour (as you have noted). The refresh token can be used to automatically retrieve a new access token without the user needing to re-authenticate.

For more information see the authorization guide.

Terms of Use

Note that by using Spotify developer tools, you accept our Developer Terms of Use.

Applications built with this SDK may be publicly distributed via app stores, however, if the application streams full-length tracks from Spotify you cannot charge users for it (for more about commercial restrictions, see Section IV.2 of the terms of use).

Please also note that streaming of full-length tracks is only available to your users who have a Spotify Premium subscription.

Please report problems with this SDK through the public issue tracker on GitHub.