Discover/Discogs API
live

Discogs APIapi.discogs.com

Access the Discogs music database via 4 endpoints. Search releases, browse artist and label discographies, and retrieve tracklists, formats, and community ratings.

This API takes change requests — .
Endpoint health
monitored
get_artist_releases
get_label_releases
get_release
search_releases
Checks pendingself-healing
Endpoints
4
Updated
2h ago

What is the Discogs API?

The Discogs API provides 4 endpoints for querying the Discogs music database, covering release search, full release detail, and discography browsing by artist or label. The get_release endpoint returns up to 15 distinct fields per record including tracklist, formats, genres, styles, community ratings, and country of release. Use search_releases with optional filters like artist, label, year, and format to narrow results across millions of catalog entries.

This call costs1 credit / call— charged only on success
Try it
Page number for pagination.
Numeric Discogs label ID.
Number of results per page (max 100).
api.parse.bot/scraper/66d30424-5b44-49df-b25b-cc13430f47a3/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/66d30424-5b44-49df-b25b-cc13430f47a3/get_label_releases?page=1&label_id=1&per_page=25' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace api-discogs-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.


"""Walkthrough: Discogs SDK — bounded, re-runnable; every call capped."""
from parse_apis.api_discogs_com_api import Discogs, NotFound

client = Discogs()

# Search for releases by artist and album name
for result in client.releases.search(query="Nevermind", artist="Nirvana", limit=3):
    print(result.title, result.year, result.country)

# Drill into the first search result for full details
hit = client.releases.search(query="Nevermind", artist="Nirvana", limit=1).first()
try:
    full = hit.details()
    print(full.title, full.year, full.genres)
    for track in full.tracklist:
        print(track.position, track.title, track.duration)
except NotFound:
    print("release gone")

# Browse a label's catalog
label = client.label(id="1")
for rel in label.releases(limit=3):
    print(rel.title, rel.artist, rel.catalog_number)

# Browse an artist's discography
artist = client.artist(id="1")
for rel in artist.releases(limit=3):
    print(rel.title, rel.role, rel.year)

print("exercised: releases.search / ReleaseSummary.details / label.releases / artist.releases")
All endpoints · 4 totalmissing one? ·

Retrieve paginated releases for a specific record label. Each release includes title, artist, year, format, catalog number, and thumbnail. Results are auto-iterated across pages.

Input
ParamTypeDescription
pageintegerPage number for pagination.
label_idrequiredstringNumeric Discogs label ID.
per_pageintegerNumber of results per page (max 100).
Response
{
  "type": "object",
  "fields": {
    "releases": "array of label releases with id, title, artist, year, format, catalog_number, thumbnail",
    "pagination": "pagination metadata with page, pages, per_page, items"
  },
  "sample": {
    "data": {
      "releases": [
        {
          "id": 1018,
          "year": 1998,
          "title": "Electro Boogie Vol 2 (The Throwdown)",
          "artist": "Dave Clarke",
          "format": "CD, Comp, Mixed",
          "thumbnail": "https://i.discogs.com/example.jpeg",
          "catalog_number": "!K7067cd"
        }
      ],
      "pagination": {
        "page": 1,
        "items": 592,
        "pages": 198,
        "per_page": 3
      }
    },
    "status": "success"
  }
}

About the Discogs API

Endpoints and What They Return

Four endpoints cover the main data shapes in the Discogs catalog. search_releases accepts up to six filter parameters — query, artist, label, year, format, and per_page — and returns paginated results including id, title, country, genre, style, catalog_number, and image URLs. get_release takes a single release_id and returns the full record: artists, labels, formats, genres, styles, tracklist, notes, year, and country.

Discography Browsing

get_artist_releases and get_label_releases both return paginated arrays with per-entry fields like title, year, format, label, and role (for artists) or catalog_number and thumbnail (for labels). Both endpoints accept page and per_page (max 100 per page) and include a pagination object with page, pages, per_page, and items counts, making it straightforward to walk an entire discography programmatically.

