3
votes

Simple dimple one here- trying to use Soundcloud's resolve method to retrieve a JSON feed of track data for a private set.


http://api.soundcloud.com/resolve.json?url=http://soundcloud.com/myUser/private-set

resolve returns a 401 unauthorized error, as it should

http://api.soundcloud.com/resolve.json?url=http://soundcloud.com/myUser/private-set&client_id=myClientID

resolve returns a '404' not found error. it should be 301 redirecting to the authorized JSON feed for the track, such as http://api.soundcloud.com/tracks/49931.json in the doc's example


  • I've created an App

  • I'm using the App's Client ID

  • I've enabled App access in the Set's edit menu

  • I'm formatting it as per the API docs

Am I missing something here?

2
Is the set you're trying to access private? - bbone
So I think what's happening is you're getting a 404 because the set isn't public. Can you make the set public and test again? - bbone
@bbone, no it has to remain private. Finding it hard to believe that I can't access a private set with combination of ClientID and SecretKey or something - technopeasant

2 Answers

2
votes

So after some testing I've confirmed that the issue is related to the fact that you're trying to request a private set. Because the set is private, you would need to first go through SoundCloud's OAuth 2 authentication process before being able to access the set.

1
votes

Try resolving the set url with the url found in the share dialog of your set. This url contains a secret token that can be used to access a private set without logging in.

Not sure how far this'll get you if the tracks in the set are also private, though. And like bbone mentioned, you'll be exposing this secret token, which may or may not be a problem.