As a part of our efforts to improve API use, we’re introducing a new Track
object that’s more up to date with our current data model. The following change is also intended to standardize and simplify the response data. A new object will be used for all endpoints returning track-related information, for example:
/playlist/:playlist_id/tracks
/tracks
/tracks/:track_id
The following shows a schema of our new Track
model:
{
"artwork_url": Option[String],
"available_country_codes": Option[HashSet[String]],
"bpm": Option[Int],
"comment_count": Option[Int],
"commentable": Boolean,
"created_at": String,
"description": Option[String],
"download_url": Option[String],
"download_count": Option[Int],
"downloadable": Boolean,
"duration": Int,
"favoritings_count": Option[Int],
"genre": Option[String],
"id": Long,
"isrc": Option[String],
"is_explicit": Option[Boolean],
"key_signature": Option[String],
"kind": String,
"label_name": Option[String],
"license": String,
"permalink_url": String,
"playback_count": Option[Int],
"purchase_title": Option[String],
"purchase_url": Option[String],
"release": Option[String],
"release_day": Option[Int],
"release_month": Option[Int],
"release_year": option[Int],
"reposts_count": Option[Int],
"secret_uri": Option[String],
"sharing": String,
"stream_url": Option[String],
"streamable": Boolean,
"tag_list": String,
"title": String,
"uri": Option[String],
"user": User,
"user_favorite": Option[Boolean],
"user_playback_count": Option[Int],
"waveform_url": String
}
In the next couple weeks, we’re planning on removing the following deprecated fields from the response. These fields are either superfluous, outdated, or not in use by developers:
If your application is using the Track
object and/or deprecated fields, please update your API in a timely manner. If you deem any of the above fields necessary for your use case and want them to be preserved, please let us know by filing a feature request on our issue tracker by 31 March 2021.
For future updates, please follow us on Twitter and our blog.