---
title: "Spotify Artist API"
method: GET
path: "/v1/spotify/artist"
tags: ["Spotify"]
---

# Spotify Artist API

`GET /v1/spotify/artist`

## Request

- Base URL: `https://api.captapi.com`
- URL: `https://api.captapi.com/v1/spotify/artist`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-API-Key`

Spotify artist — followers, monthlyListeners, worldRank, topCities, topTracks with playCount, concerts, and related artists (1 credit).

Pass a Spotify artist URL, URI, or ID and get a clean profile: name (track/artist title — not a profile displayName alias), description, image, followers, monthlyListeners, worldRank, topCities[{city,country,region,listeners}], externalLinks[], verified, topTracks[] (with playCount), concerts[], relatedArtists[], and albums[]/singles[] samples plus albumsCount/singlesCount and albumsHasMore/singlesHasMore. Flat 1 credit. monthlyListeners, topCities, and worldRank are not on Spotify's public Web API. The overview GraphQL only embeds a short discography sample — when HasMore is true, chain release URIs into /spotify/album. Pass raw=true only if you need the full upstream GraphQL payload (omitted by default — it is ~80% of the old response).

Docs: https://captapi.com/apis/spotify-artist

## Query parameters

- `url` string, required
- `raw` boolean
- `cache` boolean

## Response `200`

Success. The data object for this endpoint.

- object
  - `success` unknown, required
  - `data` object, required
    - `platform` string: Always "spotify" on this endpoint.
    - `type` string: Content type of the item.
    - `uri` string: Platform URI for the item.
    - `url` string: Canonical URL of the item.
    - `name` string: Artist display name on Spotify. Not a deprecated displayName alias.
    - `description` string: Description text.
    - `followers` integer: Follower count.
    - `monthlyListeners` integer: Monthly listener count.
    - `image` string: Image URL.
    - `worldRank` integer: Artist global rank by monthly listeners (web-player GraphQL; not on Spotify's public Web API).
    - `topCities` object[]
      - `city` string: City. Example: "London".
      - `country` string: ISO country for a topCities listener city (e.g. US). Not a popular-creators feed market.
      - `region` string: ISO region/country for a topCities row (listener geography), not a request market.
      - `listeners` integer: Listener count for a city in topCities.
    - `externalLinks` object[]
      - `name` string: Network label (FACEBOOK, INSTAGRAM, TWITTER, …) — not the artist display name.
      - `url` string: Canonical URL of the item.
    - `verified` boolean: Whether the account is verified on this platform.
    - `topTracks` object[]
      - `name` string: Track title.
      - `uri` string: Platform URI for the item.
      - `url` string: Canonical URL of the item.
      - `playCount` integer: Lifetime stream count for a topTracks[] row.
      - `durationMs` integer: Length in milliseconds.
      - `albumUri` string: Spotify album URI for a track.
      - `image` string: Image URL.
      - `explicit` boolean: Convenience boolean: true only when contentRating is EXPLICIT (or EXPLICIT is among contentRatingLabels).
    - `concerts` unknown[]: Upcoming concerts with city, venue, and start time when Spotify exposes them.
      - unknown
    - `relatedArtists` object[]
      - `name` string: Related artist display name.
      - `uri` string: Platform URI for the item.
      - `url` string: Canonical URL of the item.
      - `image` string: Image URL.
    - `albums` object[]
      - `name` string: Release title.
      - `uri` string: Platform URI for the item.
      - `url` string: Canonical URL of the item.
      - `image` string: Image URL.
      - `releaseYear` integer: Year of release.
      - `totalTracks` integer: Number of tracks.
    - `singles` object[]
      - `name` string: Release title.
      - `uri` string: Platform URI for the item.
      - `url` string: Canonical URL of the item.
      - `image` string: Image URL.
      - `releaseYear` integer: Year of release.
      - `totalTracks` integer: Number of tracks.
    - `albumsCount` integer: Total album count for the artist.
    - `singlesCount` integer: Total singles/EP count for the artist.
    - `albumsHasMore` boolean: True when albumsCount > len(albums[]) — overview sample is incomplete; chain into /spotify/album.
    - `singlesHasMore` boolean: True when singlesCount > len(singles[]) — overview sample is incomplete; chain into /spotify/album.
    - `id` string: Stable platform ID for the item.

## Other responses

- `400`: Bad request: wrong platform URL, unknown endpoint, or an invalid parameter value. Not billed.
- `401`: Missing, invalid or revoked API key. Not billed.
- `402`: Not enough credits for this request. Not billed.
- `404`: The resource does not exist or is not public. Not billed.
- `422`: A required parameter is missing or has the wrong type. Not billed.
- `429`: Rate limit reached. Wait for Retry-After seconds. Not billed.
- `502`: The platform could not be reached or returned nothing usable. Retryable, not billed. 503 and 504 use the same envelope.

---

[API](https://skmtc.dev/captapi/apis/captapi-api.md) · [All operations](https://skmtc.dev/captapi/apis/captapi-api/llms.txt) · [OpenAPI document](https://skmtc.dev/captapi/apis/captapi-api/revisions/c9b9ac5ff1bd?raw)
