Jellyfin Setup
Connect your Jellyfin media server to sync watch history to your tracking services.
Prerequisites
- A Jellyfin server (self-hosted)
- Admin access to your Jellyfin server
- An API key from Jellyfin
Getting Your API Key
- Open your Jellyfin server’s web interface
- Go to Dashboard → API Keys
- Click the + button to create a new key
- Enter an app name (e.g., “Plaxt”)
- Copy the generated API key
Connecting Jellyfin
- Go to Connections in the Plaxt dashboard
- Click Connect Jellyfin
- Enter your Jellyfin server URL (e.g.,
http://192.168.1.100:8096) - Paste your API key
- Click Connect
Plaxt will verify the connection and list available users.
Real-time Scrobbling
Plaxt supports two methods for real-time scrobbling from Jellyfin:
Webhooks
Use the Jellyfin Webhook plugin for instant notifications.
Setup:
- Install the Webhook plugin from Jellyfin’s plugin catalog
- Restart Jellyfin
- Go to Dashboard → Plugins → Webhook
- Add a new webhook destination
- Paste your Plaxt webhook URL
- Enable playback events
WebSocket (Recommended)
WebSocket monitoring provides real-time updates without plugins.
Setup:
- Open your sync link settings in Plaxt
- Enable WebSocket Monitoring
- Plaxt automatically connects to your Jellyfin server
Note: Your Jellyfin server must be accessible from the internet for WebSocket monitoring to work.
Multi-User Support
Jellyfin supports multiple users:
- When connecting, Plaxt lists all available users
- Create separate sync links for each user
- Each sync link connects one Jellyfin user to one tracking account
Server URL Tips
Your server URL should be:
- Local network:
http://192.168.x.x:8096 - With domain:
https://jellyfin.yourdomain.com - Behind reverse proxy: Include the base URL if configured
Ensure the URL is accessible from the internet for real-time features.
Troubleshooting
Connection failed
- Verify your server URL is correct
- Check that your API key has admin privileges
- Ensure Jellyfin is running and accessible
WebSocket keeps disconnecting
- Check your server’s connection timeout settings
- Verify firewall rules allow WebSocket connections
- Try using webhooks as an alternative
Playback not detected
- Ensure the correct user is selected in your sync link
- Check if playback reporting is enabled in Jellyfin user settings
- Review the event log for errors
Best Practices
- Use WebSocket for simplest setup, webhooks for reliability
- Jellyfin is free and open-source—no subscription required
- Keep your API key private and regenerate if exposed
- Consider using HTTPS for external access