Spotify · Schema
Spotify Playlist
Schema for a Spotify playlist object, including track listing, owner, and metadata.
MusicAudioStreamingPodcastsPlaylists
Properties
| Name | Type | Description |
|---|---|---|
| id | string | The Spotify ID for the playlist |
| uri | string | The Spotify URI for the playlist |
| href | string | Link to the Web API endpoint providing full playlist details |
| name | string | The name of the playlist |
| description | stringnull | The playlist description |
| type | string | |
| public | booleannull | Whether the playlist is public (visible to others) |
| collaborative | boolean | Whether other users can add/remove tracks from the playlist |
| snapshot_id | string | The version identifier for the current playlist |
| followers | object | Information about the followers of the playlist |
| owner | object | The user who owns the playlist |
| tracks | object | The tracks in the playlist (paginated) |
| images | array | Playlist cover art images |
| external_urls | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://api.spotify.com/schemas/playlist",
"title": "Spotify Playlist",
"description": "Schema for a Spotify playlist object, including track listing, owner, and metadata.",
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "The Spotify ID for the playlist",
"examples": ["3cEYpjA9oz9GiPac4AsH4n"]
},
"uri": {
"type": "string",
"description": "The Spotify URI for the playlist",
"pattern": "^spotify:playlist:[a-zA-Z0-9]{22}$"
},
"href": {
"type": "string",
"format": "uri",
"description": "Link to the Web API endpoint providing full playlist details"
},
"name": {
"type": "string",
"description": "The name of the playlist",
"examples": ["My Awesome Playlist"]
},
"description": {
"type": ["string", "null"],
"description": "The playlist description"
},
"type": {
"type": "string",
"enum": ["playlist"]
},
"public": {
"type": ["boolean", "null"],
"description": "Whether the playlist is public (visible to others)"
},
"collaborative": {
"type": "boolean",
"description": "Whether other users can add/remove tracks from the playlist"
},
"snapshot_id": {
"type": "string",
"description": "The version identifier for the current playlist"
},
"followers": {
"type": "object",
"description": "Information about the followers of the playlist",
"properties": {
"href": {"type": ["string", "null"]},
"total": {"type": "integer", "minimum": 0}
}
},
"owner": {
"type": "object",
"description": "The user who owns the playlist",
"properties": {
"id": {"type": "string"},
"uri": {"type": "string"},
"href": {"type": "string", "format": "uri"},
"display_name": {"type": ["string", "null"]},
"type": {"type": "string", "enum": ["user"]},
"external_urls": {
"type": "object",
"properties": {
"spotify": {"type": "string", "format": "uri"}
}
}
},
"required": ["id"]
},
"tracks": {
"type": "object",
"description": "The tracks in the playlist (paginated)",
"properties": {
"href": {"type": "string", "format": "uri"},
"total": {"type": "integer", "minimum": 0},
"limit": {"type": "integer"},
"offset": {"type": "integer"},
"next": {"type": ["string", "null"]},
"previous": {"type": ["string", "null"]},
"items": {
"type": "array",
"items": {
"type": "object",
"properties": {
"added_at": {"type": ["string", "null"], "format": "date-time"},
"added_by": {
"type": ["object", "null"],
"properties": {
"id": {"type": "string"},
"uri": {"type": "string"},
"type": {"type": "string"}
}
},
"is_local": {"type": "boolean"},
"track": {
"description": "The track or episode in this playlist position"
}
}
}
}
}
},
"images": {
"type": "array",
"description": "Playlist cover art images",
"items": {
"type": "object",
"properties": {
"url": {"type": "string", "format": "uri"},
"height": {"type": ["integer", "null"]},
"width": {"type": ["integer", "null"]}
},
"required": ["url"]
}
},
"external_urls": {
"type": "object",
"properties": {
"spotify": {"type": "string", "format": "uri"}
}
}
},
"required": ["id", "uri", "name", "type", "owner"]
}