Skip to content

SoundCloud API

by soundcloud.com

OAuthHTTPSMusic
Open documentation ↗

Overview

With SoundCloud API you can build applications that will give more power to control your content

SoundCloud is a music API from soundcloud.com. Requests are authenticated with OAuth. It is served over HTTPS. Its OpenAPI description documents 59 endpoints.

At a glance

Authentication
OAuth
HTTPS
Yes
CORS
Unknown
Category
Music
Base URL
https://api.soundcloud.com
Version
1.0.0
Endpoints
59
Spec updated
2021-06-21

Make a first request

Replace the placeholders; the documentation says exactly where credentials go.

cURL
curl -X GET "https://api.soundcloud.com/connect" \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_TOKEN"
JavaScript
const response = await fetch("https://api.soundcloud.com/connect", {
  method: "GET",
  headers: {
    "Accept": "application/json",
    "Authorization": "Bearer YOUR_TOKEN",
  },
});
const data = await response.json();
console.log(data);
Python
import requests

response = requests.request(
    "GET",
    "https://api.soundcloud.com/connect",
    headers={
    "Accept": "application/json",
    "Authorization": "Bearer YOUR_TOKEN",
    },
    timeout=30,
)
print(response.json())

Endpoints

MethodPathWhat it does
GET/connectThe OAuth2 authorization endpoint. Your app redirects a user to this endpoint, allowing them to delegate access to their account.
POST/likes/playlists/{playlist_id}Likes a playlist.
DELETE/likes/playlists/{playlist_id}Unlikes a playlist.
POST/likes/tracks/{track_id}Likes a track.
DELETE/likes/tracks/{track_id}Unlikes a track.
GET/meReturns the authenticated user’s information.
GET/me/activitiesReturns the authenticated user's activities.
GET/me/activities/all/ownRecent the authenticated user's activities.
GET/me/activities/tracksReturns the authenticated user's recent track related activities.
GET/me/connectionsReturns a list of the authenticated user's connected social accounts.
GET/me/connections/{connection_id}Returns the authenticated user's connected social account.
GET/me/favorites/idsdeprecatedReturns user’s favorites ids. (use /me/likes/tracks instead to fetch the authenticated user's likes)
GET/me/followersReturns a list of users who are following the authenticated user.
GET/me/followers/{follower_id}deprecatedReturns a user who is following the authenticated user. (use /users/{user_id} instead, to fetch the user details)
GET/me/followingsReturns a list of users who are followed by the authenticated user.
GET/me/followings/tracksReturns a list of recent tracks from users followed by the authenticated user.
GET/me/followings/{user_id}deprecatedReturns a user who is followed by the authenticated user. (use /users/{user_id} instead, to fetch the user details)
PUT/me/followings/{user_id}Follows a user.
DELETE/me/followings/{user_id}Deletes a user who is followed by the authenticated user.
GET/me/likes/tracksReturns a list of favorited or liked tracks of the authenticated user.
GET/me/playlistsReturns user’s playlists (sets).
GET/me/playlists/{playlist_id}deprecatedReturns playlist. (use /playlists/{playlist_id} instead, to fetch the playlist details)
GET/me/tracksReturns a list of user's tracks.
GET/me/tracks/{track_id}deprecatedReturns a specified track. (use /tracks/{track_id} instead, to fetch the track details)
POST/oauth2/tokenThis endpoint accepts POST requests and is used to provision access tokens once a user has authorized your application.
GET/playlistsPerforms a playlist search based on a query
POST/playlistsCreates a playlist.
GET/playlists/{playlist_id}Returns a playlist.
PUT/playlists/{playlist_id}Updates a playlist.
DELETE/playlists/{playlist_id}Deletes a playlist.
GET/playlists/{playlist_id}/repostersReturns a collection of playlist's reposters.
GET/playlists/{playlist_id}/tracksReturns tracks under a playlist.
POST/reposts/playlists/{playlist_id}Reposts a playlist as the authenticated user
DELETE/reposts/playlists/{playlist_id}Removes a repost on a playlist as the authenticated user
POST/reposts/tracks/{track_id}Reposts a track as the authenticated user
DELETE/reposts/tracks/{track_id}Removes a repost on a track as the authenticated user
GET/resolveResolves soundcloud.com URLs to Resource URLs to use with the API.
GET/tracksPerforms a track search based on a query
POST/tracksUploads a new track.
GET/tracks/{track_id}Returns a track.
PUT/tracks/{track_id}Updates a track's information.
DELETE/tracks/{track_id}Deletes a track.
GET/tracks/{track_id}/commentsReturns the comments posted on the track(track_id).
POST/tracks/{track_id}/commentsReturns the newly created comment on success
GET/tracks/{track_id}/favoritersReturns a list of users who have favorited or liked the track.
GET/tracks/{track_id}/relatedReturns all related tracks of track on SoundCloud.
GET/tracks/{track_id}/repostersReturns a collection of track's reposters.
GET/tracks/{track_id}/streamsReturns a track's streamable URLs
GET/usersPerforms a user search based on a query
GET/users/{user_id}Returns a user.
GET/users/{user_id}/commentsReturns a list of user's comments.
GET/users/{user_id}/favoritesdeprecatedReturns a list of user's favorited or liked tracks. (use /users/:userId/likes/tracks instead, to fetch a user's likes)
GET/users/{user_id}/followersReturns a list of user’s followers.
GET/users/{user_id}/followingsReturns a list of user’s followings.
GET/users/{user_id}/followings/{following_id}deprecatedReturns a user's following. (use /users/{user_id} instead, to fetch the user details)
GET/users/{user_id}/likes/tracksReturns a list of user's liked tracks.
GET/users/{user_id}/playlistsReturns a list of user's playlists.
GET/users/{user_id}/tracksReturns a list of user's tracks.
GET/users/{user_id}/web-profilesReturns list of user's links added to their profile (website, facebook, instagram).

Questions

Does the SoundCloud API need an API key?

Yes. The SoundCloud API uses OAuth authentication; the documentation explains how to get credentials.

Does the SoundCloud API support HTTPS?

Yes, the SoundCloud API is served over HTTPS.

How many endpoints does the SoundCloud API have?

Its OpenAPI description lists 59 endpoints in version 1.0.0. All of them are shown on this page.

What are alternatives to the SoundCloud API?

Other Music APIs include Spotify, Bandcamp, iTunes, Songlink / Odesli, LastFm.

Compare alternatives →

Listed from public-apis (MIT), public-apis database (MIT), APIs.guru (CC0).