multi-scrobbler
multi-scrobbler copied to clipboard
bug: last.fm error "Auth Interaction Required", despite having all settings setup correctly.
Please check existing knowledge before opening an issue
- [x] I have checked the FAQ and documentation
- [x] I have searched through existing issues and discussions.
Describe the Bug
Given that the app has my api key and secret, it should be able to login automatically without an "Auth Interaction Required" error.
Here's my settings that I have right now for last.fm:
{
"name": "angel_lastfm",
"enable": true,
"configureAs": "client",
"data": {
"apiKey": "...",
"secret": "...",
"redirectUri": "http://192.168.50.60:9078/lastfm/callback"
}
}
I also made sure to have the same redirect callback url when creating the api in last.fm itself.
Here's my jellyfin config, although I don't think jellyfin causes any issues here...:
{
"name": "angel_jellyfin",
"enable": true,
"clients": [
"angel_lastfm"
],
"data": {
"url": "...",
"user": "angelolz",
"apiKey": "..."
},
"options": {
"logPayload": true,
"logFilterFailure": "warn"
}
}
Platform
Docker
Versions
- multi-scrobbler 0.9.10
- jellyfin 10.10.7
Logs
[2025-08-05 18:20:28.925 -0600] ERROR : [App] [Scrobblers] [Lastfm - angel_lastfm] Could not initialize automatically
Error: Could not initialize automatically
at PromisePoolExecutor.handler (CWD/src/backend/tasks/heartbeatClients.ts:25:49)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async PromisePoolExecutor.waitForActiveTaskToFinish (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:375:9)
at async PromisePoolExecutor.waitForProcessingSlot (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:368:13)
at async PromisePoolExecutor.process (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:354:13)
at async PromisePoolExecutor.start (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:273:16)
caused by: Error: Initialization failed
at LastfmScrobbler.initialize (CWD/src/backend/common/AbstractComponent.ts:82:19)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async LastfmScrobbler.tryInitialize (CWD/src/backend/common/AbstractComponent.ts:102:20)
at async PromisePoolExecutor.handler (CWD/src/backend/tasks/heartbeatClients.ts:23:29)
at async PromisePoolExecutor.waitForActiveTaskToFinish (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:375:9)
at async PromisePoolExecutor.waitForProcessingSlot (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:368:13)
at async PromisePoolExecutor.process (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:354:13)
at async PromisePoolExecutor.start (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:273:16)
caused by: Post Initialization: Error occurred during post-initialization hook
at LastfmScrobbler.initialize (CWD/src/backend/common/AbstractComponent.ts:75:23)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async LastfmScrobbler.tryInitialize (CWD/src/backend/common/AbstractComponent.ts:102:20)
at async PromisePoolExecutor.handler (CWD/src/backend/tasks/heartbeatClients.ts:23:29)
at async PromisePoolExecutor.waitForActiveTaskToFinish (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:375:9)
at async PromisePoolExecutor.waitForProcessingSlot (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:368:13)
at async PromisePoolExecutor.process (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:354:13)
at async PromisePoolExecutor.start (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:273:16)
caused by: Error: API call failed due -> operation failed <- after max retries hit 2
at LastfmApiClient.callApi (CWD/src/backend/common/vendor/LastfmApiClient.ts:143:27)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async LastfmScrobbler.getScrobblesForRefresh (CWD/src/backend/scrobblers/LastfmScrobbler.ts:50:26)
at async LastfmScrobbler.refreshScrobbles (CWD/src/backend/scrobblers/AbstractScrobbleClient.ts:322:28)
at async LastfmScrobbler.postInitialize (CWD/src/backend/scrobblers/AbstractScrobbleClient.ts:315:9)
at async LastfmScrobbler.initialize (CWD/src/backend/common/AbstractComponent.ts:73:17)
at async LastfmScrobbler.tryInitialize (CWD/src/backend/common/AbstractComponent.ts:102:20)
at async PromisePoolExecutor.handler (CWD/src/backend/tasks/heartbeatClients.ts:23:29)
at async PromisePoolExecutor.waitForActiveTaskToFinish (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:375:9)
at async PromisePoolExecutor.waitForProcessingSlot (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:368:13)
caused by: Error: Operation failed - Most likely the backend service failed. Please try again.
at CWD/node_modules/lastfm-node-client/lib/ApiRequest.js:140:11
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async LastfmApiClient.callApi (CWD/src/backend/common/vendor/LastfmApiClient.ts:116:20)
at async LastfmScrobbler.getScrobblesForRefresh (CWD/src/backend/scrobblers/LastfmScrobbler.ts:50:26)
at async LastfmScrobbler.refreshScrobbles (CWD/src/backend/scrobblers/AbstractScrobbleClient.ts:322:28)
at async LastfmScrobbler.postInitialize (CWD/src/backend/scrobblers/AbstractScrobbleClient.ts:315:9)
at async LastfmScrobbler.initialize (CWD/src/backend/common/AbstractComponent.ts:73:17)
at async LastfmScrobbler.tryInitialize (CWD/src/backend/common/AbstractComponent.ts:102:20)
at async PromisePoolExecutor.handler (CWD/src/backend/tasks/heartbeatClients.ts:23:29)
at async PromisePoolExecutor.waitForActiveTaskToFinish (CWD/node_modules/@supercharge/promise-pool/dist/promise-pool-executor.js:375:9)
[2025-08-05 18:20:26.063 -0600] VERBOSE: [App] [Sources] [Jellyfin - angel_jellyfin] Building required data init succeeded
[2025-08-05 18:20:26.062 -0600] DEBUG : [App] [Sources] [Jellyfin - angel_jellyfin] Attempting to initialize...
[2025-08-05 18:20:26.061 -0600] VERBOSE: [App] [Heartbeat] [Sources] Starting check...
[2025-08-05 18:20:26.061 -0600] INFO : [App] Scheduler started.
[2025-08-05 18:20:26.057 -0600] WARN : [App] Waited too long for clients to start! Moving ahead with sources init...
[2025-08-05 18:20:25.843 -0600] WARN : [App] [Scrobblers] [API - Lastfm - angel_lastfm] API call failed due to network issue (null), retrying in 3 seconds...
[2025-08-05 18:20:24.263 -0600] WARN : [App] [Scrobblers] [API - Lastfm - angel_lastfm] API call failed due to network issue (null), retrying in 1.5 seconds...
[2025-08-05 18:20:20.060 -0600] DEBUG : [App] [Scrobblers] [Lastfm - angel_lastfm] Refreshing recent scrobbles
[2025-08-05 18:20:20.059 -0600] VERBOSE: [App] [Scrobblers] [Lastfm - angel_lastfm] Fetching up to 200 initial scrobbles...
[2025-08-05 18:20:20.058 -0600] DEBUG : [App] [Scrobblers] [Lastfm - angel_lastfm] [Now Playing] Enabled by default config
[2025-08-05 18:20:20.058 -0600] INFO : [App] [Scrobblers] [Lastfm - angel_lastfm] Fully Initialized!
[2025-08-05 18:20:20.057 -0600] INFO : [App] [Scrobblers] [API - Lastfm - angel_lastfm] Redirect URL that will be used on auth callback: 'http://192.168.50.60:9078/lastfm/callback?state=angel_lastfm'
[2025-08-05 18:20:20.056 -0600] DEBUG : [App] [Scrobblers] [Lastfm - angel_lastfm] Connection check was not required.
[2025-08-05 18:20:20.056 -0600] WARN : [App] [Scrobblers] [API - Lastfm - angel_lastfm] No session key found. User interaction for authentication required.
[2025-08-05 18:20:20.055 -0600] VERBOSE: [App] [Scrobblers] [Lastfm - angel_lastfm] Building required data init succeeded
[2025-08-05 18:20:20.054 -0600] DEBUG : [App] [Scrobblers] [Lastfm - angel_lastfm] Attempting to initialize...
Additional Context
No response