Replies: 1 comment 4 replies
|
This has all been fixed for plugin v2.0.0 and Moonfin-Core 2.3.0 all releasing this week |
4 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment


Uh oh!
There was an error while loading. Please reload this page.
Environment
/jellyfinSymptom
In the Moonfin Android app, under Settings, the Seerr integration shows:
This is despite having enabled Seerr in the Jellyfin admin panel (Dashboard → Plugins → Moonfin) with a valid, reachable URL.
Troubleshooting done so far
Reverse proxy path forwarding — confirmed working correctly at both proxy layers. Tested
/Moonfin/Pingboth locally on the Jellyfin host and through the public domain; both return identical, consistent responses (a 401 without auth, as expected, withallow: GETon a HEAD request). The/Moonfin/paths are reaching the plugin correctly through the full reverse proxy chain.Server-side Seerr config — confirmed correct. Calling
/Moonfin/Pingwith a valid Jellyfin API token returns:{ "Installed": true, "Version": "1.9.1.0", "SettingsSyncEnabled": false, "ServerName": "Jellyfin", "JellyseerrEnabled": true, "JellyseerrUrl": "https://myjellyseerrserveur.mydomain.com", "MdblistAvailable": false, "TmdbAvailable": false, "DefaultSettings": { ... } }So the server plugin genuinely has Seerr enabled with the correct URL. This isn't a config-not-saved issue — I restarted Jellyfin after saving, and logged out/back into the Moonfin app, with no change.
Possible root cause: JSON key casing mismatch
Note the casing in the actual
/Moonfin/Pingresponse above: PascalCase (JellyseerrEnabled,JellyseerrUrl,Installed, etc.).Every documented example of this endpoint's schema I could find — including the plugin's own README and third-party reimplementations — uses camelCase:
{ "installed": true, "version": "1.0.0.0", "settingsSyncEnabled": true, "serverName": "Jellyfin", "jellyseerrEnabled": true, "jellyseerrUrl": "https://jellyseerr.example.com" }If the Moonfin client does case-sensitive JSON parsing (typical for Dart/Flutter with generated model classes), it would never find
jellyseerrEnabledin a PascalCase response, default it tofalse/null, and show the "server plugin Seerr support is disabled" message — even though the server is correctly configured. This would line up exactly with what I'm seeing.I don't know if this is:
System.Text.Jsonoutput without the app's configured camelCase naming policy applied, orQuestion
Is this a known issue, or something specific to my environment? Happy to provide more logs/config if useful — I have a fairly unusual double reverse-proxy setup (NPM + swizzin's internal Nginx) but have ruled that out as the cause since the request path and server-side config are both confirmed correct — the discrepancy seems to be purely in the response body's key casing.
Also, in the plugin in Jellyfin, the "Enable Seerr" is the only option checked for now.
Thanks for your help !
All reactions