VideoHelp Forum




+ Reply to Thread
Page 40 of 46
FirstFirst ... 30 38 39 40 41 42 ... LastLast
Results 1,171 to 1,200 of 1357
  1. Originally Posted by iamghost View Post
    use search to get correct video ID
    Code:
    uv run unshackle search pluto "The Beverly Hillbillies"
    Code:
      ────────────────────────────── Service: PLUTO ──────────────────────────────
    
         Service has no Geofence
    
      ──────────────────────────── 89 Search Results ─────────────────────────────
    
         Return of the Beverly Hillbillies  movie
         id: /movies/674610dde835570013ca0f7c/details
    
         The Beverly Hillbillies  series
         id: /series/5fb80beee8b7e6001a753aa8/details
    
         The Big Show  movie
         id: /movies/69c49759351d15c1115649c3/details
    
         Beverly Hills Pawn  series
         id: /series/5fe26a447f73ec001aa9556f/details
    Great call
    Quote Quote  
  2. Thank you iamghost.
    Quote Quote  
  3. Member
    Join Date
    Sep 2008
    Location
    Canada
    Search Comp PM
    Hi, I am still on version 2.0.0. Last week it worked fine, but pluto tv isn't working as I see you've been talking about. I see for this command it's showing the right show:

    C:\Users\user\unshackle>"C:\Users\user\unshackle\. venv\Scripts\python.exe" -m unshackle dl --list-titles PLUTO "/series/680aa663afe56ba72ed352b1/details"

    1 seasons, S13(22)
    └── Season 13: 22 episodes
    ├── 01. Nikki Reunion
    ├── 02. Riley Reunion
    ├── 03. Bella Reunion
    ├── 04. Sparky Reunion
    ├── 05. Gunner Reunion
    ├── 06. Agility Pros
    ├── 07. Panda Reunion
    ├── 08. Magnolia Reunion
    ├── 11. Ruthie Reunion
    ├── 13. Atticus Reunion
    ├── 14. Fiona Reunion
    ├── 15. Caught in the Act
    ├── 17. Rosa & Charley Reunion
    ├── 18. Canines For Kids
    ├── 19. Penny Reunion
    ├── 20. Gentle Giants
    ├── 21. Lizzie Reunion
    ├── 22. Special Deliveries
    ├── 23. Happy Campers
    ├── 24. Trained For Service
    ├── 25. Canine Coworkers
    └── 26. Making Waves

    I am trying to download only Making Waves, but when I run this it tries to download everything:

    C:\Users\user\unshackle>"C:\Users\user\unshackle\. venv\Scripts\python.exe" -m unshackle dl pluto "https://pluto.tv/series/680aa663afe56ba72ed352b1/details/episode/6a6421115fd707b27da64d03/"

    Any suggestions? Thanks.
    Quote Quote  
  4. uv run unshackle dl -w S13E26 PLUTO /series/680aa663afe56ba72ed352b1

    My bookmarks for Pluto reset themselves again to not point at the On Demand. But I used the search that iamghost wrote about and that found me the url I needed for what show I am currently trying to archive.
    Quote Quote  
  5. Member
    Join Date
    Sep 2008
    Location
    Canada
    Search Comp PM
    Originally Posted by Tom Saurus View Post
    uv run unshackle dl -w S13E26 PLUTO /series/680aa663afe56ba72ed352b1

    My bookmarks for Pluto reset themselves again to not point at the On Demand. But I used the search that iamghost wrote about and that found me the url I needed for what show I am currently trying to archive.
    Thank you so much!
    Quote Quote  
  6. You are welcome!
    Quote Quote  
  7. Member
    Join Date
    Mar 2006
    Location
    United States
    Search Comp PM
    Does anyone have the "Bonus tip" working in the DSCP service that stabbedbybrick had added as an easter egg for 5.3?

    I do on version 4.0 still, but it does not on 5.3 at all.

    Actually did find a working service for this. So never mind actually.
    Last edited by ehurdler; 4th Aug 2026 at 16:09.
    Quote Quote  
  8. Maybe I need a better VPN as Pluto TV On Demand disappears instantly and now it is Italian. Even when I do the search it is spitting out Italian.

    I am back search is working again for me getting the Tubi US.
    Last edited by Tom Saurus; 4th Aug 2026 at 01:07.
    Quote Quote  
  9. Member
    Join Date
    Oct 2023
    Location
    Donesville
    Search PM
    I have fresh cookies for un-named service. Can anyone PM me to help with this error ?
    "This title is not available to watch instantly. Please try another title. - 1044"

    Nevermind I got it mostly working playing with the sticks and stones of VT.
    Last edited by billybanana; 9th Aug 2026 at 03:41.
    Quote Quote  
  10. 1044 for that particular service is device not supported
    Quote Quote  
  11. Member
    Join Date
    Sep 2007
    Location
    United States
    Search Comp PM
    Originally Posted by Tom Saurus View Post
    uv run unshackle dl -w S13E26 PLUTO /series/680aa663afe56ba72ed352b1

    My bookmarks for Pluto reset themselves again to not point at the On Demand. But I used the search that iamghost wrote about and that found me the url I needed for what show I am currently trying to archive.
    I want to second this! I am new to using this program and spent most of the night trying to find the correct link for a program.

    My problem now is that my vaults are 0/0 and I am now realizing I am missing the important Playready and Widevine DRM files. Every time I go to use Pluto, I am told it is has the wrong DRM and no vaults present.
    Quote Quote  
  12. Member
    Join Date
    Oct 2023
    Location
    Donesville
    Search PM
    I pushed out a small update to NINE that adds direct http(s) mp4 detection for some videos. They tend to have a higher bitrate than HLS. DASH will still follow the existing logic for protected videos.

    https://github.com/billybanana80/unshackle-services/tree/master/NINE

    BTW I've now archived my Unshackle services repo and will concentrate my efforts on Ozivine and Eurovine.
    Last edited by billybanana; 11th Aug 2026 at 05:25.
    Quote Quote  
  13. Member
    Join Date
    Aug 2005
    Location
    England
    Search Comp PM
    Never used StabbedByBrick's ALL4 service before but not having much luck. Trying this:

    Code:
    uv run unshackle dl -r "SDR" -q "1080" --best-available -l best "ALL4" https://www.channel4.com/programmes/big-fat-quiz-best-bits/on-demand/78560-004
    Error is:

    Code:
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
                           v 5.5.0 (28b7c54) - © 2025-2026 -
                           github.com/unshackle-dl/unshackle
    
         Loaded 26 services
         Service Config loaded
         Loaded 0/0 Vaults
    
      ────────────────────────────── Service: ALL4 ───────────────────────────────
    
         Service is not Geoblocked in your region
          + Acquired tokens...
         Authenticated with Service
    
      ───────────────────── Series: Big Fat Quiz: Best Bits ──────────────────────
    
         1 season, S2(1)
    
      ───────────── Big Fat Quiz: Best Bits S02E04 Ultimate Triumphs ─────────────
    
         Skipping HLG video tracks as none are available.
         There's no 2160p Video Track, continuing with available qualities...
    
         1 Video
         └── [H.264, SDR] | en | 1920x1080 @ 7463 kb/s, 25.000 FPS
             ⠸ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • --:-- • FAILED
         1 Audio
         └── [AAC] | en | 2.0 | 135 kb/s
              ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 00:00 • SKIPPED
         1 Subtitle
         └── [VTT] | en
              ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ • 00:00 • SKIPPED
         5 Chapters
         ├── 00:00:00.000 | Chapter 01
         ├── 00:15:26.000 | Chapter 02
         ├── 00:27:51.000 | Chapter 03
         ├── 00:38:14.000 | Chapter 04
         └── 00:46:30.280 | Credits
    
    
         ❌ Download Failed...
            ValueError: Title needs a Widevine CDM but ALL4 is configured with
         PlayReady.
            An unexpected error occurred in one of the download workers.
    
    ValueError: Title needs a Widevine CDM but ALL4 is configured with PlayReady.
    Am I missing something obvious? Some kind of Widevine setup I need to do?

    EDIT: Never mind, realised I was missing CDM setup, the error message is just a bit confusing as it implies the service isn't configured correctly.
    Last edited by DragonQ; 17th Aug 2026 at 06:51.
    Quote Quote  
  14. What is the best way to update Unshackle. Is it still back up your .yaml and use:

    git pull

    uv snyc

    Thanks in advance.
    Quote Quote  
  15. Originally Posted by Tom Saurus View Post
    What is the best way to update Unshackle. Is it still back up your .yaml and use:

    git pull

    uv snyc

    Thanks in advance.
    Shouldn't affect your yaml at all but git pull is the only way to update it
    Quote Quote  
  16. Originally Posted by PSXman_uk View Post
    Originally Posted by Tom Saurus View Post
    What is the best way to update Unshackle. Is it still back up your .yaml and use:

    git pull

    uv snyc

    Thanks in advance.
    Shouldn't affect your yaml at all but git pull is the only way to update it
    Thank you for this information.
    Quote Quote  
  17. Originally Posted by Tom Saurus View Post
    Originally Posted by PSXman_uk View Post
    Originally Posted by Tom Saurus View Post
    What is the best way to update Unshackle. Is it still back up your .yaml and use:

    git pull

    uv snyc

    Thanks in advance.
    Shouldn't affect your yaml at all but git pull is the only way to update it
    Thank you for this information.
    Add yaml to gitignore to be super safe
    Quote Quote  
  18. It is always good to have your up to date .yaml backed up somewhere else just in case as well.

    My Unshackle is buried deep and isn't part of git anymore:

    "C:\Users\sheld\AppData\Roaming\uv\tools\unshackle \Lib\site-packages\unshackle"

    Code:
    C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackle>git pull
    fatal: not a git repository (or any of the parent directories): .git
    
    C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackle>
    Quote Quote  
  19. Originally Posted by YmFzZTY0 View Post
    Originally Posted by iamghost View Post
    use search to get correct video ID
    Code:
    uv run unshackle search pluto "The Beverly Hillbillies"
    Code:
      ────────────────────────────── Service: PLUTO ──────────────────────────────
    
         Service has no Geofence
    
      ──────────────────────────── 89 Search Results ─────────────────────────────
    
         Return of the Beverly Hillbillies  movie
         id: /movies/674610dde835570013ca0f7c/details
    
         The Beverly Hillbillies  series
         id: /series/5fb80beee8b7e6001a753aa8/details
    
         The Big Show  movie
         id: /movies/69c49759351d15c1115649c3/details
    
         Beverly Hills Pawn  series
         id: /series/5fe26a447f73ec001aa9556f/details
    Great call
    Can this "search" feature also be used with envied? as I am having trouble finding the url of a particular movie. I can play the movie within chrome or firefox, but stream detector only shows me an mpd item.

    movie in question:https://pluto.tv/gb_ie/movies/6448edc9dd38b4001a8dd813/#open

    I have already attempted uv run envied dl PLUTO https://pluto.tv/gb_ie/movies/6448edc9dd38b4001a8dd813/ (both with and without the "/" and both give an error, with part of the error stating

    :138 │ │ except Exception: │
    │ ❱ 139 │ │ │ raise ValueError("Could not parse ID from title - is the U │
    │ 140 │ │ │
    │ 141 │ │ if kind == "series" and episode_id: │
    │ 142 │ │ │ r = self.session.get(self.config["endpoints"]["series"].fo

    Im guessing that error is telling me that I have not added the correct url for the movie in question.


    I attempted it:

    and envied kind of worked, I received this back:


    The Trench movie
    id: /movies/6448edc9dd38b4001a8dd813/details

    World War I in the Trenches series
    id: /series/68d150ee83275eb994ee8aea/details

    Beyond the Reach movie
    id: /movies/69382439779bf41d1dbe02c9/details

    Sadly, thats as far as i got.

    I'm really sorry for posting this chaps... my apologies for wasting peoples time. I managed to work it out:
    uv run envied dl PLUTO /movies/6448edc9dd38b4001a8dd813

    I knew I should have waited: Download fine, but threw an error at the end:
    Image
    [Attachment 93483 - Click to enlarge]
    Last edited by LastResort; 18th Aug 2026 at 14:57. Reason: update
    Quote Quote  
  20. Hi, Is there a zip of services for Unshackle anywhere? Thanks
    Quote Quote  
  21. Member
    Join Date
    Dec 2021
    Location
    england
    Search Comp PM
    ...
    Quote Quote  
  22. Member
    Join Date
    Dec 2021
    Location
    england
    Search Comp PM
    Originally Posted by iamghost View Post

    Originally Posted by SL33K View Post
    Hi, Is there a zip of services for Unshackle anywhere? Thanks

    https://git.gay/stabbedbybrick/unshackle-services
    Quote Quote  
  23. Thank you iamghost. edited and saved.
    Quote Quote  
  24. [QUOTE=iamghost;2802240]
    Originally Posted by iamghost View Post


    Originally Posted by SL33K View Post
    Hi, Is there a zip of services for Unshackle anywhere? Thanks

    https://git.gay/stabbedbybrick/unshackle-services
    Archived, now, never to be updated, so as the services change their API, you will have to be able to debug and make amendments yourself.

    This repository has been archived on June 22, 2026. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
    Quote Quote  
  25. [QUOTE=YmFzZTY0;2802285]
    Originally Posted by iamghost View Post
    Originally Posted by iamghost View Post


    Originally Posted by SL33K View Post
    Hi, Is there a zip of services for Unshackle anywhere? Thanks

    https://git.gay/stabbedbybrick/unshackle-services
    Archived, now, never to be updated, so as the services change their API, you will have to be able to debug and make amendments yourself.

    This repository has been archived on June 22, 2026. You can view files and clone it, but you cannot make any changes to its state, such as pushing and creating new issues, pull requests or comments.
    We are hopeful that stabbedbybrick will be back and find his passion again. Regardless stabbedbybrick is a smart person and he has the gratitude of many of us from when he got Freevine going and then we migrated to Devine and then to Unshackle. I especially appreciate what he did with the Pluto service. Back in the Freevine days he figured out how to remedy what is referred to as bumpers which was causing lip sync issues with some of the downloaded files.

    I am going to rely on Twinvine specifically Envied for awhile. I did a git pull of Unshackle a few months back and the process seemed to work but the version number never changed to the version I was upgrading to. So I deleted Unshackle and went to Github and used that "tool git pull" as that was the only way available as the other way is not there anymore. I prefer a folder in my C: drive to hold most of the program. Now it buried deep and I think I will not delete it and start over as parts of Unshackle are here and there. Envied is working fine and Unshackle may work as well for awhile longer when it doesn't work I will cross that bridge when I come to it. But I am big fan of how Angela has laid out the instructions on how to set up Twinvine and it is impressive. Unshackle is obviously impressive as well and thankfully Twinvine is evolving along with Unshackle.
    Quote Quote  
  26. Someone sent me a PM to help with Unshackle. They wanted to get something from SEVEN. It has been quite a while since I checked out SEVEN as I have been busy with other services. I do have an account and I do have Export Cookie installed. I put my credentials into my .yaml. But I put them in after I had already exported a .txt cookie after signing in at SEVEN. I exported the cookie to my cookie folder in Unshackle and renamed it SEVEN.

    I tried to do a list for a TV show and Unshackle put up this error. Then I thought maybe I better put my credentials into the .yaml and maybe that will remedy this error and it didn't. I appreciate any advice on this issue.

    Code:
    C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackle>uv run unshackle dl --list-titles SEVEN https://7plus.com.au/sons-and-daughters
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
               v 5.3.0 - © 2025-2026 - github.com/unshackle-dl/unshackle
    
    
                  ⚠️  Update available! Current: 5.3.0 → Latest: 5.4.0
            Visit: https://github.com/unshackle-dl/unshackle/releases/latest
    
         Loaded 24 services
         Service Config loaded
         Loaded 1/1 Vaults
         Loaded Widevine CDM: 4464 (L3)
    
      ────────────────────────────── Service: SEVEN ──────────────────────────────
    
         Service is not Geoblocked in your region
          + Authenticating...
    ╭───────────────────── Traceback (most recent call last) ──────────────────────╮
    │ in _run_module_as_main:198                                                   │
    │ in _run_code:88                                                              │
    │                                                                              │
    │ in <module>:10                                                               │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1524 in __call__                                                       │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1445 in main                                                           │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1912 in invoke                                                         │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1912 in invoke                                                         │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1881 in _process_result                                                │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:877 in invoke                                                          │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackl │
    │ e\commands\dl.py:1375 in result                                              │
    │                                                                              │
    │   1372 │   │   │   try:                                                      │
    │   1373 │   │   │   │   cookies = self.get_cookie_jar(self.service, self.prof │
    │   1374 │   │   │   │   credential = self.get_credentials(self.service, self. │
    │ ❱ 1375 │   │   │   │   service.authenticate(cookies, credential)             │
    │   1376 │   │   │   │   if cookies or credential:                             │
    │   1377 │   │   │   │   │   self.log.info("Authenticated with Service")       │
    │   1378 │   │   │   │   │   log_event(                                        │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackl │
    │ e\services\SEVEN\__init__.py:152 in authenticate                             │
    │                                                                              │
    │   149 │   │   │                                                              │
    │   150 │   │   │   id_token = response.json().get("id_token")                 │
    │   151 │   │   │   if not id_token:                                           │
    │ ❱ 152 │   │   │   │   raise ValueError(f"Failed to fetch JWT: {response.text │
    │   153 │   │   │                                                              │
    │   154 │   │   │   headers = {                                                │
    │   155 │   │   │   │   "accept": "application/json, text/plain, */*",         │
    ╰──────────────────────────────────────────────────────────────────────────────╯
    ValueError: Failed to fetch JWT: {
      "callId": "01a02963ee3f7f35b3895f22ed7119b3",
      "errorCode": 403005,
      "errorDetails": "Unauthorized user",
      "errorMessage": "Unauthorized user",
      "apiVersion": 2,
      "statusCode": 403,
      "statusReason": "Forbidden",
      "time": "2026-08-22T12:13:30.067Z"
    }
    
    C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackle>uv run unshackle dl --list-titles SEVEN https://7plus.com.au/sons-and-daughters
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
               v 5.3.0 - © 2025-2026 - github.com/unshackle-dl/unshackle
    
    
                  ⚠️  Update available! Current: 5.3.0 → Latest: 5.4.0
            Visit: https://github.com/unshackle-dl/unshackle/releases/latest
    
         Loaded 24 services
         Service Config loaded
         Loaded 1/1 Vaults
         Loaded Widevine CDM: 4464 (L3)
    
      ────────────────────────────── Service: SEVEN ──────────────────────────────
    
         Service is not Geoblocked in your region
          + Authenticating...
    ╭───────────────────── Traceback (most recent call last) ──────────────────────╮
    │ in _run_module_as_main:198                                                   │
    │ in _run_code:88                                                              │
    │                                                                              │
    │ in <module>:10                                                               │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1524 in __call__                                                       │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1445 in main                                                           │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1912 in invoke                                                         │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1912 in invoke                                                         │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1881 in _process_result                                                │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:877 in invoke                                                          │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackl │
    │ e\commands\dl.py:1375 in result                                              │
    │                                                                              │
    │   1372 │   │   │   try:                                                      │
    │   1373 │   │   │   │   cookies = self.get_cookie_jar(self.service, self.prof │
    │   1374 │   │   │   │   credential = self.get_credentials(self.service, self. │
    │ ❱ 1375 │   │   │   │   service.authenticate(cookies, credential)             │
    │   1376 │   │   │   │   if cookies or credential:                             │
    │   1377 │   │   │   │   │   self.log.info("Authenticated with Service")       │
    │   1378 │   │   │   │   │   log_event(                                        │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackl │
    │ e\services\SEVEN\__init__.py:152 in authenticate                             │
    │                                                                              │
    │   149 │   │   │                                                              │
    │   150 │   │   │   id_token = response.json().get("id_token")                 │
    │   151 │   │   │   if not id_token:                                           │
    │ ❱ 152 │   │   │   │   raise ValueError(f"Failed to fetch JWT: {response.text │
    │   153 │   │   │                                                              │
    │   154 │   │   │   headers = {                                                │
    │   155 │   │   │   │   "accept": "application/json, text/plain, */*",         │
    ╰──────────────────────────────────────────────────────────────────────────────╯
    ValueError: Failed to fetch JWT: {
      "callId": "01a02965b4ad71a1a425d8618870bf01",
      "errorCode": 403005,
      "errorDetails": "Unauthorized user",
      "errorMessage": "Unauthorized user",
      "apiVersion": 2,
      "statusCode": 403,
      "statusReason": "Forbidden",
      "time": "2026-08-22T12:15:26.401Z"
    }
    
    C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackle>uv run unshackle dl --list-titles SEVEN https://7plus.com.au/sons-and-daughters
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
               v 5.3.0 - © 2025-2026 - github.com/unshackle-dl/unshackle
    
    
                  ⚠️  Update available! Current: 5.3.0 → Latest: 5.4.0
            Visit: https://github.com/unshackle-dl/unshackle/releases/latest
    
         Loaded 24 services
         Service Config loaded
         Loaded 1/1 Vaults
         Loaded Widevine CDM: 4464 (L3)
    
      ────────────────────────────── Service: SEVEN ──────────────────────────────
    
         Service is not Geoblocked in your region
          + Authenticating...
    ╭───────────────────── Traceback (most recent call last) ──────────────────────╮
    │ in _run_module_as_main:198                                                   │
    │ in _run_code:88                                                              │
    │                                                                              │
    │ in <module>:10                                                               │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1524 in __call__                                                       │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1445 in main                                                           │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1912 in invoke                                                         │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1912 in invoke                                                         │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:1881 in _process_result                                                │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\click\co │
    │ re.py:877 in invoke                                                          │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackl │
    │ e\commands\dl.py:1375 in result                                              │
    │                                                                              │
    │   1372 │   │   │   try:                                                      │
    │   1373 │   │   │   │   cookies = self.get_cookie_jar(self.service, self.prof │
    │   1374 │   │   │   │   credential = self.get_credentials(self.service, self. │
    │ ❱ 1375 │   │   │   │   service.authenticate(cookies, credential)             │
    │   1376 │   │   │   │   if cookies or credential:                             │
    │   1377 │   │   │   │   │   self.log.info("Authenticated with Service")       │
    │   1378 │   │   │   │   │   log_event(                                        │
    │                                                                              │
    │ C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackl │
    │ e\services\SEVEN\__init__.py:152 in authenticate                             │
    │                                                                              │
    │   149 │   │   │                                                              │
    │   150 │   │   │   id_token = response.json().get("id_token")                 │
    │   151 │   │   │   if not id_token:                                           │
    │ ❱ 152 │   │   │   │   raise ValueError(f"Failed to fetch JWT: {response.text │
    │   153 │   │   │                                                              │
    │   154 │   │   │   headers = {                                                │
    │   155 │   │   │   │   "accept": "application/json, text/plain, */*",         │
    ╰──────────────────────────────────────────────────────────────────────────────╯
    ValueError: Failed to fetch JWT: {
      "callId": "01a0297767b1735588ec39912e9fb84f",
      "errorCode": 403005,
      "errorDetails": "Unauthorized user",
      "errorMessage": "Unauthorized user",
      "apiVersion": 2,
      "statusCode": 403,
      "statusReason": "Forbidden",
      "time": "2026-08-22T12:34:46.344Z"
    }
    
    C:\Users\sheld\AppData\Roaming\uv\tools\unshackle\Lib\site-packages\unshackle>
    Quote Quote  
  27. Member
    Join Date
    Mar 2006
    Location
    United States
    Search Comp PM
    Originally Posted by Tom Saurus View Post
    Someone sent me a PM to help with Unshackle. They wanted to get something from SEVEN. It has been quite a while since I checked out SEVEN as I have been busy with other services. I do have an account and I do have Export Cookie installed. I put my credentials into my .yaml. But I put them in after I had already exported a .txt cookie after signing in at SEVEN. I exported the cookie to my cookie folder in Unshackle and renamed it SEVEN.

    I tried to do a list for a TV show and Unshackle put up this error. Then I thought maybe I better put my credentials into the .yaml and maybe that will remedy this error and it didn't. I appreciate any advice on this issue.
    Truncated your post to save space in my reply. Tom Saurus what browser are you using and extension to export your cookies? I had the same issue as you, hadn't tried SEVEN in a while, but when I tried I had the same issue:

    Code:
    **user**~ % unshackle dl --list-titles SEVEN https://7plus.com.au/riviera
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
                           v 5.5.0 (4e62bcb) - © 2025-2026 -
                           github.com/unshackle-dl/unshackle
    
         Loaded 30 services
         Service Config loaded
         Loaded 1/1 Vaults
         Loaded Widevine CDM: 4464 (L3)
         Loaded Basic: 3 Countries (3 Servers)
    
      ────────────────────────────── Service: SEVEN ──────────────────────────────
    
         Service is not Geoblocked in your region
          + Authenticating...
    ╭───────────────────── Traceback (most recent call last) ──────────────────────╮
    │ /Users/**user**/.local/bin/unshackle:10 in <module>                         │
    │                                                                              │
    │    7 │   │   sys.argv[0] = sys.argv[0][:-11]                                 │
    │    8 │   elif sys.argv[0].endswith(".exe"):                                  │
    │    9 │   │   sys.argv[0] = sys.argv[0][:-4]                                  │
    │ ❱ 10 │   sys.exit(main())                                                    │
    │   11                                                                         │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/rich_click/rich_command.py:402 in __call__                                 │
    │                                                                              │
    │   399 │   │   # Include this here because I run into a false warning         │
    │   400 │   │   # in the PyCharm IDE otherwise; for some reason PyCharm doesn' │
    │   401 │   │   # seem to think RichGroups are callable. (No issues with Mypy, │
    │ ❱ 402 │   │   return super().__call__(*args, **kwargs)                       │
    │   403 │                                                                      │
    │   404 │   @overload                                                          │
    │   405 │   def command(self, __func: Callable[..., Any]) -> RichCommand: ...  │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/click/core.py:1569 in __call__                                             │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/rich_click/rich_command.py:216 in main                                     │
    │                                                                              │
    │   213 │   │   try:                                                           │
    │   214 │   │   │   try:                                                       │
    │   215 │   │   │   │   with self.make_context(prog_name, args, **extra) as ct │
    │ ❱ 216 │   │   │   │   │   rv = self.invoke(ctx)                              │
    │   217 │   │   │   │   │   if not standalone_mode:                            │
    │   218 │   │   │   │   │   │   return rv                                      │
    │   219 │   │   │   │   │   # it's not safe to `ctx.exit(rv)` here!            │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/click/core.py:1970 in invoke                                               │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/click/core.py:1970 in invoke                                               │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/click/core.py:1939 in _process_result                                      │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/click/core.py:907 in invoke                                                │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/unshackle/core/temp.py:77 in wrapper                                       │
    │                                                                              │
    │   74 │   @functools.wraps(fn)                                                │
    │   75 │   def wrapper(*args: P.args, **kwargs: P.kwargs) -> R:                │
    │   76 │   │   with task_temp_dir():                                           │
    │ ❱ 77 │   │   │   return fn(*args, **kwargs)                                  │
    │   78 │                                                                       │
    │   79 │   return wrapper                                                      │
    │   80                                                                         │
    │                                                                              │
    │ /Users/**user**/.local/share/uv/tools/unshackle/lib/python3.11/site-package │
    │ s/unshackle/commands/dl.py:1614 in result                                    │
    │                                                                              │
    │   1611 │   │   │   try:                                                      │
    │   1612 │   │   │   │   cookies = self.get_cookie_jar(self.service, self.prof │
    │   1613 │   │   │   │   credential = self.get_credentials(self.service, self. │
    │ ❱ 1614 │   │   │   │   service.authenticate(cookies, credential)             │
    │   1615 │   │   │   │   if cookies or credential:                             │
    │   1616 │   │   │   │   │   self.log.info("Authenticated with Service")       │
    │   1617 │   │   │   │   │   log_event(                                        │
    │                                                                              │
    │ /Users/**user**/.config/unshackle/services/SEVEN/__init__.py:152 in         │
    │ authenticate                                                                 │
    │                                                                              │
    │   149 │   │   │                                                              │
    │   150 │   │   │   id_token = response.json().get("id_token")                 │
    │   151 │   │   │   if not id_token:                                           │
    │ ❱ 152 │   │   │   │   raise ValueError(f"Failed to fetch JWT: {response.text │
    │   153 │   │   │                                                              │
    │   154 │   │   │   headers = {                                                │
    │   155 │   │   │   │   "accept": "application/json, text/plain, */*",         │
    ╰──────────────────────────────────────────────────────────────────────────────╯
    ValueError: Failed to fetch JWT: {
      "callId": "01a02acccc607509929e9bc3e7752994",
      "errorCode": 403005,
      "errorDetails": "Unauthorized user",
      "errorMessage": "Unauthorized user",
      "apiVersion": 2,
      "statusCode": 403,
      "statusReason": "Forbidden",
      "time": "2026-08-22T18:47:39.890Z"
    }
    Figured out an got it working as I had been using Chrome. I guess maybe I have too many extensions causing an issue.

    So I tried Firefox and used "Export Cookies" extension, this output .txt allowed it seems 1 additional record/line. Due to this, replaced the .txt cookie file SEVEN reads from, and it worked right away:

    Code:
    **user**~ % unshackle dl --list-titles SEVEN https://7plus.com.au/riviera
    
                    ▄• ▄▌ ▐ ▄ .▄▄ ·  ▄ .▄ ▄▄▄·  ▄▄· ▄ •▄ ▄▄▌  ▄▄▄ .
                    █▪██▌•█▌▐█▐█ ▀. ██▪▐█▐█ ▀█ ▐█ ▌▪█▌▄▌▪██•  ▀▄.▀·
                    █▌▐█▌▐█▐▐▌▄▀▀▀█▄██▀▐█▄█▀▀█ ██ ▄▄▐▀▀▄·██▪  ▐▀▀▪▄
                    ▐█▄█▌██▐█▌▐█▄▪▐███▌▐▀▐█ ▪▐▌▐███▌▐█.█▌▐█▌▐▌▐█▄▄▌
                     ▀▀▀ ▀▀ █▪ ▀▀▀▀ ▀▀▀ · ▀  ▀ ·▀▀▀ ·▀  ▀.▀▀▀  ▀▀▀
                           v 5.5.0 (4e62bcb) - © 2025-2026 -
                           github.com/unshackle-dl/unshackle
    
         Loaded 30 services
         Service Config loaded
         Loaded 1/1 Vaults
         Loaded Widevine CDM: 4464 (L3)
         Loaded Basic: 3 Countries (3 Servers)
    
      ────────────────────────────── Service: SEVEN ──────────────────────────────
    
         Service is not Geoblocked in your region
          + Authenticating...
         Authenticated with Service
    
      ────────────────────────── Series: Riviera (2018) ──────────────────────────
    
         3 seasons, S1(10), S2(10), S3(8)
         ├── Season 1: 10 episodes
         │   ├── 01. Villa Carmella
         │   ├── 02. Faussaires
         │   ├── 03. La Chambre Secrete
         │   ├── 04. Tableaux De Famille
         │   ├── 05. Elena
         │   ├── 06. Travail D'Artiste
         │   ├── 07. Le Don
         │   ├── 08. La Cle
         │   ├── 09. Oeil Pour Oeil
         │   └── 10. A La Vue De Tous
         ├── Season 2: 10 episodes
         │   ├── 01. I Saw What You Did
         │   ├── 02. Revelations
         │   ├── 03. Through Closed Doors
         │   ├── 04. Renaissance
         │   ├── 05. Sad Birthday
         │   ├── 06. Remorse
         │   ├── 07. On The Ruins Of Our Dreams
         │   ├── 08. Developed
         │   ├── 09. On The Way To Truth
         │   └── 10. Water And Fire
         └── Season 3: 8 episodes
             ├── 1. La Dolce Vita
             ├── 2. Le Mistral
             ├── 3. What Falls Away
             ├── 4. Coup De Grace
             ├── 5. Two Graves
             ├── 6. Yes We Can
             ├── 7. An Eye For An Eye
             └── 8. Catch And Kill
    Quote Quote  
  28. I was using the Firefox browser and the addon related to this Github page:

    https://github.com/rotemdan/ExportCookies

    I usually disable and only turn it back on when I need it. You did the right thing truncating my post; I was too thorough in posting that code. It should be working and I am puzzled as to why it isn't. I am glad you got it working. If I remember I stepped away from using Seven as it was particularly sensitive to my VPN and for U.S. series there was the issue where they encoded it to the frame rate and such for Australia and the UK and this results in a noticeable speed up in how fast people are talking. There is of course a way to compensate for that with some settings in VLC but I reasoned that media players and blu ray players don't have these options and re-encoding can cause issues; so stay away from videos like that have been adapted from NTSC to Pal became my policy. I have no problem with videos that are originally PAL as the people are talking at the typical speed.

    I forgot to say thank you for your post. Maybe I will re-install the add on or try another one. Maybe it has something to do with my VPN set in Stealth mode which I am finding currently helps with me downloading more videos before something happens and the downloading fails. SEVEN is very slow for me was well; my DSL maxes out at 10 mbps.
    Quote Quote  
  29. I tried another cookie add on and another failure. Then I went back to export cookies. I generated a cookie for CBC and that worked fine on listing the episodes of a series. I tried again with SEVEN and failure again. It must be some configuration I have wrong for SEVEN. I won't be able to help that person who PM me. I told them about my intention on raising the issue here so maybe they can figure it out from information in this thread for Unshackle.
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!