Identifiers and Filtering

Discogs uses numeric IDs throughout: artist_id, label_id, and release_id are all required inputs for their respective detail endpoints. Search results return the id field you need to then call get_release for full detail. The format filter on search_releases accepts string values like Vinyl, CD, or Cassette. Year filtering is string-typed and matches a single year value rather than a range.

Reliability & maintenance

The Discogs API is a managed, monitored endpoint for api.discogs.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when api.discogs.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official api.discogs.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a record collection tracker using get_release to pull tracklists, formats, and catalog numbers.
  • Aggregate a label's full catalog by paginating get_label_releases with a known label_id.
  • Filter vinyl-only releases from a specific year using format and year params on search_releases.
  • Compile an artist's full discography including roles (album, single, compilation) via get_artist_releases.
  • Display community ratings and genre/style tags on a music discovery app using get_release response fields.
  • Cross-reference catalog numbers from search_releases results against an internal inventory system.
  • Enrich a music database with country of release, label IDs, and format descriptions from get_release.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Discogs have an official developer API?+
Yes. Discogs maintains an official public REST API documented at https://www.discogs.com/developers. It requires OAuth or a personal access token for authenticated requests and enforces its own rate limits.
What does `get_release` return beyond basic metadata?+
get_release returns tracklist (track-by-track listing), formats (format name, quantity, descriptions, and text), labels with catalog_number, artists with role, genres, styles, notes, year, and country. It is the most field-dense endpoint in this API.
Can I filter `search_releases` by a year range instead of a single year?+
Not currently. The year parameter accepts a single year string, so range-based filtering (e.g. 1985–1990) is not supported. You can fork this API on Parse and revise it to add range handling or multi-year iteration.
Does the API return marketplace pricing or sale listings?+
No marketplace or pricing data is exposed. The four endpoints cover catalog metadata — tracklists, formats, discographies, and community ratings. You can fork this API on Parse and revise it to add a marketplace listings endpoint if that data is needed.
How does pagination work across endpoints?+
All list-returning endpoints (search_releases, get_label_releases, get_artist_releases) include a pagination object with page, pages, per_page, and items fields. The per_page parameter caps at 100. To retrieve a full discography or full search result set, iterate requests incrementing page until page equals pages.
Page content last updated . Spec covers 4 endpoints from api.discogs.com.
Related APIs in MusicSee all →
discogs.com API
Search and browse vinyl record listings on the Discogs Marketplace. Retrieve paginated results filterable by format, style, shipping origin, and more, and fetch detailed information on individual listings including pricing, condition, seller details, and shipping options.
spotify.com API
Search millions of songs and artists in Spotify's catalog, then dive deep into any artist's complete discography, top tracks, fan statistics, and similar artists they're connected to. Perfect for discovering new music, researching artist backgrounds, or building personalized music recommendations.
musicbrainz.org API
Search MusicBrainz for artists and recordings, then fetch detailed metadata for artists, recordings, releases, and release groups, including credits, tags/genres, and track listings.
allmusic.com API
Search for music, browse artist biographies and discographies, and retrieve detailed album and song information all in one place. Discover new releases and access comprehensive metadata about artists and tracks.
albumoftheyear.org API
Search for music albums and discover their release dates, genres, and record labels, while browsing the best-rated and newest releases from across the music industry. Find detailed information about any album to stay updated on new music and make informed decisions about what to listen to next.
music.amazon.com API
Search and browse the full Amazon Music catalog to discover artists, albums, and tracks that match your interests. Find upcoming releases and get detailed information about your favorite musicians and their discographies.
rateyourmusic.com API
Search for albums, artists, and genres to retrieve detailed information including release dates, ratings, and chart rankings from Rate Your Music. Browse music charts and explore genre-specific data to discover trends across the catalog.
beatport.com API
Search and discover electronic music tracks, releases, and artists on Beatport while accessing detailed metadata, audio previews, genre listings, and top 10 charts. Get comprehensive information about specific tracks, releases, artists, and labels to power music discovery and curation applications.