Spotify API

Spotify Play count API

Fetch stream counts and stats for a Spotify track, album, or artist URL.

$3.30/1k req, pay per request, no subscription.

What the API returneditems[0]
{
"id": "0cRj4pQqXVpB2pTwR3pN1n",
"name": "Coastline",
"type": "track",
"url": "https://open.spotify.com/track/0cRj4pQqXVpB2pTwR3pN1n",
"playCount": 42918203,
"durationMs": 227000,
"albumName": "Coastline",
"artistName": "Marlowe Finch",
... 4 more fields
}
Uptime
100.00%
30d · 4 calls
Requests
4
30d · weekly, last 12 wks
Response
4.3s
median · 30d

Pricing

Spotify Play count API pricing

You pay
$33.00
$3.30/1k req, only for what you use. No monthly plan.
Your first 30 requests are free with the $0.10 starting balance.

Try it

Get Spotify play count in one request

Open in
Get a free key
Sample response
Free runs return only the first 3 results. Fund a key to get the full response.

This sample shows 15 of 16 fields. See every field

{
  "found": true,
  "data": {
    "items": [
      {
        "id": "0cRj4pQqXVpB2pTwR3pN1n",
        "name": "Coastline",
        "type": "track",
        "url": "https://open.spotify.com/track/0cRj4pQqXVpB2pTwR3pN1n",
        "playCount": 42918203,
        "durationMs": 227000,
        "albumName": "Coastline",
        "artistName": "Marlowe Finch",
        "image": "https://i.scdn.co/image/ab67616d0000b273b2c3d4e5f60718293a4b5c6",
        "releaseDate": "2022-08-19",
        "trackNumber": 1,
        "previewUrl": "https://p.scdn.co/mp3-preview/0cRj4pQqXVpB2pTwR3pN1n"
      },
      {
        "id": "9dTk5qR0vW4rY1tE9cLmJZ",
        "name": "Amber Light",
        "type": "track",
        "url": "https://open.spotify.com/track/9dTk5qR0vW4rY1tE9cLmJZ",
        "playCount": 31204558,
        "durationMs": 203000,
        "albumName": "Paper Weather",
        "artistName": "Marlowe Finch",
        "image": "https://i.scdn.co/image/ab67616d0000b273c3d4e5f60718293a4b5c6d7",
        "releaseDate": "2023-02-03",
        "trackNumber": 4,
        "previewUrl": "https://p.scdn.co/mp3-preview/9dTk5qR0vW4rY1tE9cLmJZ"
      },
      {
        "id": "2eUl6rS1wX5sZ2uF0dMnKA",
        "name": "Slow Static",
        "type": "track",
        "url": "https://open.spotify.com/track/2eUl6rS1wX5sZ2uF0dMnKA",
        "playCount": 12045901,
        "durationMs": 189000,
        "albumName": "Slow Static - Single",
        "artistName": "Marlowe Finch",
        "image": "https://i.scdn.co/image/ab67616d0000b273d4e5f60718293a4b5c6d7e8",
        "releaseDate": "2024-11-08",
        "trackNumber": 1,
        "previewUrl": "https://p.scdn.co/mp3-preview/2eUl6rS1wX5sZ2uF0dMnKA"
      }
    ]
  }
}

Full parameter and response reference - every field, type, and example for this endpoint.

Reference

One request, one response shape.

Every field you send and every field you get back, each with a real example.

Last verified 2026-10-31 · uptime and latency measured over 30d

Request body

