Download privacy protected Vimeo videos
There are a lot of websites with embedded Vimeo videos for training or education purposes. Most likely these videos are domain-level privacy protected. That means only the specific website is permitted to embed the videos. If you try to embed the video on another website you will receive an error message.
Of course it’s very easy to identify the URL of the Vimeo video via the source code of the website but this doesn’t help you. The same error will be displayed if you attempt to access the video directly.
Sorry
Because of its privacy settings, this video cannot be played here.
Furthermore it’s not possible to download the video. There are numerous video download tools which promise a fast and easy download but they will all fail.
Download Vimeo videos
If you dig deeper into the privacy settings of Vimeo you will notice how domain-level privacy is working. Generally it’s no real security feature because it’s only based on the HTTP referer. So it’s no problem to handle this.
First of all we need free web debugging proxy Fiddler. This tool allows us to capture, analyze and modify HTTP and HTTPS traffic. You can download Fiddler here. Please use Fiddler 4 if possible which requires .NET Framework 4.
When the installation is finished please launch Fiddler. Now select “Rules” from the menu and then “Customize Rules…” (or CTRL + R).
A pop-up appears and wants to know if you want to download and install Fiddler2 ScriptEditor. I recommend that because it’s much easier to do the necessary changes with this editor than in Notepad.
In ScriptEditor search for “OnBeforeRequest”. This is where you can put the code to add or modify HTTP headers. We want to add a specific HTTP referer to all requests for Vimeo videos. Enter the following rules and don’t forget to adapt the referer.
if (oSession.uriContains("vimeocdn.com")) {
oSession.oRequest.headers.Add("Referer", "http://www.myreferer.com");
}
if (oSession.uriContains("player.vimeo.com")) {
oSession.oRequest.headers.Add("Referer", "http://www.myreferer.com");
}
Save the File and close ScriptEditor, but leave Fiddler running. The Fiddler part is finished.
The only thing left to do is pointing your download tool to use Fiddler. You can achieve this with configuring a proxy server. I will not discuss it in detail because every software handles this differently. Just add a HTTP proxy with host “localhost” and port “8888”.
Finally you should be able to download privacy protected Vimeo videos.
Sie sehen gerade einen Platzhalterinhalt von X. Um auf den eigentlichen Inhalt zuzugreifen, klicken Sie auf die Schaltfläche unten. Bitte beachten Sie, dass dabei Daten an Drittanbieter weitergegeben werden.
Mehr Informationen
Hello, can you please confirm if this trick is still working? I tried with http://player.vimeo.com/video/133341431/?width=830&height=500&iframe=true
Referrer is http://www.sha-education.com/?q=sha26-presentations
Yes it’s still working with small adjustments.
First of all you have to use two fiddler script rules (see article I updated it). Moreover your referrer should be only “http://www.sha-education.com”. The third thing is make sure that Fiddler decrypts HTTPS connections and trust the Fiddler Root-CA.
Thank you man!
Solved my problem!
Hello Tobi
What is the download tool? Do you mean the Windows Download Tool? Or is an different program for download?
I didn’t refer to a special program. You could use your browser (Chrome, Firefox, etc.) or for example special download tools like JDownloader.
Hello Tobi
You a great man. Thank you so much for
beeing so kind and for your time. Your advices
helped me to solve my problem.
Thanks again.
Hi, I do not have a referrer – I only have a vimeo link e.g. https://player.vimeo.com/video/133341431/
In case a referred is necessary i pasted the link on a site I have access to:
https://www.ezymathtutoring.com.au/migration-new-system/
Would that work?
Also I am not sure how to set up proxy 100% – i googled it and in lan advanced settings for internet explorer i just put htp://127.0.0.1 and 8888 for the port…. but it all just gets stuck.
Not sure where i’m going wrong, with the referrer or proxy?
You need the original referrer. If you don’t have it you cannot continue. The proxy settings should be fine.
Hi
I followed your instruction and I no longer get the privacy error, however I still cannot find the source .mp4 file to download. Tried via inspecting element in chrome& firefox and tried using jdownloader however i’m not very familiar with it?
the vimeo link is : https://player.vimeo.com/video/221451337
referrer: http://legacyelitetraining.co.uk
What else must be done to extract video file from the vimeo link?
You are really close to your target. Go to your chrome tab where you can view the video. Right click the video and select “View page source”. After that search for “.mp4”.
You should get four results. These are the originate URLs of the video. Try all URLs until you find the video with the highest resolution. Now paste that URL into a new tab and again right click on the video. Choose “Save video as…” and the download starts.
Hi! It works in this way . The link contains a long string similar with this one: https://fpdl.vimeocdn.com/vimeo-prod-skyfire…./339588987.mp4?token=….. the video file that ca be download by right click. Thanks Tobi!
If you don’t want to deal with local proxy setup you can use Referer Control plugin for Chrome. You just set what you want to have as a referrer for player.vimeo.com and it will automatically change it every time you open private videos.
Great tip, thanks for your comment!
Can you explain how to use this tool? I’m totally lost in their settings :(
https://www.patreon.com
Will this going to work with this as its already using the HTTPS and not HTTP ? its the most hardest website to download embeded vimeo videos. Please reply when you get chance many thanks for your help on this.
Yes this works with HTTPS.
Hello. Can you explain me exactly what i need to do if i want to download this video (it wil be active just today): https://thetruthaboutcancer.tv/agq-episode-4-20918964/?gl=59fb0bf8595c977c0b17930f&em=jankopetek.sola%40gmail.com
As i am not good with this and got confused i would want whole procedure (and the easyest) to download this. I even dont know what is Referer and what do i need to change there and what do i need to check/do in there (in Fiddler).
For other videos, that i can download i am using aTube Catcher.
This is a YouTube video and has nothing to do with this article.
If you are using Firefox you can try this Add-on. Another possibility is the program youtube-dl-gui.
Tank you!
Hello. Can you explain what I need to do now, because it’s not working.
Video on site: https://radiopaedia.org/courses/abdominal-emergency-radiology-course-online/pages/147
Referrer: “https://radiopaedia.org” is it correct?
Video url: https://player.vimeo.com/video/239720856
I installed Fiddler and paste it:
if (oSession.uriContains(“vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Radiopaedia”, “http://radiopaedia.org”);
}
if (oSession.uriContains(“player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Radiopaedia”, “http://radiopaedia.org”);
}
Is it correct?
I would like to use Jdownloader to download it. Thanks a lot
No it’s not correct. Please try this:
if (oSession.uriContains(“vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://radiopaedia.org”);
}
if (oSession.uriContains(“player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://radiopaedia.org”);
}
Unfortunately, still it’s not working…
Any ideas?
I tried with JDownloader (I set proxy server with “localhost” and port:8888). I have been asked for vimeo user and pass…
Thanks
Hello Mateusz
Why are you traying to download with JDownloader? Open the video with firefox and then click on the video and then select View source and then search for mp4. Copy url and open it in other tab and then right click on video and select save video.
It’s not working ;)
Hello Mateusz
https://gcs-vimeo.akamaized.net/exp=1522396119~acl=%2A%2F857653949.mp4%2A~hmac=035832087bb0fe2429e3c07a7a54c1a2a1c8bc334d68bc651c54d93e0b9834e4/vimeo-prod-skyfire-std-us/01/2944/9/239720856/857653949.mp4
This is what you need?
This is what I used:
if (oSession.uriContains(“vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://radiopaedia.org”);
}
if (oSession.uriContains(“player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://radiopaedia.org”);
}
Hi guys, anyone able to give me a clue on what I might be doing wrong?
Video: https://player.vimeo.com/video/269113832
Referral (using Chrome > F12 > Network): http://lms-chat.trafficmanager.net/?t=80df14e1b29054dc57536a664a99eaa8
What i’m adding to Fiddler:
if (oSession.uriContains(“vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Referer”, “http://lms-chat.trafficmanager.net”);
}
if (oSession.uriContains(“player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Referer”, “http://lms-chat.trafficmanager.net”);
}
Proxy: Went to network setting, and choose to use url 127.0.0.1 port 8888…
Even aftert all this, still unable to load video outside it’s original website…
Using firefox, if I go to http://127.0.0.1:8888/https://player.vimeo.com/video/269113832, this is what I get:
GET /https://player.vimeo.com/video/269113832 HTTP/1.1
Host: 127.0.0.1:8888
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Connection: keep-alive
Upgrade-Insecure-Requests: 1
Cache-Control: max-age=0
Referer: http://lms-chat.trafficmanager.net
Hi Tobi, thanks for your ongoing support!
Unfortunately, I can’t manage to download videos.
– I want to download videos from a closed membership site with url https://training.xyz.com/elearning/videopage_x
– On this page is an embedded Vimeo video
– I can find a Vimeo video url (but not directly in page source, only via Chrome Dev Tools F12). URL is https://player.vimeo.com/video/123456
– When I paste this URL to new tab, it says “Sorry…. because of privacy settings…”
– When I paste this URL to Jdownloader, it wants to have a password
– “.mp4” is displayed nowhere in source
– I have set jdownloader proxy settings to 127.0.0.1:8888 for URL training.xyz.com (i.e. whitelisted this url)
– I updated Fiddler rules to (“Referer”, “https://training.xyz.com”) as well as “(“Referer”, “https://xyz.com”)
– Fiddler is running, JD is running, website is opened, I’m logged in to website
How is JD now supposed to download the embedded mp4??
Thanks in advance!
Bernd, I have the same issue as you. Still couldn’t find a solution.
Hey guys!
So i am not that into source codes and stuff.
I tried to download this video https://player.vimeo.com/video/256478671?autoplay=0 several times but i think i am copmletely messing it up.
Can anyone help me with this?
What code should i enter where, to run the download?
How do i run fiddler in OS? Nothing happens.
Hello none
I also tried OS but I couldn’t make it running so I used windows.
Hello Tobi,
Thank you for sharing this knowledge.
I would like to know if the owner of the video will know and can track me if I am downloading the video.
I am asking it because the majority of the videos have copyright.
thank you
Don’t worry this is not possible.
Hello Tobi,
I gave up to use it on Linux, on the other hand I was able to success using the Windows.
Thanks!
Hello Tobi,
Thank you for your help. I will try to apply this procedure to a Vimeo video and send you the feedback.
By the way, I am using Linux OS Ubuntu. Does the Fiddler run on it ?
Hello Tobi I need help.
I’ve already done this part.
if (oSession.uriContains(“vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://training.xyz.com”);
}
if (oSession.uriContains(“player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://training.xyz.com”);
}
The Fidder is running in the background.
What’s next?
Because if i put
https://player.vimeo.com/video/123456789
link to google chrome. I still get the same
Sorry
Because of its privacy settings, this video cannot be played here.
What am I doing wrong?
How do I access the video?
Like this?
http://localhost:8888/https://player.vimeo.com/video/243008420
I’m just getting this response back.
Fiddler Echo Service
GET /https://player.vimeo.com/video/123456789 HTTP/1.1
Host: localhost:8888
Proxy-Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Referer: https://training.xyz.com
This page returned a HTTP/200 response
Originating Process Information: chrome:46948
To configure Fiddler as a reverse proxy instead of seeing this page, see Reverse Proxy Setup
You can download the FiddlerRoot certificate
Help!
Hello,
I have tried to access the link that you are trying to access, and I received the follow message:
“Sorry
This video does not exist.”
I believe that you did everything right, but the video is no more available.
You could try this one: https://player.vimeo.com/video/109727604
just to analyze if the problem is the link or your computer. The Referer is: https://cybrary.it/
Hello Mary J.
I’ve tried your link and typed this in google chrome:
http://localhost:8888/https://player.vimeo.com/video/109727604
This is what i get.
Fiddler Echo Service
GET /https://player.vimeo.com/video/109727604 HTTP/1.1
Host: localhost:8888
Proxy-Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Referer: https://cybrary.it/
This page returned a HTTP/200 response
Originating Process Information: chrome:24572
To configure Fiddler as a reverse proxy instead of seeing this page, see Reverse Proxy Setup
You can download the FiddlerRoot certificate
I’m not getting the actual video link. I don’t know what I did wrong.
By the way I’m using a Windows 10 PC.
Hello Guys, is there a way to discover where a specific site is on vimeio without knowing previously the link ? As far as I am concerning, I need to know the website vimeo.com/”numbers” and the referer. If I only know the refer, and suspect that he is hosting the videos on vimeo. Is there such a mechanism to do it ?
I don’t think that this is possible, sorry.
Hi!
Your method worked wonderfully to access private vimeo video but I’m still having trouble downloading it because browser streams it by m4s segments. Any insight how to overcome that?
The method seems to have stopped working now.
Seems the same to me.
Tobi – could you confirm that.
i am doing same but didn’t work for me please help
video url-https://player.vimeo.com/video/308983249
Referer- http://www.offline.my-pathshala.com
i use this string as you said
if (oSession.uriContains(“vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Referer”, “http://www.offline.my-pathshala.com”);
}
if (oSession.uriContains(“player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Referer”, “http://www.offline.my-pathshala.com”);
}
Man, Thank you so much, I follow all the steps and completely worked.
A Million of Thanks.
Hi,
Thank you for sharing.
In the example you have given the website is http but the site that I am trying to download from is https
I have the url and also the Vimeo video link that comes up in Chrome that displays the above message.
Will the above work on https websites sir?
Also in your code above you do not have ,,
Whereas in the replies you do
Please clarify
Thank you
Yes HTTPS also works.
I am not able to do this. The video is this one: https://player.vimeo.com/video/312512888 and here’s the website: https://cursos.dialetico.com.br/mod/page/view.php?id=290 . I put this on fiddler: if (oSession.uriContains(“„vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Referer”, “, „https://cursos.dialetico.com.br/”);
}
if (oSession.uriContains(“„player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://cursos.dialetico.com.br/”);
}
Then I tried the referer control chrome plugin but I really dont know how it works. Can you tell me if you can do it with this video? I would like to download it
Yes this still works. Use Chrome referer control plugin this is easier.
These settings work for me: https://www.antary.de/wp-content/uploads/2020/03/referer_control_settings.png
Hi Tobi, I did all that but now how do I download the video? I don’t know what to do. Sorry for my ignorance
Hello Tobi,
Is this method still working?
I am having a paid subscription to a video-tutorials website which uses Vimeo.
The website is not accessible through a Normal Web Browser(like Chrome or Firefox) but it uses a Custom Windows App (a modification of chromium project).
I have configured the Fiddler
if (oSession.uriContains(“vimeocdn.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://that.tutorial-site.com”);
}
if (oSession.uriContains(“player.vimeo.com”)) {
oSession.oRequest.headers.Add(“Referer”, “https://that.tutorial-site.com”);
}
Where am I doing it wrong? How Can I download the Video now?
P.S. I analysed the network tab (inspect element) so the content under XHR tab was .m4s
Kindest Regards
Hello Virat,
yes this method still works. But in your case it could be problematic. Can you see the URL of the website in the Windows app? If not you don’t know the referer and can’t download the videos with this method.
Best regards
Tobi
Thanks for your Reply Tobi,
I know the referee. I am just not aware of what to do next after setting up the Fiddler.
Where will I get the video file? Sorry if it’s a noob question.
Regards
Thanks for the article! Recently there is a Chrome extension (https://chrome.google.com/webstore/detail/vimeo-private-downloader/bigelpnhidcahdkpmbgpllmiibdkllai?hl=en) to download private vimeo videos.
This was the simplest– just play the video and click on search vimeo videos and click 1920px or whatever resolution you need.
Hi Tobi,
funktioniert diese Methode immer noch? Ich habe es noch nicht zu 100% verstanden, aber ich zahle ohnehin für die Referrer-Website, auf denen die Videos liegen.
Hallo SB,
kann ich dir leider nicht sagen und aufgrund von Zeitmangel auch nicht testen.
VG Tobi