SoundCloud for Developers

Discover, connect and build

Backstage Blog RSS

You're browsing posts of the category SDKs

  • October 1st, 2015 Announcements API JavaScript SDKs Introducing SoundCloud JavaScript SDK 3.0.0 By Jan Monschke

    We are happy to announce version 3.0.0 of our SoundCloud JavaScript SDK.

    The new SDK improves stream security and content uploading functionality, and modernizes the technology stack.

    Version 3 of the SoundCloud JavaScript SDK is a major update and is not backwards compatible. That said, the changes that you need to make your web app work with the new SDK are easy to implement. Please refer to Migrating to JavaScript SDK 3.0.0 to upgrade.

    ECMAScript 2015 and CommonJS

    The original version of the SDK was written in CoffeeScript, which is no longer a core technology at SoundCloud. This update provided us the opportunity to migrate our source code from CoffeeScript to ECMAScript 2015.

    The new SDK is now using the Babel compiler for ES2015 support, and webpack as our bundler. This has the additional benefit of making the SoundCloud JavaScript SDK 3.0.0 compliant with CommonJS.

    Because of this, we can now take advantage of the variety of packages that are available via npm, and users can install the SDK via npm as well. Please refer to the npm page for details.

    JavaScript Promises

    Promises have become a core part of JavaScript with the new ES2015 specification, and they allow for better composability and a easier control flow. Internally, we work with Promises a lot and wanted to give external developers the ability to benefit from an easier API.

    Web Audio API

    The previous SDK neither provided a way to record sounds from Web Audio applications nor a way to upload Web Audio recordings. It shipped with a Flash component that handled recording and uploading of recordings. There was no way to specify an external file for uploading.

    The new SDK ships with a recorder component that uses Web Audio and getUserMedia instead of Flash, and the component allows you to pass in arbitrary AudioNodes that will be recorded. This makes it much easier to integrate the SoundCloud JavaScript SDK 3.0.0 into creator applications that rely on Web Audio. The SDK provides a dedicated method to publish recordings directly from your web app.

    Secure streaming

    The new SDK now includes a new player component. This component improves security for creator content and provides the improved playback stability.


    We also took the time to all of rewrite our documentation and code examples so that you can start with the new SDK immediately.

  • May 1st, 2014 Announcements JavaScript SDKs Introducing JavaScript SDK version 2 By Erik Michaels-Ober

    SoundCloud is pleased to introduce a new major version of the SoundCloud JavaScript SDK. In version 2, we've rewritten much of the internal code, resulting in better performance for your JavaScript applications and support for more streaming standards, such as HTTP Live Streaming.

    You can test the new version by pointing your JavaScript applications to

    We've also created a guide to help you upgrade from version 1 to version 2.

    JavaScript SDK version 1 is now deprecated and will be permanently replaced by version 2 on July 1, 2014.

    On June 17, 2014, we will temporarily replace version 1 with version 2 between 10:00 and 11:00 UTC. We will do this again on June 24, 2014, between 18:00 and 19:00 UTC. These two upgrade tests will give you an opportunity to understand the impact of this change on your applications. To ensure a seamless transition for your users, we strongly encourage you to upgrade and perform internal tests in advance of these dates.

    To receive notices before, during, and after these tests, follow @SoundCloudDev on Twitter.

    If you have any questions about this upgrade, please feel free to email

  • August 13th, 2012 Announcements SDKs Introducing the CloudSeeder Devkit By David Shu

    Today we're featuring a guest post from our friends at Retronyms. They've built some amazing community features into their app Tabletop using the SoundCloud API and have open sourced their CloudSeeder Devkit. This post was written for us by David Shu. David is a software engineer at the Retronyms and has worked on a number of iOS apps, including Tabletop and Dokobots. He currently resides in San Francisco, CA.

    We recently built a SoundCloud-powered community into our app Tabletop, a modular audio environment for the iPad, using the CocoaSoundCloudAPI. The project, CloudSeeder, lets users browse, stream, favorite, and comment on Tabletop tracks without ever leaving the app.

    As developers, we discovered tons of talented users in our Tabletop community. At the same time, our users found inspiration from each other and a new showcase for their creations. To share in the excitement of community creation with all developers, today we're releasing the CloudSeeder Devkit as open source on Google Code.



  • July 6th, 2012 Announcements SDKs SocialFolders Releases SoundCloud Ruby Gem By Paul Osman

    There are many approaches to building libraries that wrap HTTP APIs. For many of our officially supported SDKs we chose to build light wrappers around HTTP client libraries with a few added features to make it easier to work with the SoundCloud API. This approach has a few benefits. It guarantees a certain consistency and is relatively easy to maintain. It's also fairly future proof. Changes in the HTTP API do not typically require updates to client libraries.

    Sometimes however, you might be looking for something a bit more feature-full, or with more abstraction from our HTTP API. That's why I was really happy to see that the great folks at SocialFolders built an alternative SoundCloud Ruby gem and released it to the public. You can check out their blog post about it or go straight to the source on GitHub.


  • March 6th, 2012 Announcements SDKs Announcing new Python SDK By Paul Osman

    It's no secret that SoundCloud is a Ruby shop, but that doesn't stop us from giving some love to the Pythonistas in our community.

    Our old Python API wrapper has been neglected. It doesn't support OAuth 2 or all of the resources made available by our API. It's old and crufty and we're sorry for letting it get that way. In order to make it up to you, we wrote a new one and made it much better.