Skip to content
DocumentationAPI Reference

Get Audiobook Chapters

$ spotted audiobooks list-chapters
GET/audiobooks/{id}/chapters

Get Spotify catalog information about an audiobook's chapters. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets.

ParametersExpand Collapse
--id: string

The Spotify ID for the audiobook.

--limit: optional number

The maximum number of items to return. Default: 20. Minimum: 1. Maximum: 50.

minimum1
maximum50
--market: optional string

An ISO 3166-1 alpha-2 country code. If a country code is specified, only content that is available in that market will be returned.
If a valid user access token is specified in the request header, the country associated with the user account will take priority over this parameter.
Note: If neither market or user country are provided, the content is considered unavailable for the client.
Users can view the country that is associated with their account in the account settings.

--offset: optional number

The index of the first item to return. Default: 0 (the first item). Use with limit to get the next set of items.

ReturnsExpand Collapse
PagingSimplifiedChapterObject: object { href, limit, next, 5 more }
href: string

A link to the Web API endpoint returning the full result of the request

limit: number

The maximum number of items in the response (as set in the query or by default).

URL to the next page of items. ( null if none)

offset: number

The offset of the items returned (as set in the query or by default)

URL to the previous page of items. ( null if none)

total: number

The total number of items available to return.

items: optional array of SimplifiedChapterObject { id, audio_preview_url, chapter_number, 18 more }
id: string

The Spotify ID for the chapter.

Deprecatedaudio_preview_url: string

A URL to a 30 second preview (MP3 format) of the chapter. null if not available.

chapter_number: number

The number of the chapter

description: string

A description of the chapter. HTML tags are stripped away from this field, use html_description field in case HTML tags are needed.

duration_ms: number

The chapter length in milliseconds.

explicit: boolean

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

external_urls: object { published, spotify }

External URLs for this chapter.

published: optional boolean

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

spotify: optional string

The Spotify URL for the object.

href: string

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

html_description: string

A description of the chapter. This field may contain HTML tags.

images: array of ImageObject { height, url, width, published }

The cover art for the chapter in various sizes, widest first.

height: number

The image height in pixels.

url: string

The source URL of the image.

width: number

The image width in pixels.

published: optional boolean

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

is_playable: boolean

True if the chapter is playable in the given market. Otherwise false.

languages: array of string

A list of the languages used in the chapter, identified by their ISO 639-1 code.

name: string

The name of the chapter.

release_date: string

The date the chapter was first released, for example "1981-12-15". Depending on the precision, it might be shown as "1981" or "1981-12".

release_date_precision: "year" or "month" or "day"

The precision with which release_date value is known.

Accepts one of the following:
"year"
"month"
"day"
type: "episode"

The object type.

uri: string

The Spotify URI for the chapter.

available_markets: optional array of string

A list of the countries in which the chapter can be played, identified by their ISO 3166-1 alpha-2 code.

published: optional boolean

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

restrictions: optional object { published, reason }

Included in the response when a content restriction is applied.

published: optional boolean

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

reason: optional string

The reason for the restriction. Supported values:

  • market - The content item is not available in the given market.
  • product - The content item is not available for the user's subscription type.
  • explicit - The content item is explicit and the user's account is set to not play explicit content.
  • payment_required - Payment is required to play the content item.

Additional reasons may be added in the future. Note: If you use this field, make sure that your application safely handles unknown values.

resume_point: optional object { fully_played, published, resume_position_ms }

The user's most recent position in the chapter. Set if the supplied access token is a user token and has the scope 'user-read-playback-position'.

fully_played: optional boolean

Whether or not the episode has been fully played by the user.

published: optional boolean

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

resume_position_ms: optional number

The user's most recent position in the episode in milliseconds.

published: optional boolean

The playlist's public/private status (if it should be added to the user's profile or not): true the playlist will be public, false the playlist will be private, null the playlist status is not relevant. For more about public/private status, see Working with Playlists

Get Audiobook Chapters

