openapi: 3.0.3
info:
title: Last.fm Web Services API (2.0)
version: '2.0'
description: |
The Last.fm (AudioScrobbler) Web Services 2.0 API provides programmatic access to
music metadata, charts, geo-listening data, tags, user listening history, and
scrobbling. The API is method-dispatched: every request targets the single endpoint
`https://ws.audioscrobbler.com/2.0/` and identifies the operation via the `method`
query/body parameter (e.g. `method=track.getInfo`).
Read methods accept `GET`; write methods (scrobbling, tagging, love/unlove, session
management) require `POST` with an authenticated session key and a signed
`api_sig` parameter (MD5 of sorted params + shared secret).
Responses default to XML; pass `format=json` for JSON.
termsOfService: https://www.last.fm/api/tos
contact:
name: Last.fm API Support
url: https://www.last.fm/api
email: [email protected]
license:
name: Last.fm API Terms of Service
url: https://www.last.fm/api/tos
servers:
- url: https://ws.audioscrobbler.com/2.0
description: Production AudioScrobbler endpoint
- url: http://ws.audioscrobbler.com/2.0
description: Non-TLS endpoint (legacy)
tags:
- name: Album
description: Album metadata, tagging, and search.
- name: Artist
description: Artist metadata, similarity, tagging, top albums/tracks, and search.
- name: Auth
description: Token, session, and mobile session acquisition for authenticated calls.
- name: Chart
description: Global top artists, tags, and tracks.
- name: Geo
description: Country-level top artists and tracks.
- name: Library
description: A user's scrobbled artist library.
- name: Tag
description: Tag metadata, similar tags, top albums/artists/tracks, and chart history.
- name: Track
description: Track metadata, scrobbling, love/unlove, tagging, search.
- name: User
description: User profile, friends, listening history, top entities, and weekly charts.
security:
- ApiKeyAuth: []
- SignedAuth: []
paths:
/:
get:
operationId: invokeReadMethod
summary: Invoke A Read Method
description: |
Single read-side dispatch endpoint. The `method` parameter selects the
operation (e.g. `album.getInfo`, `artist.getTopTracks`, `chart.getTopArtists`).
Use `format=json` for JSON responses.
tags: [Album, Artist, Chart, Geo, Library, Tag, Track, User]
parameters:
- $ref: '#/components/parameters/MethodParam'
- $ref: '#/components/parameters/ApiKeyParam'
- $ref: '#/components/parameters/FormatParam'
- $ref: '#/components/parameters/CallbackParam'
- name: artist
in: query
schema: { type: string }
description: Artist name (used by album.*, artist.*, track.* read methods).
- name: album
in: query
schema: { type: string }
description: Album name (used by album.* methods).
- name: track
in: query
schema: { type: string }
description: Track name (used by track.* methods).
- name: mbid
in: query
schema: { type: string }
description: MusicBrainz identifier; takes precedence over artist/album/track names.
- name: user
in: query
schema: { type: string }
description: Last.fm username (used by user.* methods).
- name: tag
in: query
schema: { type: string }
description: Tag name (used by tag.* methods).
- name: country
in: query
schema: { type: string }
description: ISO 3166-1 country name (used by geo.* methods).
- name: limit
in: query
schema: { type: integer, default: 50, maximum: 1000 }
description: Max items per page.
- name: page
in: query
schema: { type: integer, default: 1 }
description: Page number for paginated results.
- name: period
in: query
schema:
type: string
enum: [overall, 7day, 1month, 3month, 6month, 12month]
description: Aggregation window for user.getTop* methods.
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1], default: 0 }
description: Auto-correct misspelled artist/track names when set to 1.
- name: username
in: query
schema: { type: string }
description: Username context for personalized fields (playcount, userplaycount).
responses:
'200':
description: Successful response in XML (default) or JSON (`format=json`).
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/AlbumInfoResponse'
- $ref: '#/components/schemas/ArtistInfoResponse'
- $ref: '#/components/schemas/TrackInfoResponse'
- $ref: '#/components/schemas/TagInfoResponse'
- $ref: '#/components/schemas/UserInfoResponse'
- $ref: '#/components/schemas/ChartResponse'
- $ref: '#/components/schemas/GeoResponse'
- $ref: '#/components/schemas/SearchResponse'
application/xml:
schema:
type: string
description: XML payload wrapped in `<lfm status="ok">…</lfm>`.
'400':
$ref: '#/components/responses/ErrorResponse'
'403':
$ref: '#/components/responses/ErrorResponse'
'429':
$ref: '#/components/responses/ErrorResponse'
post:
operationId: invokeWriteMethod
summary: Invoke A Write Method
description: |
Single write-side dispatch endpoint. Used for authenticated write actions:
`track.scrobble`, `track.updateNowPlaying`, `track.love`, `track.unlove`,
`album.addTags`, `album.removeTag`, `artist.addTags`, `artist.removeTag`,
`track.addTags`, `track.removeTag`. POST body parameters are
`application/x-www-form-urlencoded` UTF-8 encoded and must include
`api_key`, `sk` (session key), and `api_sig`.
tags: [Album, Artist, Track, Auth]
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/WriteRequestBody'
responses:
'200':
description: Successful write response with status wrapper.
content:
application/json:
schema: { $ref: '#/components/schemas/WriteResponse' }
'400':
$ref: '#/components/responses/ErrorResponse'
'403':
$ref: '#/components/responses/ErrorResponse'
'429':
$ref: '#/components/responses/ErrorResponse'
# --- Convenience method-as-path operations (logical alias of the dispatch endpoint) ---
# ALBUM
/?method=album.addTags:
post:
operationId: albumAddTags
summary: Add Album Tags
tags: [Album]
description: Tag an album using a list of user supplied tags. Requires authentication.
requestBody: { $ref: '#/components/requestBodies/AlbumTagWrite' }
responses:
'200': { description: OK, content: { application/json: { schema: { $ref: '#/components/schemas/WriteResponse' } } } }
/?method=album.getInfo:
get:
operationId: albumGetInfo
summary: Get Album Info
tags: [Album]
description: Get the metadata and tracklist for an album on Last.fm using the album name or a musicbrainz id.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: album
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: lang
in: query
schema: { type: string, example: en }
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1] }
- name: username
in: query
schema: { type: string }
responses:
'200':
description: Album info envelope.
content:
application/json:
schema: { $ref: '#/components/schemas/AlbumInfoResponse' }
/?method=album.getTags:
get:
operationId: albumGetTags
summary: Get Album Tags
tags: [Album]
description: Get the tags applied by an individual user to an album on Last.fm.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: album
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: user
in: query
required: true
schema: { type: string }
responses:
'200':
description: User tags applied to the album.
content:
application/json:
schema: { $ref: '#/components/schemas/TagListResponse' }
/?method=album.getTopTags:
get:
operationId: albumGetTopTags
summary: Get Top Album Tags
tags: [Album]
description: Get the top tags for an album on Last.fm, ordered by popularity.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: album
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1] }
responses:
'200':
description: Top tags for the album.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTagsResponse' }
/?method=album.removeTag:
post:
operationId: albumRemoveTag
summary: Remove Album Tag
tags: [Album]
description: Remove a user's tag from an album.
requestBody: { $ref: '#/components/requestBodies/AlbumTagWrite' }
responses:
'200': { description: OK, content: { application/json: { schema: { $ref: '#/components/schemas/WriteResponse' } } } }
/?method=album.search:
get:
operationId: albumSearch
summary: Search Albums
tags: [Album]
description: Search for an album by name. Returns album matches sorted by relevance.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: album
in: query
required: true
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 30 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Search results for albums.
content:
application/json:
schema: { $ref: '#/components/schemas/SearchResponse' }
# ARTIST
/?method=artist.addTags:
post:
operationId: artistAddTags
summary: Add Artist Tags
tags: [Artist]
description: Tag an artist with one or more user supplied tags.
requestBody: { $ref: '#/components/requestBodies/ArtistTagWrite' }
responses:
'200': { description: OK, content: { application/json: { schema: { $ref: '#/components/schemas/WriteResponse' } } } }
/?method=artist.getCorrection:
get:
operationId: artistGetCorrection
summary: Get Artist Correction
tags: [Artist]
description: Use the last.fm corrections data to check whether the supplied artist has a correction to a canonical artist.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
required: true
schema: { type: string }
responses:
'200':
description: Suggested artist correction, if any.
content:
application/json:
schema: { type: object, additionalProperties: true }
/?method=artist.getInfo:
get:
operationId: artistGetInfo
summary: Get Artist Info
tags: [Artist]
description: Get the metadata for an artist. Includes biography, listener counts, similar artists, tags.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: lang
in: query
schema: { type: string }
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1] }
- name: username
in: query
schema: { type: string }
responses:
'200':
description: Artist info envelope.
content:
application/json:
schema: { $ref: '#/components/schemas/ArtistInfoResponse' }
/?method=artist.getSimilar:
get:
operationId: artistGetSimilar
summary: Get Similar Artists
tags: [Artist]
description: Get all the artists similar to this artist.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 100 }
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1] }
responses:
'200':
description: Similar artists list.
content:
application/json:
schema: { type: object, additionalProperties: true }
/?method=artist.getTags:
get:
operationId: artistGetTags
summary: Get Artist Tags
tags: [Artist]
description: Get the tags applied by an individual user to an artist on Last.fm.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: user
in: query
required: true
schema: { type: string }
responses:
'200':
description: User tags for the artist.
content:
application/json:
schema: { $ref: '#/components/schemas/TagListResponse' }
/?method=artist.getTopAlbums:
get:
operationId: artistGetTopAlbums
summary: Get Top Albums For Artist
tags: [Artist]
description: Get the top albums for an artist on Last.fm, ordered by popularity.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1] }
responses:
'200':
description: Top albums for the artist.
content:
application/json:
schema: { $ref: '#/components/schemas/TopAlbumsResponse' }
/?method=artist.getTopTags:
get:
operationId: artistGetTopTags
summary: Get Top Artist Tags
tags: [Artist]
description: Get the top tags for an artist on Last.fm, ordered by popularity.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1] }
responses:
'200':
description: Top tags for the artist.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTagsResponse' }
/?method=artist.getTopTracks:
get:
operationId: artistGetTopTracks
summary: Get Top Tracks For Artist
tags: [Artist]
description: Get the top tracks by an artist on Last.fm, ordered by popularity.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
schema: { type: string }
- name: mbid
in: query
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
- name: autocorrect
in: query
schema: { type: integer, enum: [0, 1] }
responses:
'200':
description: Top tracks for the artist.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTracksResponse' }
/?method=artist.removeTag:
post:
operationId: artistRemoveTag
summary: Remove Artist Tag
tags: [Artist]
description: Remove a user's tag from an artist.
requestBody: { $ref: '#/components/requestBodies/ArtistTagWrite' }
responses:
'200': { description: OK, content: { application/json: { schema: { $ref: '#/components/schemas/WriteResponse' } } } }
/?method=artist.search:
get:
operationId: artistSearch
summary: Search Artists
tags: [Artist]
description: Search for an artist by name. Returns artist matches sorted by relevance.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
required: true
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 30 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Search results for artists.
content:
application/json:
schema: { $ref: '#/components/schemas/SearchResponse' }
# AUTH
/?method=auth.getMobileSession:
post:
operationId: authGetMobileSession
summary: Get Mobile Session
tags: [Auth]
description: Create a Last.fm web service session for a user. Used by mobile devices. Requires signed POST.
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
required: [method, api_key, username, password, api_sig]
properties:
method: { type: string, enum: [auth.getMobileSession] }
api_key: { type: string }
username: { type: string }
password: { type: string }
api_sig: { type: string, description: MD5 signature of sorted params + secret. }
responses:
'200':
description: Session response with session key, name, and subscriber flag.
content:
application/json:
schema: { $ref: '#/components/schemas/SessionResponse' }
/?method=auth.getSession:
get:
operationId: authGetSession
summary: Get Web Session
tags: [Auth]
description: Fetch a session key for a user using a previously authorized token.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: token
in: query
required: true
schema: { type: string }
- name: api_sig
in: query
required: true
schema: { type: string }
responses:
'200':
description: Session response.
content:
application/json:
schema: { $ref: '#/components/schemas/SessionResponse' }
/?method=auth.getToken:
get:
operationId: authGetToken
summary: Get Auth Token
tags: [Auth]
description: Fetch an unauthorized request token for an API account. Returns a token to be authorized by the user.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
responses:
'200':
description: Unauthorized token.
content:
application/json:
schema:
type: object
properties:
token: { type: string }
# CHART
/?method=chart.getTopArtists:
get:
operationId: chartGetTopArtists
summary: Get Top Artists Chart
tags: [Chart]
description: Get the top artists chart on Last.fm.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Top artists chart.
content:
application/json:
schema: { $ref: '#/components/schemas/ChartResponse' }
/?method=chart.getTopTags:
get:
operationId: chartGetTopTags
summary: Get Top Tags Chart
tags: [Chart]
description: Get the top tags chart on Last.fm.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Top tags chart.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTagsResponse' }
/?method=chart.getTopTracks:
get:
operationId: chartGetTopTracks
summary: Get Top Tracks Chart
tags: [Chart]
description: Get the top tracks chart on Last.fm.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Top tracks chart.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTracksResponse' }
# GEO
/?method=geo.getTopArtists:
get:
operationId: geoGetTopArtists
summary: Get Top Artists By Country
tags: [Geo]
description: Get the most popular artists on Last.fm by country.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: country
in: query
required: true
schema: { type: string, example: United States }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Country top artists.
content:
application/json:
schema: { $ref: '#/components/schemas/GeoResponse' }
/?method=geo.getTopTracks:
get:
operationId: geoGetTopTracks
summary: Get Top Tracks By Country
tags: [Geo]
description: Get the most popular tracks on Last.fm last week by country.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: country
in: query
required: true
schema: { type: string }
- name: location
in: query
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Country top tracks.
content:
application/json:
schema: { $ref: '#/components/schemas/GeoResponse' }
# LIBRARY
/?method=library.getArtists:
get:
operationId: libraryGetArtists
summary: Get Library Artists
tags: [Library]
description: A paginated list of all the artists in a user's library, with play counts and tag counts.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: user
in: query
required: true
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Library artists for the user.
content:
application/json:
schema:
type: object
additionalProperties: true
# TAG
/?method=tag.getInfo:
get:
operationId: tagGetInfo
summary: Get Tag Info
tags: [Tag]
description: Get the metadata for a tag.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: tag
in: query
required: true
schema: { type: string }
- name: lang
in: query
schema: { type: string }
responses:
'200':
description: Tag metadata.
content:
application/json:
schema: { $ref: '#/components/schemas/TagInfoResponse' }
/?method=tag.getSimilar:
get:
operationId: tagGetSimilar
summary: Get Similar Tags
tags: [Tag]
description: Search for tags similar to this one. Returns tags ranked by similarity, based on listening data.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: tag
in: query
required: true
schema: { type: string }
responses:
'200':
description: Similar tags.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTagsResponse' }
/?method=tag.getTopAlbums:
get:
operationId: tagGetTopAlbums
summary: Get Top Albums For Tag
tags: [Tag]
description: Get the top albums tagged by this tag, ordered by tag count.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: tag
in: query
required: true
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Top albums tagged with this tag.
content:
application/json:
schema: { $ref: '#/components/schemas/TopAlbumsResponse' }
/?method=tag.getTopArtists:
get:
operationId: tagGetTopArtists
summary: Get Top Artists For Tag
tags: [Tag]
description: Get the top artists tagged by this tag, ordered by tag count.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: tag
in: query
required: true
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Top artists for the tag.
content:
application/json:
schema: { $ref: '#/components/schemas/ChartResponse' }
/?method=tag.getTopTags:
get:
operationId: tagGetTopTags
summary: Get Top Tags Overall
tags: [Tag]
description: Fetches the top global tags on Last.fm, sorted by popularity (number of times used).
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
responses:
'200':
description: Top global tags.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTagsResponse' }
/?method=tag.getTopTracks:
get:
operationId: tagGetTopTracks
summary: Get Top Tracks For Tag
tags: [Tag]
description: Get the top tracks tagged by this tag, ordered by tag count.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: tag
in: query
required: true
schema: { type: string }
- name: limit
in: query
schema: { type: integer, default: 50 }
- name: page
in: query
schema: { type: integer, default: 1 }
responses:
'200':
description: Top tracks for the tag.
content:
application/json:
schema: { $ref: '#/components/schemas/TopTracksResponse' }
/?method=tag.getWeeklyChartList:
get:
operationId: tagGetWeeklyChartList
summary: Get Weekly Tag Chart List
tags: [Tag]
description: Get a list of available charts for this tag, expressed as date ranges.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: tag
in: query
required: true
schema: { type: string }
responses:
'200':
description: Available weekly chart ranges.
content:
application/json:
schema:
type: object
additionalProperties: true
# TRACK
/?method=track.addTags:
post:
operationId: trackAddTags
summary: Add Track Tags
tags: [Track]
description: Tag a track using a list of user supplied tags.
requestBody: { $ref: '#/components/requestBodies/TrackTagWrite' }
responses:
'200': { description: OK, content: { application/json: { schema: { $ref: '#/components/schemas/WriteResponse' } } } }
/?method=track.getCorrection:
get:
operationId: trackGetCorrection
summary: Get Track Correction
tags: [Track]
description: Use the last.fm corrections data to check whether the supplied track has a correction to a canonical track.
parameters:
- { $ref: '#/components/parameters/ApiKeyParam' }
- { $ref: '#/components/parameters/FormatParam' }
- name: artist
in: query
required: true
schema: { type: string }
- name: track
in: query
required: true
schema: { type: string }
responses:
'200':
description: Suggested track correction.
content:
application/json:
schema: { type: object, additionalProperties: true }
/?method=track.getInfo:
get:
operationId: trackGetInfo
# --- truncated at 32 KB (65 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/lastfm/refs/heads/main/openapi/lastfm-openapi-original.yml