# Deezer API

> Deezer returns album, song, and chart data, available as a workflow and API.

Deezer’s Get album method returns album details and an ordered tracklist from an album name, link, or ID, with an optional artist. List top charts returns ranked worldwide charts or country tracks from a chart type and optional country and result count. Get song details returns recording information from a song title, link, or track ID, with an optional artist to distinguish recordings.

- Page: https://fous.com/workflows/deezer
- Handle: `@deezer`
- Category: [Entertainment](https://fous.com/workflows/category/entertainment)
- Source website: https://deezer.com
- Last verified: Sep 29, 2026
- Fous is not affiliated with Deezer.

## Methods

### Get album

Operation `get_album`, version 1. 1 credit per call.

Look up a Deezer album by name, album link, or ID, optionally matching an artist. Returns album details and the ordered tracklist. Preview links may be unavailable or expire.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `album` | string | yes | `"https://www.deezer.com/album/302127"` | Album name, Deezer album link, or Deezer album ID, for example Random Access Memories. |
| `artist` | string | no | `"Daft Punk"` | Optional artist name to choose the right album, for example Daft Punk. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "album"
  ],
  "properties": {
    "album": {
      "type": "string",
      "description": "Album name, Deezer album link, or Deezer album ID, for example Random Access Memories.",
      "examples": [
        "https://www.deezer.com/album/302127",
        "Random Access Memories",
        "438167857"
      ]
    },
    "artist": {
      "type": "string",
      "default": "",
      "description": "Optional artist name to choose the right album, for example Daft Punk.",
      "examples": [
        "Daft Punk",
        "Pink Floyd"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "album": "https://www.deezer.com/album/302127"
    },
    {
      "album": "Random Access Memories",
      "artist": "Daft Punk"
    },
    {
      "album": "438167857"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `fans` | integer or null | `342346` |  |
| `title` | string | `"Discovery"` |  |
| `artist` | string or null | `"Daft Punk"` |  |
| `genres` | array |  |  |
| `tracks` | array |  |  |
| `tracks[].title` | string | `"One More Time"` |  |
| `tracks[].artist` | string or null | `"Daft Punk"` |  |
| `tracks[].length` | string or null | `"5:20"` |  |
| `tracks[].number` | integer | `1` | Position in the album tracklist. |
| `tracks[].explicit` | string | `"no"` |  |
| `tracks[].track_id` | integer | `3135553` |  |
| `tracks[].deezer_link` | string or null | `"https://www.deezer.com/track/3135553"` |  |
| `tracks[].preview_link` | string or null | `"https://cdnt-preview.dzcdn.net/api/1/1/f/8/c/0/f8c5dc3837912dba37c9a1ab3170cc3f.mp3?hdnea=exp=1790656834~acl=/api/1/1/f` |  |
| `tracks[].length_seconds` | integer or null | `320` |  |
| `album_id` | integer | `302127` |  |
| `explicit` | string | `"no"` |  |
| `deezer_link` | string or null | `"https://www.deezer.com/album/302127"` |  |
| `record_label` | string or null | `"Daft Life Ltd./ADA France"` |  |
| `release_date` | string or null | `"2001-03-07"` |  |
| `total_length` | string or null | `"1 hr 1 min 2 sec"` |  |
| `cover_image_link` | string or null | `"https://cdn-images.dzcdn.net/images/cover/5718f7c81c27e0b2417e2a4c45224f8a/1000x1000-000000-80-0-0.jpg"` |  |
| `number_of_tracks` | integer | `14` |  |
| `total_length_seconds` | integer or null | `3662` |  |

**Example input**

```json
{
  "album": "https://www.deezer.com/album/302127"
}
```

**Example output**

```json
{
  "fans": 342346,
  "title": "Discovery",
  "artist": "Daft Punk",
  "genres": [
    "Electro"
  ],
  "tracks": [
    {
      "title": "One More Time",
      "artist": "Daft Punk",
      "length": "5:20",
      "number": 1,
      "explicit": "no",
      "track_id": 3135553,
      "deezer_link": "https://www.deezer.com/track/3135553",
      "preview_link": "https://cdnt-preview.dzcdn.net/api/1/1/f/8/c/0/f8c5dc3837912dba37c9a1ab3170cc3f.mp3?hdnea=exp=1790656834~acl=/api/1/1/f/8/c/0/f8c5dc3837912dba37c9a1ab3170cc3f.mp3*~data=user_id=0,application_id=42~hma…",
      "length_seconds": 320
    },
    {
      "title": "Aerodynamic",
      "artist": "Daft Punk",
      "length": "3:32",
      "number": 2,
      "explicit": "no",
      "track_id": 3135554,
      "deezer_link": "https://www.deezer.com/track/3135554",
      "preview_link": "https://cdnt-preview.dzcdn.net/api/1/1/6/9/9/0/699d41611cf0280f0a55c8ba4a372c14.mp3?hdnea=exp=1790656834~acl=/api/1/1/6/9/9/0/699d41611cf0280f0a55c8ba4a372c14.mp3*~data=user_id=0,application_id=42~hma…",
      "length_seconds": 212
    },
    {
      "title": "Digital Love",
      "artist": "Daft Punk",
      "length": "5:01",
      "number": 3,
      "explicit": "no",
      "track_id": 3135555,
      "deezer_link": "https://www.deezer.com/track/3135555",
      "preview_link": "https://cdnt-preview.dzcdn.net/api/1/1/1/e/c/0/1ec8ff31f93acc81ebb93a45c191e219.mp3?hdnea=exp=1790656834~acl=/api/1/1/1/e/c/0/1ec8ff31f93acc81ebb93a45c191e219.mp3*~data=user_id=0,application_id=42~hma…",
      "length_seconds": 301
    }
  ],
  "album_id": 302127,
  "explicit": "no",
  "deezer_link": "https://www.deezer.com/album/302127",
  "record_label": "Daft Life Ltd./ADA France",
  "release_date": "2001-03-07",
  "total_length": "1 hr 1 min 2 sec",
  "cover_image_link": "https://cdn-images.dzcdn.net/images/cover/5718f7c81c27e0b2417e2a4c45224f8a/1000x1000-000000-80-0-0.jpg",
  "number_of_tracks": 14,
  "total_length_seconds": 3662
}
```

### Get song details

Operation `get_song_details`, version 1. 1 credit per call.

Get a Deezer song’s tempo, ISRC, loudness gain, and recording details from its title, link, or track ID. An artist helps distinguish recordings; previews and tempo may be unavailable.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `song` | string | yes | `"Uptown Funk"` | Song title, Deezer track link, or track ID, e.g. Uptown Funk or https://www.deezer.com/track/92734438. |
| `artist` | string | no | `"Mark Ronson"` | Artist name to distinguish recordings, e.g. Mark Ronson. Leave blank for the most popular match. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "song"
  ],
  "properties": {
    "song": {
      "type": "string",
      "description": "Song title, Deezer track link, or track ID, e.g. Uptown Funk or https://www.deezer.com/track/92734438.",
      "examples": [
        "Uptown Funk",
        "Blinding Lights",
        "https://www.deezer.com/track/4091937401"
      ]
    },
    "artist": {
      "type": "string",
      "default": "",
      "description": "Artist name to distinguish recordings, e.g. Mark Ronson. Leave blank for the most popular match.",
      "examples": [
        "Mark Ronson"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "song": "Uptown Funk",
      "artist": "Mark Ronson"
    },
    {
      "song": "Blinding Lights"
    },
    {
      "song": "https://www.deezer.com/track/4091937401"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `isrc` | string or null | `"GBARL1401524"` |  |
| `album` | string or null | `"Uptown Special"` |  |
| `title` | string | `"Uptown Funk (feat. Bruno Mars)"` |  |
| `artist` | string | `"Mark Ronson"` |  |
| `length` | string | `"4:30"` | Length in m:ss. |
| `explicit` | string | `"no"` |  |
| `track_id` | integer | `92734438` |  |
| `tempo_bpm` | number or null | `114.8` |  |
| `deezer_link` | string | `"https://www.deezer.com/track/92734438"` |  |
| `preview_link` | string or null | `"https://cdnt-preview.dzcdn.net/api/1/1/b/0/a/0/b0a30d99fddf73c172e0d3f308899dd5.mp3?hdnea=exp=1790657025~acl=/api/1/1/b` |  |
| `release_date` | string or null | `"2015-01-12"` |  |
| `length_seconds` | integer | `270` |  |
| `loudness_gain_db` | number or null | `-11.9` |  |

**Example input**

```json
{
  "song": "Uptown Funk",
  "artist": "Mark Ronson"
}
```

**Example output**

```json
{
  "isrc": "GBARL1401524",
  "album": "Uptown Special",
  "title": "Uptown Funk (feat. Bruno Mars)",
  "artist": "Mark Ronson",
  "length": "4:30",
  "explicit": "no",
  "track_id": 92734438,
  "tempo_bpm": 114.8,
  "deezer_link": "https://www.deezer.com/track/92734438",
  "preview_link": "https://cdnt-preview.dzcdn.net/api/1/1/b/0/a/0/b0a30d99fddf73c172e0d3f308899dd5.mp3?hdnea=exp=1790657025~acl=/api/1/1/b/0/a/0/b0a30d99fddf73c172e0d3f308899dd5.mp3*~data=user_id=0,application_id=42~hma…",
  "release_date": "2015-01-12",
  "length_seconds": 270,
  "loudness_gain_db": -11.9
}
```

### List top charts

Operation `list_top_charts`, version 1. 1 credit per call.

List current worldwide top tracks, albums or artists in chart order, or tracks from Deezer’s official Top country playlist. Country charts cover tracks only.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `chart` | string | no | `"albums"` | Which worldwide chart to list. Example: albums. |
| `country` | string | no | `"worldwide"` | Worldwide or a country name or two-letter code. Example: France or FR. |
| `max_results` | integer | no | `5` | Maximum number of ranked results. Example: 50. |

**Input schema**

```json
{
  "type": "object",
  "properties": {
    "chart": {
      "enum": [
        "tracks",
        "albums",
        "artists"
      ],
      "type": "string",
      "default": "tracks",
      "description": "Which worldwide chart to list. Example: albums.",
      "examples": [
        "albums",
        "tracks",
        "artists"
      ]
    },
    "country": {
      "type": "string",
      "default": "worldwide",
      "description": "Worldwide or a country name or two-letter code. Example: France or FR.",
      "examples": [
        "worldwide",
        "France",
        "US"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 50,
      "maximum": 100,
      "minimum": 1,
      "description": "Maximum number of ranked results. Example: 50.",
      "x-fous-developer": true,
      "examples": [
        5,
        50,
        4
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "chart": "albums",
      "max_results": 5
    },
    {
      "chart": "tracks",
      "country": "worldwide",
      "max_results": 50
    },
    {
      "chart": "artists",
      "max_results": 5
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `charts` | array |  | Current chart items in rank order. |
| `charts[].rank` | integer | `1` | Position in chart order. |
| `charts[].album` | string or null | `"Fille à Papa"` | Album title for tracks. |
| `charts[].title` | string or null | `"Songs to Listen to in a Wendy’s Parking Lot"` | Track title, album title or artist name. |
| `charts[].artist` | string or null | `"Wendy's"` | Artist name. |
| `charts[].length` | string or null | `"2:49"` | Track duration in minutes and seconds (m:ss). |
| `charts[].deezer_id` | string | `"1079908532"` | Deezer item ID. |
| `charts[].image_url` | string or null | `"https://cdn-images.dzcdn.net/images/cover/5d21c8b4f384b124dda8ef133464e89a/500x500-000000-80-0-0.jpg"` | Cover or artist picture image link. |
| `charts[].deezer_link` | string or null | `"https://www.deezer.com/album/1079908532"` | Page link on Deezer. |

**Example input**

```json
{
  "chart": "albums",
  "max_results": 5
}
```

**Example output**

```json
{
  "charts": [
    {
      "rank": 1,
      "title": "Songs to Listen to in a Wendy’s Parking Lot",
      "artist": "Wendy's",
      "deezer_id": "1079908532",
      "image_url": "https://cdn-images.dzcdn.net/images/cover/5d21c8b4f384b124dda8ef133464e89a/500x500-000000-80-0-0.jpg",
      "deezer_link": "https://www.deezer.com/album/1079908532"
    },
    {
      "rank": 2,
      "title": "Ego Death At A Bachelorette Party",
      "artist": "Hayley Williams",
      "deezer_id": "848097372",
      "image_url": "https://cdn-images.dzcdn.net/images/cover/6e947717dede73960b99908b7d5a1eb9/500x500-000000-80-0-0.jpg",
      "deezer_link": "https://www.deezer.com/album/848097372"
    },
    {
      "rank": 3,
      "title": "The Life of a Showgirl: The Encore",
      "artist": "Taylor Swift",
      "deezer_id": "1103662682",
      "image_url": "https://cdn-images.dzcdn.net/images/cover/3b43f946f6478daf5233a41414c34067/500x500-000000-80-0-0.jpg",
      "deezer_link": "https://www.deezer.com/album/1103662682"
    }
  ]
}
```

## Quick start

Call the API with a Fous API key (`FOUS_API_KEY`). To create one, turn on Developer mode in Fous Studio, then open Keys & connections → API keys (https://app.fous.com/keys).

```bash
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
: "${FOUS_API_KEY:?Set FOUS_API_KEY before running this example}"

curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 120 \
  -H "Authorization: Bearer $FOUS_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@deezer",
  "visibility": "public",
  "operation": "get_album",
  "version": 1,
  "input": {
    "album": "https://www.deezer.com/album/302127"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
# First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
import json
import os
import urllib.error
import urllib.request

api_key = os.environ.get("FOUS_API_KEY")
if not api_key:
    raise RuntimeError("Set FOUS_API_KEY before running this example")

body = json.loads("{\n  \"api\": \"@deezer\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_album\",\n  \"version\": 1,\n  \"input\": {\n    \"album\": \"https://www.deezer.com/album/302127\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=120) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
// First set your key: export FOUS_API_KEY='YOUR_FOUS_API_KEY'
const apiKey = process.env.FOUS_API_KEY;
if (!apiKey) throw new Error("Set FOUS_API_KEY before running this example");

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(120_000),
  body: JSON.stringify({
  "api": "@deezer",
  "visibility": "public",
  "operation": "get_album",
  "version": 1,
  "input": {
    "album": "https://www.deezer.com/album/302127"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

Or describe the data in plain language: send `{"api":"@deezer","prompt":"Describe the data you need, with every detail"}` to the same URL. Fous fills in the input, runs the method that fits and returns only the fields you asked for; `data.route.calls[].request` is the exact call it made. Routing is free; the run costs the same.

## Use cases

- Compare ranked tracks across country charts.
- Review album tracklists, release dates, and record labels.
- Find track lengths and explicit-content details for music catalogs.
- Analyze song tempo, ISRC, and loudness gain.
- Track chart ranks, artist names, and album titles.

## FAQ

### Is Fous affiliated with Deezer?

No. Fous is not affiliated with Deezer. This workflow reads the public deezer.com website and returns its data.

### How much does it cost?

Each run costs 1 credit. With pay-as-you-go, a credit costs 1¢; monthly plans cost less per credit.

### Do I need a Deezer account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from deezer.com when you run it; repeating the same request within a day may return the saved result. Fous checks this workflow automatically; it last passed a check on Sep 29, 2026.

### What tracks are on an album?

Use Get album with the album name, link, or ID to retrieve its ordered tracklist.

### Which tracks top a country chart?

Use List top charts with the country and tracks chart selection to retrieve ranked tracks.

### What is a song’s tempo or ISRC?

Use Get song details with the song title, link, or track ID; an artist can help distinguish recordings.

## Related

- [Spotify API](https://fous.com/workflows/spotify.md): Spotify returns public artist profiles, album credits and ordered tracks, song details and play counts, up to 500 playlist songs, keyword results, and country-based podcast charts; dates and regional options vary.
- [Apple Music API](https://fous.com/workflows/apple-music.md): Apple Music returns albums, tracks, artist profiles, latest releases, top music, matching songs, and current charts; prices, previews, and older albums may be unavailable.
- [Shazam API](https://fous.com/workflows/shazam.md): Shazam helps discover music and explore trending songs, returning current top charts and country-specific lists of up to 10 rapidly rising Discovery songs where available.
- [SongBPM API](https://fous.com/workflows/songbpm.md): Song tempo and key information for music listeners, performers and DJs.
- [Kworb API](https://fous.com/workflows/kworb.md): Kworb provides published Spotify and YouTube music charts and tracked artist streaming totals; chart dates may lag, and daily streams or some views may be unavailable.
- [YouTube API](https://fous.com/workflows/youtube.md): YouTube returns public video, caption, comment, channel and upload details, plus the latest weekly Top Songs chart; inferred dates and some counts may be approximate.
- [Bandcamp API](https://fous.com/workflows/bandcamp.md): Bandcamp provides music albums and merchandise from artists and labels, with album details and prices and genre releases ordered by best-selling or new arrivals; availability details appear only when shown.
- [Apple Podcasts API](https://fous.com/workflows/apple-podcasts.md): Apple Podcasts returns chart listings, relevant show search results, show details with newest available episodes, and country-specific ratings and reviews; results are capped, and older or subscription episodes may be unavailable.
- [All Entertainment workflows](https://fous.com/workflows/category/entertainment)
