I'm requesting bucket=audio_summary
for songs that rank highly in hotttness.
The top 100 hotttessst songs all return track.status: 'complete'
but the audio summary is always an empty object.
How do I get audio summary data like time_signature
and tempo
? Doesn't track.status: complete
imply that this information should be included in the response?
Can't Feel My Face
https://developer.echonest.com/api/v4/track/profile?api_key=*****************&format=json&id=SOMVZDS14DDE5909E7&bucket=audio_summary
{
"response": {
"status": {
"version": "4.2",
"code": 0,
"message": "Success"
},
"track": {
"status": "complete",
"id": "SOZOIDR14C02B654D4",
"audio_summary": {}
}
}
}
It looks like you have the SongId rather than the TrackId for this song. If you replace 'track' with 'song' in your query you get the expected results.
This: https://developer.echonest.com/api/v4/song/profile?api_key=*****************&format=json&id=SOMVZDS14DDE5909E7&bucket=audio_summary
Returns this:
{
"response":{
"status":{
"version":"4.2",
"code":0,
"message":"Success"
},
"songs":[
{
"artist_id":"ARYUDWF12F2B89BB33",
"artist_name":"The Weeknd",
"id":"SOMVZDS14DDE5909E7",
"audio_summary":{
"key":9,
"analysis_url":"http://echonest-analysis.s3.amazonaws.com/TR/A7NwGAWSmhnc53M8w1rLk-eA_tsN8OUHaqV5C5FTbb9BnCPZVnxWOGld1wLxJJ-xdNV8xKJbbZlCRSKJc%3D/3/full.json?AWSAccessKeyId=AKIAJRDFEY23UEVW42BQ&Expires=1454028841&Signature=HeUxbEJt4f0ncipjD1Gamtuj08E%3D",
"energy":0.781735,
"liveness":0.12022,
"tempo":107.954,
"speechiness":0.042317,
"acousticness":0.124391,
"instrumentalness":0.0,
"mode":0,
"time_signature":4,
"duration":216.46667,
"loudness":-5.528,
"audio_md5":"",
"valence":0.586261,
"danceability":0.713659
},
"title":"Can't Feel My Face"
}
]
}
}
The only reason I was able to track this down was that throwing any ID into the track API give back the stub response you were seeing and I was able to get the audio_summary for this song using the spotify id so I knew it was available.