I'm trying to get the tracks of specific users but for some users, even though they have tracks, the SoundCloud API return an empty list.
For example, the following user has 17 tracks as you can see from his track_count
http://api.soundcloud.com/users/1250904?client_id=XXXXXX
If I try to get his tracks it returns an empty list
http://api.soundcloud.com/users/1250904/tracks?client_id=XXXXXX
Is it possible for users to make their songs not available via API? Is there a field on the user that can distinguish this?
This is very interesting. Using a normal CLIENT_ID I generated myself, I get the same results you do. Additionally, if I try to hit the API for information about a specific track, I get a 403 Forbidden error:
HTTP GET https://api.soundcloud.com/tracks/149151252.json?client_id=XXXXXX
There could be a few reasons why this is occurring:
I'm leaning on choice 3 here. I've done some testing with some other CLIENT_IDs in this question trying the CLIENT_ID used by the youtube-dl application. Using their _IPHONE_CLIENT_ID
, I was able to see information for all 17 tracks. If my understanding of that key is correct, it is a master API key used by SoundCloud for their iOS application, which would explain why that key works and others do not.
This user must have some setting enabled to block standard API access to their tracks.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With