JSON, posted to this endpoint.

  • urlstring

    https://open.spotify.com/track/3fVm8qS0vW4rY1tE9cLmJa

    Spotify track, album, or artist URL to fetch stream counts for (e.g. https://open.spotify.com/track/3n3Ppam7vgaVa1iaRUc9Lp).

You send. A small JSON body. The values shown are examples to replace with your own.

Response

JSON, one example value per field.

each itemdata.items[]

Play-count records for the requested Spotify entity (one per track). Populated whenever the provider has data for the entity.

  • albumNamestring

    Coastline

    Name of the album the track belongs to. Empty when the upstream omits it.

  • artistNamestring

    Marlowe Finch

    Name of the primary artist. Empty when the upstream omits it.

  • durationMsinteger

    227000

    Track duration in milliseconds.

  • idstring

    0cRj4pQqXVpB2pTwR3pN1n

    The Spotify entity ID. Populated whenever the provider has data for the entity.

  • imagestring

    https://i.scdn.co/image/ab67616d0000b273b2c3d4e5f60718293a4b5c6

    URL of the cover art image.

  • namestring

    Coastline

    The track (or entity) name. Populated whenever the provider has data for the entity.

  • playCountinteger

    42918203

    Total number of streams/plays for the track. Populated whenever the provider has data for the entity.

  • previewUrlstring

    https://p.scdn.co/mp3-preview/0cRj4pQqXVpB2pTwR3pN1n

    URL of the 30-second audio preview.

  • releaseDatestring

    2022-08-19

    Release date as an ISO 8601 string.

  • trackNumberinteger

    1

    Position of the track within its album.

  • typestring

    track

    The Spotify entity type (e.g. "track").

  • urlstring

    https://open.spotify.com/track/0cRj4pQqXVpB2pTwR3pN1n

    Canonical open.spotify.com URL for the entity, with tracking query params stripped. Populated whenever the provider has data for the entity.

top level
  • foundboolean

    true

    Whether the track/album/artist was found and returned play-count records.

  • reason"not_found"

    Present only when `found` is false, and says why there is no result. `not_found`: the source states the target does not exist, or returned nothing for it. A `found: false` answer is a successful call, not an error, and `costUsd` is what it actually cost.

You get back. Named, typed fields in the same shape whichever source answers.

FAQ

About the Spotify Play count API

The AnyAPI Spotify Play count API returns Spotify play count data as normalized JSON from one POST call to /v1/run/spotify.play_count. Fetch stream counts and stats for a Spotify track, album, or artist URL. AnyAPI returns one normalized schema whichever source serves it. It costs from $3.30 per 1,000 requests, in US dollars with no subscription and no monthly minimum. Over the last 30 days, 100.0% of Spotify play count calls through AnyAPI succeeded, with a median response time of 4.3 seconds across 4 measured calls.

It costs from $3.30 per 1,000 requests, in US dollars with no subscription and no monthly minimum. You fund one USD wallet and each call draws it down. Some failed wallet-funded requests incur processing charges that we pass through at cost, with no markup; the error response shows the amount charged.

Fetch stream counts and stats for a Spotify track, album, or artist URL. The response is normalized JSON with the same envelope every AnyAPI endpoint returns, so parsing a second endpoint is a change of URL and nothing else.

Over the last 30 days, 100.0% of Spotify play count calls through AnyAPI succeeded, with a median response time of 4.3 seconds across 4 measured calls. These are AnyAPI's own measurements of traffic through the gateway, recomputed continuously, not a published service-level target.

Yes. A new AnyAPI account starts with $0.10 of free balance and no card required, which covers 30 Spotify Play count calls at $0.0033 each.

Send a POST request to https://api.getanyapi.com/v1/run/spotify.play_count with your AnyAPI key in an "Authorization: Bearer" header and the input as a JSON body. The same key and the same wallet work on every AnyAPI endpoint.

No. You add US dollars to one prepaid AnyAPI balance and each request draws it down. There is no monthly plan and no minimum, and the same balance pays for every AnyAPI endpoint.

Yes. Install @getanyapi/sdk from npm for TypeScript or getanyapi from pip for Python. Both call every AnyAPI endpoint with the same key, and any HTTP client works too.

Yes. An agent can connect to the AnyAPI MCP server at https://api.getanyapi.com/mcp, or create its own free-trial key with one unauthenticated POST to https://api.getanyapi.com/agent/signup and call this endpoint over HTTP.