From 92df28b5f561553cd2ec46f2daf78adf10786c90 Mon Sep 17 00:00:00 2001 From: BotBlake Date: Fri, 27 Jun 2025 00:34:09 +0200 Subject: [PATCH 1/9] rework quick connect --- docs/general/server/quick-connect.md | 63 +++++++++++++++++++++++----- 1 file changed, 53 insertions(+), 10 deletions(-) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index 3467e79f..e0691ea1 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -5,24 +5,67 @@ title: Quick Connect # Quick Connect -Starting with Jellyfin server version 10.7.0 and supported clients, you can use Quick Connect to sign into your account without the need of a password. You need to previously be logged into a supported client, like the default Jellyfin Web Client. +**Quick Connect** is a feature that allows users to sign into clients **without entering a username or password**. Instead, a temporary **Quick Connect code** is generated and used to authorize login from an already authenticated client. -## Enabling Quick Connect +This feature streamlines the sign-in process, especially on devices with limited input options (like TVs or set-top boxes). Since it is part of the Jellyfin-API, both first and third party clients can support it. -To use Quick Connect, the Jellyfin server admin has to enable this feature in the server dashboard. +## Enabling Quick Connect (Server) -Settings > Dashboard > General > Enable Quick Connect on this server +Quick Connect must be enabled by the Jellyfin server administrator. + +1. Go to the **Admin Dashboard** on your Jellyfin server. + `Settings` > `Dashboard` +2. Navigate to: + > `General` +3. Check the box: + ✅ **Enable Quick Connect on this server** + +## Supported Clients + +Quick Connect functionality is supported in two contexts: + +| Client | Log In | Authorize Others | +|----------------------|--------|------------------| +| JellyCon | ✅ | ❌ | +| Jellyfin Android | ✅ | ✅ | +| Jellyfin AndroidTV | ✅ | ❌ | +| Jellyfin Chromecast | ⚠️* | ⚠️* | +| Jellyfin Kodi | ❌ | ❌ | +| Jellyfin Media Player| ✅ | ✅ | +| Jellyfin Mobile (iOS)| ✅ | ✅ | +| Jellyfin MPV Shim | ❌ | ❌ | +| Jellyfin Roku | ✅ | ❌ | +| Jellyfin UWP | ✅ | ✅ | +| Jellyfin Vue | ❌ | ❌ | +| Jellyfin Web | ✅ | ✅ | +| Jellyfin WebOS | ✅ | ✅ | +| Swiftfin (iOS) | ✅ | ✅ | +| Swiftfin (tvOS) | ✅ | ❌ | + +* This client does not need seperate Authentication ## Using Quick Connect -To sign in to a supported client, you have to enter the Quick Connect code in your user settings. +The Quick Connect process involves two devices: -Settings > Quick Connect +- **Device A**: A new client where you want to log in. +- **Device B**: An already authenticated client (such as your browser, phone, etc.). -![Quick Connect sign in](https://user-images.githubusercontent.com/12074633/115973526-aecc6000-a523-11eb-9ed6-59bee41bac7b.png) +### On Device A (New Device - the one you want to log into) -If the code is validated successfully, your new device will be signed in without entering your Jellyfin username or password on the new device. +1. Open the Jellyfin client and choose **Quick Connect** (usually found on the login screen). + On some clients you will first have to press `manual login`, others may directly show you the quick connect code. +2. A **6-character code** will be displayed. Keep this screen open. -The client will generate a 6 digit code, which you have to enter in the already signed in client in your user settings. +![Quick Connect code example](https://user-images.githubusercontent.com/12074633/115973542-c99ed480-a523-11eb-9d61-17ccd628e123.png) -![Quick Connect error](https://user-images.githubusercontent.com/12074633/115973542-c99ed480-a523-11eb-9d61-17ccd628e123.png) +### On Device B (Already Logged-In Device) + +1. Open Jellyfin and go to: + `Settings` > `Quick Connect` +2. Enter the 6-character code from Device A and confirm. +3. If successful, Device A will be logged in automatically—no need to enter a username or password. + +![Quick Connect code entry screen](https://user-images.githubusercontent.com/12074633/115973526-aecc6000-a523-11eb-9ed6-59bee41bac7b.png) + +> If the code is invalid or expired, you will see an error message and must try again. From 125287a4a1edb3ff6f6db4a0e65272f7c989e7b6 Mon Sep 17 00:00:00 2001 From: BotBlake Date: Fri, 27 Jun 2025 00:46:02 +0200 Subject: [PATCH 2/9] fix various typos --- docs/general/server/quick-connect.md | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index e0691ea1..165d0abc 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -5,18 +5,17 @@ title: Quick Connect # Quick Connect -**Quick Connect** is a feature that allows users to sign into clients **without entering a username or password**. Instead, a temporary **Quick Connect code** is generated and used to authorize login from an already authenticated client. +**Quick Connect** is a feature that allows users to sign in to clients **without entering a username or password**. Instead, a temporary **Quick Connect code** is generated and used to authorize login from an already authenticated client. -This feature streamlines the sign-in process, especially on devices with limited input options (like TVs or set-top boxes). Since it is part of the Jellyfin-API, both first and third party clients can support it. +This feature streamlines the sign-in process, especially on devices with limited input options (like TVs or set-top boxes). Because it is part of the Jellyfin API, both first- and third-party clients can support it. ## Enabling Quick Connect (Server) Quick Connect must be enabled by the Jellyfin server administrator. -1. Go to the **Admin Dashboard** on your Jellyfin server. +1. Go to the **Admin Dashboard** on your Jellyfin server.
`Settings` > `Dashboard` -2. Navigate to: - > `General` +2. Navigate to the **General** Tab 3. Check the box: ✅ **Enable Quick Connect on this server** @@ -42,7 +41,7 @@ Quick Connect functionality is supported in two contexts: | Swiftfin (iOS) | ✅ | ✅ | | Swiftfin (tvOS) | ✅ | ❌ | -* This client does not need seperate Authentication +* This client does not need separate Authentication ## Using Quick Connect @@ -54,7 +53,7 @@ The Quick Connect process involves two devices: ### On Device A (New Device - the one you want to log into) 1. Open the Jellyfin client and choose **Quick Connect** (usually found on the login screen). - On some clients you will first have to press `manual login`, others may directly show you the quick connect code. + On some clients, you will first need to press **Manual Login**; others may display the quick-connect code directly. 2. A **6-character code** will be displayed. Keep this screen open. ![Quick Connect code example](https://user-images.githubusercontent.com/12074633/115973542-c99ed480-a523-11eb-9d61-17ccd628e123.png) From 5b20f2dd4649ba58dac674aa16125306b8ba80e2 Mon Sep 17 00:00:00 2001 From: BotBlake Date: Fri, 27 Jun 2025 00:52:34 +0200 Subject: [PATCH 3/9] fix html --- docs/general/server/quick-connect.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index 165d0abc..2c8bab61 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -13,7 +13,7 @@ This feature streamlines the sign-in process, especially on devices with limited Quick Connect must be enabled by the Jellyfin server administrator. -1. Go to the **Admin Dashboard** on your Jellyfin server.
+1. Go to the **Admin Dashboard** on your Jellyfin server.
`Settings` > `Dashboard` 2. Navigate to the **General** Tab 3. Check the box: From 215ddf1d26b3e84722242181aa1425ac90897f5c Mon Sep 17 00:00:00 2001 From: BotBlake Date: Sat, 28 Jun 2025 15:20:48 +0200 Subject: [PATCH 4/9] remove cast receiver --- docs/general/server/quick-connect.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index 2c8bab61..41e48cc1 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -28,7 +28,6 @@ Quick Connect functionality is supported in two contexts: | JellyCon | ✅ | ❌ | | Jellyfin Android | ✅ | ✅ | | Jellyfin AndroidTV | ✅ | ❌ | -| Jellyfin Chromecast | ⚠️* | ⚠️* | | Jellyfin Kodi | ❌ | ❌ | | Jellyfin Media Player| ✅ | ✅ | | Jellyfin Mobile (iOS)| ✅ | ✅ | @@ -41,8 +40,6 @@ Quick Connect functionality is supported in two contexts: | Swiftfin (iOS) | ✅ | ✅ | | Swiftfin (tvOS) | ✅ | ❌ | -* This client does not need separate Authentication - ## Using Quick Connect The Quick Connect process involves two devices: From ed03e2740a9e6f34f58b36426680fa57037e53b8 Mon Sep 17 00:00:00 2001 From: BotBlake Date: Sun, 29 Jun 2025 15:38:31 +0200 Subject: [PATCH 5/9] fix image paths --- docs/general/server/quick-connect.md | 6 +++--- .../server/quick-connect/QuickConnectCode.png | Bin 0 -> 11012 bytes .../server/quick-connect/QuickConnectEntry.png | Bin 0 -> 19960 bytes 3 files changed, 3 insertions(+), 3 deletions(-) create mode 100644 static/images/docs/server/quick-connect/QuickConnectCode.png create mode 100644 static/images/docs/server/quick-connect/QuickConnectEntry.png diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index 41e48cc1..216d6dca 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -27,7 +27,7 @@ Quick Connect functionality is supported in two contexts: |----------------------|--------|------------------| | JellyCon | ✅ | ❌ | | Jellyfin Android | ✅ | ✅ | -| Jellyfin AndroidTV | ✅ | ❌ | +| Jellyfin Android TV | ✅ | ❌ | | Jellyfin Kodi | ❌ | ❌ | | Jellyfin Media Player| ✅ | ✅ | | Jellyfin Mobile (iOS)| ✅ | ✅ | @@ -53,7 +53,7 @@ The Quick Connect process involves two devices: On some clients, you will first need to press **Manual Login**; others may display the quick-connect code directly. 2. A **6-character code** will be displayed. Keep this screen open. -![Quick Connect code example](https://user-images.githubusercontent.com/12074633/115973542-c99ed480-a523-11eb-9d61-17ccd628e123.png) +![Quick Connect code example](/images/docs/server/quick-connect/QuickConnectCode.png) ### On Device B (Already Logged-In Device) @@ -62,6 +62,6 @@ The Quick Connect process involves two devices: 2. Enter the 6-character code from Device A and confirm. 3. If successful, Device A will be logged in automatically—no need to enter a username or password. -![Quick Connect code entry screen](https://user-images.githubusercontent.com/12074633/115973526-aecc6000-a523-11eb-9ed6-59bee41bac7b.png) +![Quick Connect code entry screen](/images/docs/server/quick-connect/QuickConnectEntry.png) > If the code is invalid or expired, you will see an error message and must try again. diff --git a/static/images/docs/server/quick-connect/QuickConnectCode.png b/static/images/docs/server/quick-connect/QuickConnectCode.png new file mode 100644 index 0000000000000000000000000000000000000000..0922392fa2409b535af96715c2fb956841c28a82 GIT binary patch literal 11012 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 literal 0 HcmV?d00001 From 045b7775a617c44fadd84184ac12d49d30ff8c57 Mon Sep 17 00:00:00 2001 From: BotBlake Date: Sun, 29 Jun 2025 15:43:43 +0200 Subject: [PATCH 6/9] =?UTF-8?q?kebab=C2=B2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/general/server/quick-connect.md | 4 ++-- ...{QuickConnectCode.png => quick-connect-code.png} | Bin ...uickConnectEntry.png => quick-connect-entry.png} | Bin 3 files changed, 2 insertions(+), 2 deletions(-) rename static/images/docs/server/quick-connect/{QuickConnectCode.png => quick-connect-code.png} (100%) rename static/images/docs/server/quick-connect/{QuickConnectEntry.png => quick-connect-entry.png} (100%) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index 216d6dca..4074186c 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -53,7 +53,7 @@ The Quick Connect process involves two devices: On some clients, you will first need to press **Manual Login**; others may display the quick-connect code directly. 2. A **6-character code** will be displayed. Keep this screen open. -![Quick Connect code example](/images/docs/server/quick-connect/QuickConnectCode.png) +![Quick Connect code example](/images/docs/server/quick-connect/quick-connect-code.png) ### On Device B (Already Logged-In Device) @@ -62,6 +62,6 @@ The Quick Connect process involves two devices: 2. Enter the 6-character code from Device A and confirm. 3. If successful, Device A will be logged in automatically—no need to enter a username or password. -![Quick Connect code entry screen](/images/docs/server/quick-connect/QuickConnectEntry.png) +![Quick Connect code entry screen](/images/docs/server/quick-connect/quick-connect-entry.png) > If the code is invalid or expired, you will see an error message and must try again. diff --git a/static/images/docs/server/quick-connect/QuickConnectCode.png b/static/images/docs/server/quick-connect/quick-connect-code.png similarity index 100% rename from static/images/docs/server/quick-connect/QuickConnectCode.png rename to static/images/docs/server/quick-connect/quick-connect-code.png diff --git a/static/images/docs/server/quick-connect/QuickConnectEntry.png b/static/images/docs/server/quick-connect/quick-connect-entry.png similarity index 100% rename from static/images/docs/server/quick-connect/QuickConnectEntry.png rename to static/images/docs/server/quick-connect/quick-connect-entry.png From 07f7039b9ec4deff8861c230339a45aac0623122 Mon Sep 17 00:00:00 2001 From: BotBlake Date: Sun, 29 Jun 2025 16:06:01 +0200 Subject: [PATCH 7/9] change to disable quickconnect --- docs/general/server/quick-connect.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index 4074186c..94fe349f 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -9,14 +9,16 @@ title: Quick Connect This feature streamlines the sign-in process, especially on devices with limited input options (like TVs or set-top boxes). Because it is part of the Jellyfin API, both first- and third-party clients can support it. -## Enabling Quick Connect (Server) +## Disabling Quick Connect (Server) -Quick Connect must be enabled by the Jellyfin server administrator. +By default, Quick Connect is enabled. +To disable it, follow these steps: + +1. Go to the **Admin Dashboard** on your Jellyfin server. -1. Go to the **Admin Dashboard** on your Jellyfin server.
`Settings` > `Dashboard` 2. Navigate to the **General** Tab -3. Check the box: +3. Uncheck the box: ✅ **Enable Quick Connect on this server** ## Supported Clients From ed91680657fec70c765505468bf93b8a8adb7fb6 Mon Sep 17 00:00:00 2001 From: BotBlake Date: Sun, 29 Jun 2025 16:09:07 +0200 Subject: [PATCH 8/9] trailing spaces --- docs/general/server/quick-connect.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index 94fe349f..bf8ec31d 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -14,7 +14,7 @@ This feature streamlines the sign-in process, especially on devices with limited By default, Quick Connect is enabled. To disable it, follow these steps: -1. Go to the **Admin Dashboard** on your Jellyfin server. +1. Go to the **Admin Dashboard** on your Jellyfin server. `Settings` > `Dashboard` 2. Navigate to the **General** Tab From a4bf2d7c4adb176d1a726ce3359fea920909a12f Mon Sep 17 00:00:00 2001 From: BotBlake Date: Sun, 29 Jun 2025 16:22:52 +0200 Subject: [PATCH 9/9] remove third party comment --- docs/general/server/quick-connect.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/general/server/quick-connect.md b/docs/general/server/quick-connect.md index bf8ec31d..cf356c86 100644 --- a/docs/general/server/quick-connect.md +++ b/docs/general/server/quick-connect.md @@ -7,7 +7,7 @@ title: Quick Connect **Quick Connect** is a feature that allows users to sign in to clients **without entering a username or password**. Instead, a temporary **Quick Connect code** is generated and used to authorize login from an already authenticated client. -This feature streamlines the sign-in process, especially on devices with limited input options (like TVs or set-top boxes). Because it is part of the Jellyfin API, both first- and third-party clients can support it. +This feature streamlines the sign-in process, especially on devices with limited input options (like TVs or set-top boxes). ## Disabling Quick Connect (Server)