generated: '2026-07-15' method: generated source: openapi/lastfm-openapi-original.yml description: Recommended x-agentic-access execution contracts, classified heuristically from the OpenAPI. A governance starting point for exposing this API to AI agents — review and bind audience per deployment. See research/curity/agentic-governance/. summary: operations: 59 by_action_class: connected: 47 acting: 12 by_consequence: read: 47 write: 12 human_in_the_loop_required: 0 operations: - path: / method: get operationId: invokeReadMethod x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: / method: post operationId: invokeWriteMethod x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=album.addTags method: post operationId: albumAddTags x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=album.getInfo method: get operationId: albumGetInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=album.getTags method: get operationId: albumGetTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=album.getTopTags method: get operationId: albumGetTopTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=album.removeTag method: post operationId: albumRemoveTag x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=album.search method: get operationId: albumSearch x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.addTags method: post operationId: artistAddTags x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=artist.getCorrection method: get operationId: artistGetCorrection x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.getInfo method: get operationId: artistGetInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.getSimilar method: get operationId: artistGetSimilar x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.getTags method: get operationId: artistGetTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.getTopAlbums method: get operationId: artistGetTopAlbums x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.getTopTags method: get operationId: artistGetTopTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.getTopTracks method: get operationId: artistGetTopTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=artist.removeTag method: post operationId: artistRemoveTag x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=artist.search method: get operationId: artistSearch x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=auth.getMobileSession method: post operationId: authGetMobileSession x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=auth.getSession method: get operationId: authGetSession x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=auth.getToken method: get operationId: authGetToken x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=chart.getTopArtists method: get operationId: chartGetTopArtists x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=chart.getTopTags method: get operationId: chartGetTopTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=chart.getTopTracks method: get operationId: chartGetTopTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=geo.getTopArtists method: get operationId: geoGetTopArtists x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=geo.getTopTracks method: get operationId: geoGetTopTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=library.getArtists method: get operationId: libraryGetArtists x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=tag.getInfo method: get operationId: tagGetInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=tag.getSimilar method: get operationId: tagGetSimilar x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=tag.getTopAlbums method: get operationId: tagGetTopAlbums x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=tag.getTopArtists method: get operationId: tagGetTopArtists x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=tag.getTopTags method: get operationId: tagGetTopTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=tag.getTopTracks method: get operationId: tagGetTopTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=tag.getWeeklyChartList method: get operationId: tagGetWeeklyChartList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=track.addTags method: post operationId: trackAddTags x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=track.getCorrection method: get operationId: trackGetCorrection x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=track.getInfo method: get operationId: trackGetInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=track.getSimilar method: get operationId: trackGetSimilar x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=track.getTags method: get operationId: trackGetTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=track.getTopTags method: get operationId: trackGetTopTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=track.love method: post operationId: trackLove x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=track.removeTag method: post operationId: trackRemoveTag x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=track.scrobble method: post operationId: trackScrobble x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=track.search method: get operationId: trackSearch x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=track.unlove method: post operationId: trackUnlove x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=track.updateNowPlaying method: post operationId: trackUpdateNowPlaying x-agentic-access: action-class: acting consequence: write subject: required audience: null token: max-ttl: 900 escalation: human-in-the-loop: conditional triggers: - abnormal - high-value audit: required - path: /?method=user.getFriends method: get operationId: userGetFriends x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getInfo method: get operationId: userGetInfo x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getLovedTracks method: get operationId: userGetLovedTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getPersonalTags method: get operationId: userGetPersonalTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getRecentTracks method: get operationId: userGetRecentTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getTopAlbums method: get operationId: userGetTopAlbums x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getTopArtists method: get operationId: userGetTopArtists x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getTopTags method: get operationId: userGetTopTags x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getTopTracks method: get operationId: userGetTopTracks x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getWeeklyAlbumChart method: get operationId: userGetWeeklyAlbumChart x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getWeeklyArtistChart method: get operationId: userGetWeeklyArtistChart x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getWeeklyChartList method: get operationId: userGetWeeklyChartList x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none - path: /?method=user.getWeeklyTrackChart method: get operationId: userGetWeeklyTrackChart x-agentic-access: action-class: connected consequence: read subject: optional token: max-ttl: 3600 audit: none