spotted audiobooks list-chapters \
  --id 7iHfbu1YPACw6oZPAFJtqe
{
  "href": "https://api.spotify.com/v1/me/shows?offset=0&limit=20\n",
  "limit": 20,
  "next": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
  "offset": 0,
  "previous": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
  "total": 4,
  "items": [
    {
      "id": "5Xt5DXGzch68nYYamXrNxZ",
      "audio_preview_url": "https://p.scdn.co/mp3-preview/2f37da1d4221f40b9d1a98cd191f4d6f1646ad17",
      "chapter_number": 1,
      "description": "We kept on ascending, with occasional periods of quick descent, but in the main always ascending. Suddenly, I became conscious of the fact that the driver was in the act of pulling up the horses in the courtyard of a vast ruined castle, from whose tall black windows came no ray of light, and whose broken battlements showed a jagged line against the moonlit sky.\n",
      "duration_ms": 1686230,
      "explicit": true,
      "external_urls": {
        "published": true,
        "spotify": "spotify"
      },
      "href": "https://api.spotify.com/v1/episodes/5Xt5DXGzch68nYYamXrNxZ",
      "html_description": "<p>We kept on ascending, with occasional periods of quick descent, but in the main always ascending. Suddenly, I became conscious of the fact that the driver was in the act of pulling up the horses in the courtyard of a vast ruined castle, from whose tall black windows came no ray of light, and whose broken battlements showed a jagged line against the moonlit sky.</p>\n",
      "images": [
        {
          "height": 300,
          "url": "https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n",
          "width": 300,
          "published": true
        }
      ],
      "is_playable": true,
      "languages": [
        "fr",
        "en"
      ],
      "name": "Starting Your Own Podcast: Tips, Tricks, and Advice From Anchor Creators\n",
      "release_date": "1981-12-15",
      "release_date_precision": "day",
      "type": "episode",
      "uri": "spotify:episode:0zLhl3WsOCQHbe1BPTiHgr",
      "available_markets": [
        "string"
      ],
      "published": true,
      "restrictions": {
        "published": true,
        "reason": "reason"
      },
      "resume_point": {
        "fully_played": true,
        "published": true,
        "resume_position_ms": 0
      }
    }
  ],
  "published": true
}
Returns Examples
{
  "href": "https://api.spotify.com/v1/me/shows?offset=0&limit=20\n",
  "limit": 20,
  "next": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
  "offset": 0,
  "previous": "https://api.spotify.com/v1/me/shows?offset=1&limit=1",
  "total": 4,
  "items": [
    {
      "id": "5Xt5DXGzch68nYYamXrNxZ",
      "audio_preview_url": "https://p.scdn.co/mp3-preview/2f37da1d4221f40b9d1a98cd191f4d6f1646ad17",
      "chapter_number": 1,
      "description": "We kept on ascending, with occasional periods of quick descent, but in the main always ascending. Suddenly, I became conscious of the fact that the driver was in the act of pulling up the horses in the courtyard of a vast ruined castle, from whose tall black windows came no ray of light, and whose broken battlements showed a jagged line against the moonlit sky.\n",
      "duration_ms": 1686230,
      "explicit": true,
      "external_urls": {
        "published": true,
        "spotify": "spotify"
      },
      "href": "https://api.spotify.com/v1/episodes/5Xt5DXGzch68nYYamXrNxZ",
      "html_description": "<p>We kept on ascending, with occasional periods of quick descent, but in the main always ascending. Suddenly, I became conscious of the fact that the driver was in the act of pulling up the horses in the courtyard of a vast ruined castle, from whose tall black windows came no ray of light, and whose broken battlements showed a jagged line against the moonlit sky.</p>\n",
      "images": [
        {
          "height": 300,
          "url": "https://i.scdn.co/image/ab67616d00001e02ff9ca10b55ce82ae553c8228\n",
          "width": 300,
          "published": true
        }
      ],
      "is_playable": true,
      "languages": [
        "fr",
        "en"
      ],
      "name": "Starting Your Own Podcast: Tips, Tricks, and Advice From Anchor Creators\n",
      "release_date": "1981-12-15",
      "release_date_precision": "day",
      "type": "episode",
      "uri": "spotify:episode:0zLhl3WsOCQHbe1BPTiHgr",
      "available_markets": [
        "string"
      ],
      "published": true,
      "restrictions": {
        "published": true,
        "reason": "reason"
      },
      "resume_point": {
        "fully_played": true,
        "published": true,
        "resume_position_ms": 0
      }
    }
  ],
  "published": true
}