Track

data class Track(externalUrlsString: Map<String, String>, externalIdsString: Map<String, String>, availableMarketsString: List<String>, href: String, id: String, uri: PlayableUri, album: SimpleAlbum, artists: List<SimpleArtist>, isPlayable: Boolean, discNumber: Int, durationMs: Int, explicit: Boolean, linkedTrack: LinkedTrack?, name: String, popularity: Int, previewUrl: String?, trackNumber: Int, type: String, isLocal: Boolean?, restrictions: Restrictions?, episode: Boolean?, track: Boolean?) : RelinkingAvailableResponse, Playable

Represents a music track on Spotify

Parameters

album

The album on which the track appears. The album object includes a link in href to full information about the album.

artists

The artists who performed the track. Each artist object includes a link in href to more detailed information about the artist.

isPlayable

Part of the response when Track Relinking is applied. If true , the track is playable in the given market. Otherwise false.

discNumber

The disc number (usually 1 unless the album consists of more than one disc).

durationMs

The track length in milliseconds.

explicit

Whether or not the track has explicit lyrics ( true = yes it does; false = no it does not OR unknown).

href

A link to the Web API endpoint providing full details of the track.

id

The Spotify ID for the track.

linkedTrack

Part of the response when Track Relinking is applied and is only part of the response if the track linking, in fact, exists. The requested track has been replaced with a different track. The track in the linkedTrack object contains information about the originally requested track.

name

The name of the track.

popularity

The popularity of the track. The value will be between 0 and 100, with 100 being the most popular. The popularity of a track is a value between 0 and 100, with 100 being the most popular. The popularity is calculated by algorithm and is based, in the most part, on the total number of plays the track has had and how recent those plays are. Generally speaking, songs that are being played a lot now will have a higher popularity than songs that were played a lot in the past. Duplicate tracks (e.g. the same track from a single and an album) are rated independently. Artist and album popularity is derived mathematically from track popularity. Note that the popularity value may lag actual popularity by a few days: the value is not updated in real time.

previewUrl

A link to a 30 second preview (MP3 format) of the track. Can be null

trackNumber

The number of the track. If an album has several discs, the track number is the number on the specified disc.

type

The object type: “track”.

isLocal

Whether or not the track is from a local file.

restrictions

Part of the response when Track Relinking is applied, the original track is not available in the given market, and Spotify did not have any tracks to relink it with. The track response will still contain metadata for the original track, and a restrictions object containing the reason why the track is not available: "restrictions" : {"reason" : "market"}

Constructors

Track
Link copied to clipboard
common
fun Track(externalUrlsString: Map<String, String>, externalIdsString: Map<String, String> = hashMapOf(), availableMarketsString: List<String> = listOf(), href: String, id: String, uri: PlayableUri, album: SimpleAlbum, artists: List<SimpleArtist>, isPlayable: Boolean = true, discNumber: Int, durationMs: Int, explicit: Boolean, linkedTrack: LinkedTrack? = null, name: String, popularity: Int, previewUrl: String? = null, trackNumber: Int, type: String, isLocal: Boolean? = null, restrictions: Restrictions? = null, episode: Boolean? = null, track: Boolean? = null)
The album on which the track appears.

Functions

getMembersThatNeedApiInstantiation
Link copied to clipboard
common
open override fun getMembersThatNeedApiInstantiation(): List<NeedsApi?>
isRelinked
Link copied to clipboard
common
fun isRelinked(): Boolean
Check if this response has been relinked.

Properties

album
Link copied to clipboard
common
val album: SimpleAlbum
The album on which the track appears.
api
Link copied to clipboard
common
lateinit var api: GenericSpotifyApi
The API client associated with the request
artists
Link copied to clipboard
common
val artists: List<SimpleArtist>
The artists who performed the track.
asLocalTrack
Link copied to clipboard
common
open val asLocalTrack: LocalTrack?
This Playable as a local track, or else null if it is an episode or track.
asPodcastEpisodeTrack
Link copied to clipboard
common
open val asPodcastEpisodeTrack: PodcastEpisodeTrack?
This Playable as an episode (podcast), or else null if it is a local track or track.
asTrack
Link copied to clipboard
common
open val asTrack: Track?
This Playable as a track, or else null if it is a local track or episode (podcast).
availableMarkets
Link copied to clipboard
common
val availableMarkets: List<Market>
A list of the countries in which the track can be played, identified by their ISO 3166-1 alpha-2 code.
discNumber
Link copied to clipboard
common
val discNumber: Int
The disc number (usually 1 unless the album consists of more than one disc).
durationMs
Link copied to clipboard
common
val durationMs: Int
The track length in milliseconds.
episode
Link copied to clipboard
common
val episode: Boolean? = null
explicit
Link copied to clipboard
common
val explicit: Boolean
Whether or not the track has explicit lyrics ( true = yes it does; false = no it does not OR unknown).
externalIds
Link copied to clipboard
common
val externalIds: List<ExternalId>
External IDs for this track.
externalUrls
Link copied to clipboard
common
val externalUrls: List<ExternalUrl>
Known external URLs for this object
href
Link copied to clipboard
common
open override val href: String
A link to the Web API endpoint providing full details of the track.
id
Link copied to clipboard
common
open override val id: String
The Spotify ID for the track.
isLocal
Link copied to clipboard
common
val isLocal: Boolean? = null
Whether or not the track is from a local file.
isPlayable
Link copied to clipboard
common
val isPlayable: Boolean = true
Part of the response when Track Relinking is applied.
length
Link copied to clipboard
common
val length: Int
The track length in milliseconds.
linkedTrack
Link copied to clipboard
common
open override val linkedTrack: LinkedTrack? = null
Part of the response when Track Relinking is applied and is only part of the response if the track linking, in fact, exists.
name
Link copied to clipboard
common
val name: String
The name of the track.
popularity
Link copied to clipboard
common
val popularity: Int
The popularity of the track.
previewUrl
Link copied to clipboard
common
val previewUrl: String? = null
A link to a 30 second preview (MP3 format) of the track.
restrictions
Link copied to clipboard
common
val restrictions: Restrictions? = null
Part of the response when Track Relinking is applied, the original track is not available in the given market, and Spotify did not have any tracks to relink it with.
track
Link copied to clipboard
common
val track: Boolean? = null
trackNumber
Link copied to clipboard
common
val trackNumber: Int
The number of the track.
type
Link copied to clipboard
common
open override val type: String
The object type: “track”.
uri
Link copied to clipboard
common
open override val uri: PlayableUri
The URI associated with the object

Sources

common source
Link copied to clipboard