The Albums API lets you work with individual album records in your Crate library. Albums are created automatically when you watch an artist or watch a standalone album via the browse/watch flow. Every album carries a status —Documentation Index
Fetch the complete documentation index at: https://mintlify.com/TheOutdoorProgrammer/crate/llms.txt
Use this file to discover all available pages before exploring further.
watched, owned, or ignored — and a nested list of tracks. Use these endpoints to inspect content, trigger downloads, suppress unwanted releases, and clean up the library.
The Album Object
Crate’s internal auto-increment album ID. Use this for all
/api/albums/{id} calls.Internal ID of the parent artist.
Album title as recorded by the provider.
Release year. Omitted from JSON when unknown.
The provider this album is linked to (e.g.
deezer, musicbrainz, local).Provider-specific album ID.
Album artwork URL from the provider. Omitted when
null.Release type as reported by the provider (e.g.
album, single, ep).One of
watched (tracks queued for download), owned (all tracks on disk), or ignored (excluded from download queuing).RFC 3339 timestamp when this album was added to the library.
RFC 3339 timestamp of the most recent change.
Denormalized artist name for display. Omitted in list contexts.
Populated by
GET /api/albums/{id}. See the Track Object below.The Track Object
Crate’s internal track ID.
Internal ID of the parent album.
Track title.
Position within the disc.
Disc number (1 for single-disc releases).
Track duration in milliseconds.
Provider this track is linked to.
Provider-specific track ID.
One of
wanted (not yet downloaded), downloading (active transfer), owned (file on disk), or ignored (excluded from download queuing).Relative path within the library directory, e.g.
Radiohead/OK Computer (1997)/01 - Airbag.flac. Present only when status is owned.Soulseek username the file was downloaded from. Omitted when
null.File format as detected at download time (e.g.
flac, mp3).Bitrate in kbps as detected at download time.
RFC 3339 creation timestamp.
RFC 3339 last-modified timestamp.
GET /api/albums/
Returns a single album by Crate’s internal ID with the completetracks[] array nested.
Path Parameters
Crate’s internal album ID. Obtain from
GET /api/artists/{id} or from a watch/browse response.POST /api/albums//queue
Enqueues allwanted tracks in this album for download. Tracks with status owned, downloading, or ignored are not touched. Returns the count of newly created queue entries.
Path Parameters
Crate’s internal album ID.
POST /api/albums//link
Merges alocal-provider album into another album by the same artist that is already linked to a real provider. This is used after importing local files: when automatic reconciliation cannot match a local album, you can manually point it at the correct provider album. Each owned local track is matched to a wanted provider track by title (disc/track number as a tiebreak); tracks with no provider match are moved over as-is; the now-empty local album record is deleted.
Path Parameters
Crate’s internal album ID of the local album to merge away.
The Crate internal album ID of the target (provider-linked) album to merge into. Must be another album by the same artist and must not be a
local-provider album.Always
"linked" on success.The Crate internal album ID of the target album that the local album was merged into.
PUT /api/albums//ignore
Marks the album asignored. All tracks currently in wanted status are cascaded to ignored as well. Tracks that are already owned or downloading are not changed, preserving files already on disk. Useful for suppressing live albums, compilations, or re-releases you don’t want in your library.
Path Parameters
Crate’s internal album ID.
DELETE /api/albums//ignore
Removes the ignored status from an album, restoring it towatched. All tracks that were previously cascaded to ignored by this album’s ignore action are restored to wanted. Tracks that are owned or downloading are untouched.
Path Parameters
Crate’s internal album ID.
After unignoring, you’ll typically want to call
POST /api/albums/{id}/queue to immediately enqueue the restored wanted tracks.DELETE /api/albums/
Removes an album and all its tracks from the library. The deletion cascades to all track records. Files on disk are not removed. The parent artist record is preserved even if this was the last album — delete the artist separately if needed. Path ParametersCrate’s internal album ID.
POST /api/relink/album/
Reassigns an album to a different provider ID, using the configured primary provider. If the album has locally-imported tracks, a background reconciliation is triggered to match them to the provider’s track list, preserving owned file paths and marking gaps aswanted.
Path Parameters
Crate’s internal album ID.
The new provider-specific album ID. The active primary provider is used automatically.
Always
"relinked" on success.true when a background track reconciliation was triggered because the album contains local tracks. false for a plain provider re-stamp with no local tracks to reconcile.