## spotify/playlist

`GET /v1/spotify/playlist`

A public playlist with its owner, follower count and a page of tracks with play counts.

*Spotify playlist*

| Parameter | Required | Description |
| --- | --- | --- |
| `id` | yes | Playlist id (or pass url) — e.g. `37i9dQZF1DXcBWIGoYBM5M` |
| `url` | no | Playlist URL, instead of id — e.g. `https://open.spotify.com/playlist/37i9dQZF1DXcBWIGoYBM5M` |
| `cursor` | no | Opaque cursor from the previous page of tracks |
| `dry_run` | no | Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. — e.g. `1` |

**Cost:** 4 credits at list price per successful uncached response; variable-cost operations may quote or settle a different charge. Confirmed uncharged or refunded failures report zero. Pending reconciliation can report credits_used:null; retain request_id and the original idempotency key.

```bash
curl "https://www.monocrawl.com/v1/spotify/playlist?id=37i9dQZF1DXcBWIGoYBM5M" \
  -H "x-api-key: mn_your_key_here"
```

### Response data

Illustrative abbreviated data; documented core fields are optional and may be null. Additional source fields are allowed.

```json
{
  "count": 0,
  "description": "example",
  "dropped": 0,
  "followers": 0,
  "id": "example",
  "image_url": "https://example.com/example",
  "items": [
    {
      "album": "example",
      "artists": [
        {}
      ],
      "duration_ms": 0,
      "id": "example",
      "play_count": 0,
      "title": "example",
      "uri": "example",
      "url": "https://example.com/example"
    }
  ],
  "kind": "example",
  "name": "example",
  "owner": {
    "id": "example",
    "name": "example",
    "url": "https://example.com/example"
  },
  "total_tracks": 0,
  "uri": "example",
  "url": "https://example.com/example"
}
```

[Field reference](https://www.monocrawl.com/docs/endpoints/spotify/playlist#response) · [JSON Schema for response.data](https://www.monocrawl.com/schemas/spotify/playlist.json)
