Last.fm · Schema
Last.fm Track
A track record as returned by Last.fm's track.getInfo, track.search, user.getRecentTracks, and track.getSimilar methods.
MusicAudioScrobblingRecommendationsChartsPublic APIsAudioScrobbler
Properties
| Name | Type | Description |
|---|---|---|
| name | string | Track title. |
| mbid | string | MusicBrainz track identifier. |
| url | string | Canonical Last.fm track URL. |
| duration | string | Track length in milliseconds (stringified integer). |
| streamable | object | |
| artist | object | |
| album | object | |
| listeners | string | |
| playcount | string | |
| userplaycount | string | |
| userloved | string | |
| toptags | object | |
| wiki | object | |
| date | object | |
| @attr | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/lastfm/main/json-schema/lastfm-track-schema.json",
"title": "Last.fm Track",
"description": "A track record as returned by Last.fm's track.getInfo, track.search, user.getRecentTracks, and track.getSimilar methods.",
"type": "object",
"required": ["name"],
"properties": {
"name": { "type": "string", "description": "Track title." },
"mbid": { "type": "string", "description": "MusicBrainz track identifier." },
"url": { "type": "string", "format": "uri", "description": "Canonical Last.fm track URL." },
"duration": { "type": "string", "description": "Track length in milliseconds (stringified integer)." },
"streamable": { "type": "object" },
"artist": {
"oneOf": [
{ "type": "string" },
{ "$ref": "lastfm-artist-schema.json" }
]
},
"album": {
"type": "object",
"properties": {
"artist": { "type": "string" },
"title": { "type": "string" },
"mbid": { "type": "string" },
"url": { "type": "string", "format": "uri" }
}
},
"listeners": { "type": "string" },
"playcount": { "type": "string" },
"userplaycount": { "type": "string" },
"userloved": { "type": "string", "enum": ["0", "1"] },
"toptags": {
"type": "object",
"properties": {
"tag": {
"type": "array",
"items": { "$ref": "lastfm-tag-schema.json" }
}
}
},
"wiki": {
"type": "object",
"properties": {
"published": { "type": "string" },
"summary": { "type": "string" },
"content": { "type": "string" }
}
},
"date": {
"type": "object",
"properties": {
"uts": { "type": "string", "description": "Unix timestamp string." },
"#text": { "type": "string", "description": "Human-readable date." }
}
},
"@attr": {
"type": "object",
"properties": {
"nowplaying": { "type": "string", "description": "'true' if this is the currently-playing track." }
}
}
}
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/lastfm-track"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.