udemy-downloader-gui
udemy-downloader-gui copied to clipboard
stuck in "bulding course data"
When i hit the download button. it stuck in building course data forever. please help me....
i am getting the same issue with only one course, i am able to download rest
course URL : https://www.udemy.com/course/the-data-science-course-complete-data-science-bootcamp
The same happens to me, if I try to download this course: https://www.udemy.com/course/the-complete-nodejs-developer-course-2/
It's the only course I got this problem, otherwise it's a very handy tool. Thanks for your fantastic work so far Faisal!
I also get it for some other courses as well. Please fix this @FaisalUmair
Great work @FaisalUmair. But I'm also the same issue for my courses. After clicking download, it doesn't continue downloading.
same here, on every course, even the one's i already downloaded before
I get the same message. Is there any solution?
it looks like its when their as been some changes to the course structure it have that error. Because i am trying to download this course https://www.udemy.com/course/react-the-complete-guide-incl-redux/learn/lecture/8268492?start=30#overview i see that the course structure has changed some section have changed to legacy and its the only course that is not downloading
Me too, it stuck to most of the courses.... The same happened on the Chrome Udemy download extension. Stuck at gathering the course list. Udemy has changed something that failed course listing.
here also the same problem. hope it will be fixed
https://github.com/FaisalUmair/udemy-downloader-gui/issues/570#issuecomment-823101679
Having the same issue here, need help
Same issue here.
copy the code from the below attachement and replace the content in your assets/js/app.js file
The error is due to recent change in Udemy api data mapping
@robotvinay exact loaction please, I'm unable to find the exact path. thanks in advacne
indeed where is that file located(windows)?
copy the code from the below attachement and replace the content in your assets/js/app.js file
The error is due to recent change in Udemy api data mapping
Hey @robotvinay thanks for your solution, but I just upgrade the app,js file, but when I run npm install and npm start, the courses appear like this, idk if I did something wrong

indeed where is that file located(windows)?
You have to download the zip from here https://github.com/FaisalUmair/udemy-downloader-gui That's where you have to search for that file, after change it, you have to open your terminal in the root directory of the project downloaded and type npm install in order to install node modules and dependencies and after that, type npm start in order to start the application
With that it should work
Hi, by terminal you mean command prompt right?, cause I tried that and it doesn't work
Hi, by terminal you mean command prompt right?, cause I tried that and it doesn't work
Yeah, just how I said, it should, but it doesn't seems to work in my computer neither, in my other comment I said what is happening to the app, it says undefined, so idk bro
Alright thanks, hope we get a fix from FaisalUmar soon
have same problem here.. pls help...
@FaisalUmair Could you please check, when you get time....thanks in advance
copy the code from the below attachement and replace the content in your assets/js/app.js file
The error is due to recent change in Udemy api data mapping
After I replaced the app.js file with the new one it fixed the stuck issue, but when the course I was downloading finished, all of the mp4 files were very small(a few kilbobytes) and corrupted. Don't know if it caused by replacing the js file..
copy the code from the below attachement and replace the content in your assets/js/app.js file new app.js.txt The error is due to recent change in Udemy api data mapping
After I replaced the app.js file with the new one it fixed the stuck issue, but when the course I was downloading finished, all of the mp4 files were very small(a few kilbobytes) and corrupted. Don't know if it caused by replacing the js file..
yes. same situation happened to me. the first 6-7 videos downloaded smoothly, but the rest didn't download at all. I think the program skipped them all. There was only the name of the videos in the directory, not actual size.
@taluk48 I am not even able to search courses, any chance you know the reason?
If somebody knows another way to download udemy courses, please let me know, even if it is one by one
@taluk48 I am not even able to search courses, any chance you know the reason?
no. actually, I've never used the program to search courses. I already have less than 10 courses and it is easy for me to see them all together 😄
If somebody knows another way to download udemy courses, please let me know, even if it is one by one
you can try xtreme download manager. but downloading one by one will be tiring.
Can you download only purchased courses?
Can you download only purchased courses?
Hi, actually yes the software works fine for paid courses, even now. But there are some that can't be downloaded it shows "Building Courses Data" error. I have no idea why. Just magic.
@FaisalUmair Would be kind enough and look at this issue. Highly appreciate it.
copy the code from the below attachement and replace the content in your assets/js/app.js file new app.js.txt The error is due to recent change in Udemy api data mapping
After I replaced the app.js file with the new one it fixed the stuck issue, but when the course I was downloading finished, all of the mp4 files were very small(a few kilbobytes) and corrupted. Don't know if it caused by replacing the js file..
yes. same situation happened to me. the first 6-7 videos downloaded smoothly, but the rest didn't download at all. I think the program skipped them all. There was only the name of the videos in the directory, not actual size.
I have the same problem.
Same issue , Help Please @FaisalUmair
Just managed to download 1 course: 'Coaching for Growth and Success' but for any other course getting 'Building Course Data'
It can only download the first video of the course, and the next ones in 5KB. The filenames are correct but video content is missing.
I think this new bug is due to Udemy adding auto-generated subtitles to English videos a couple of weeks ago. Check out videos in other languages and they can all be downloaded with Udeler without any problem. Not sure if it will help @FaisalUmair fix it, but just wanted to give everyone a heads up!
I think this new bug is due to Udemy adding auto-generated subtitles to English videos a couple of weeks ago. Check out videos in other languages and they can all be downloaded with Udeler without any problem. Not sure if it will help @FaisalUmair fix it, but just wanted to give everyone a heads up!
I actually recently tried to download videos, and I'm able to download either Spanish and English courses, except the one that I want 😂
i try download the course not in english... and it success....
copy the code from the below attachement and replace the content in your assets/js/app.js file new app.js.txt The error is due to recent change in Udemy api data mapping
After I replaced the app.js file with the new one it fixed the stuck issue, but when the course I was downloading finished, all of the mp4 files were very small(a few kilbobytes) and corrupted. Don't know if it caused by replacing the js file..
I have the same problem
I am having the same issue. I think this problem applies to only the paid courses. @FaisalUmair, we need a quick fix.
@FaisalUmair first thank you for this amazing work. when you have a free time please look at this matter.thanks.
I've replaced app.js file. It worked, thanks. Same issues arise unfortunately. I disabled subtitle from settings and it doesn't ask subtitle selection anymore. However, video files are still a few kilobytes. This was helping me to learn something else when I'm not connected to the internet. I hope that a developer can fix it for us. I'm not a developer. : (
@FaisalUmair can you please fix this issue?
Hello! Has anyone been able to fix the problem? I tried to replace the app.js file and it does not work. Can't download purchased courses that have sections (chapters). Also tried Udemy Downloader chrom extension & udemy-dl. They also not working(
Hello!
Has anyone been able to fix the problem? I tried to replace the app.js file and it does not work. Can't download purchased courses that have sections (chapters).
Also tried Udemy Downloader chrom extension & udemy-dl. They also not working(
No dude, everything just stopped working
+1 for fixing this problem. @FaisalUmair I would appreciate it if you find time to fix this problem. Thanks in advance 👍
Same issue, Please have a look @FaisalUmair
Many people are facing this issue and all are waiting for you help. Thanks 👍
It seems that he will not come back. It's better to start learning javascript and fork this repo.
Someone know what is 'v.id' ?
Using Postman, the Response Detail is : "You do not have permission to perform this action.".
Do you have the same problem?
function getLecture(lecturename, chapterindex, lectureindex) { $.ajax({ type: "GET", url:
https://${subDomain}.udemy.com/api-2.0/users/me/subscribed-courses/${courseid}/lectures/${v.id}?fields[asset]=stream_urls,download_urls,captions,title,filename,data,body,media_sources,media_license_token&fields[lecture]=asset,supplementary_assets
Someone know what is 'v.id' ?
Using Postman, the Response Detail is : "You do not have permission to perform this action.".
Do you have the same problem?
function getLecture(lecturename, chapterindex, lectureindex) { $.ajax({ type: "GET", url:
https://${subDomain}.udemy.com/api-2.0/users/me/subscribed-courses/${courseid}/lectures/${v.id}?fields[asset]=stream_urls,download_urls,captions,title,filename,data,body,media_sources,media_license_token&fields[lecture]=asset,supplementary_assets
You trying to perform GET request, but without sending auth cookies and getting 403 (Forbidden) error or something else.
v.id - video ID (the number identifier of current video)
Same issue. I cannot download the courses. Every time it gets stuck at "Building course data". Please look into it. Thank you.
here's 50 euro for the one who fix this problem;)
Has anyone tried using an older version if they are available?
https://github.com/r0oth3x49/udemy-dl/issues/627#issuecomment-826085690
Whenever i go on the actual course on Udemy i see that the course is set to no download so maybe that's the issue why its saying building course data.
I can also pay 50$ to someone, who can manage to fix this issue. Fix it, send me a message and you'll 50$ get in your PP.
Whenever i go on the actual course on Udemy i see that the course is set to no download so maybe that's the issue why its saying building course data.
No no, it's possible to download with a simple fetch request to the api.
Whenever i go on the actual course on Udemy i see that the course is set to no download so maybe that's the issue why its saying building course data.
No no, it's possible to download with a simple fetch request to the api.
Do you have the URL of the fetch request?
We need to solve this problem soon
Whenever i go on the actual course on Udemy i see that the course is set to no download so maybe that's the issue why its saying building course data.
No no, it's possible to download with a simple fetch request to the api.
Do you have the URL of the fetch request?
Try this simple function to retrieve a specific lecture information. It is an object with a property called 'asset' that is another object. Inside asset you should see an array called 'media_sources'. Here you should find the video 'src' for different kind of quality.
async function getData(courseID, lectureID) { let response = await fetch(`https://www.udemy.com/api-2.0/users/me/subscribed-courses/${courseID}/lectures/${lectureID}/?fields[lecture]=asset,description,download_url,is_free,last_watched_second&fields[asset]=asset_type,length,media_license_token,course_is_drmed,media_sources,captions,thumbnail_sprite,slides,slide_urls,download_urls`, { "headers": { "authorization": "YOUR_AUTHORIZATION_CODE", } }); let data = await response.json() return data; }
To know your Authorization Code, go on Udemy home page (you should be logged) and open the Network Tab.
Whenever i go on the actual course on Udemy i see that the course is set to no download so maybe that's the issue why its saying building course data.
No no, it's possible to download with a simple fetch request to the api.
Do you have the URL of the fetch request?
Try this simple function to retrieve a specific lecture information. It is an object with a property called 'asset' that is another object. Inside asset you should see an array called 'media_sources'. Here you should find the video 'src' for different kind of quality.
async function getData(courseID, lectureID) { let response = await fetch(`https://www.udemy.com/api-2.0/users/me/subscribed-courses/${courseID}/lectures/${lectureID}/?fields[lecture]=asset,description,download_url,is_free,last_watched_second&fields[asset]=asset_type,length,media_license_token,course_is_drmed,media_sources,captions,thumbnail_sprite,slides,slide_urls,download_urls`, { "headers": { "authorization": "YOUR_AUTHORIZATION_CODE", } }); let data = await response.json() return data; }
To know your Authorization Code, go on Udemy home page (you should be logged) and open the Network Tab.
I'm having problems with find the CourseID, I have found everything else, but that is what makes my fetch request fail.
For testing the api, I'm using postman, hope it works
Whenever i go on the actual course on Udemy i see that the course is set to no download so maybe that's the issue why its saying building course data.
No no, it's possible to download with a simple fetch request to the api.
Do you have the URL of the fetch request?
Try this simple function to retrieve a specific lecture information. It is an object with a property called 'asset' that is another object. Inside asset you should see an array called 'media_sources'. Here you should find the video 'src' for different kind of quality.
async function getData(courseID, lectureID) { let response = await fetch(`https://www.udemy.com/api-2.0/users/me/subscribed-courses/${courseID}/lectures/${lectureID}/?fields[lecture]=asset,description,download_url,is_free,last_watched_second&fields[asset]=asset_type,length,media_license_token,course_is_drmed,media_sources,captions,thumbnail_sprite,slides,slide_urls,download_urls`, { "headers": { "authorization": "YOUR_AUTHORIZATION_CODE", } }); let data = await response.json() return data; }
To know your Authorization Code, go on Udemy home page (you should be logged) and open the Network Tab.![]()
I'm having problems with find the CourseID, I have found everything else, but that is what makes my fetch request fail.
For testing the api, I'm using postman, hope it works
You can use this function to retrieve your courses info
async function getMyCourses() {
let response = await
fetch("https://www.udemy.com/api-2.0/users/me/subscribed-courses/", {
"headers": {
"authorization": "YOUR_AUTHORIZATION_CODE"
}
});
let data = await response.json();
return data;
}
From here you can see all your courses Id.
Whenever i go on the actual course on Udemy i see that the course is set to no download so maybe that's the issue why its saying building course data.
No no, it's possible to download with a simple fetch request to the api.
Do you have the URL of the fetch request?
Try this simple function to retrieve a specific lecture information. It is an object with a property called 'asset' that is another object. Inside asset you should see an array called 'media_sources'. Here you should find the video 'src' for different kind of quality.
async function getData(courseID, lectureID) { let response = await fetch(`https://www.udemy.com/api-2.0/users/me/subscribed-courses/${courseID}/lectures/${lectureID}/?fields[lecture]=asset,description,download_url,is_free,last_watched_second&fields[asset]=asset_type,length,media_license_token,course_is_drmed,media_sources,captions,thumbnail_sprite,slides,slide_urls,download_urls`, { "headers": { "authorization": "YOUR_AUTHORIZATION_CODE", } }); let data = await response.json() return data; }
To know your Authorization Code, go on Udemy home page (you should be logged) and open the Network Tab.![]()
I'm having problems with find the CourseID, I have found everything else, but that is what makes my fetch request fail. For testing the api, I'm using postman, hope it works
You can use this function to retrieve your courses info
async function getMyCourses() { let response = await fetch("https://www.udemy.com/api-2.0/users/me/subscribed-courses/", { "headers": { "authorization": "YOUR_AUTHORIZATION_CODE" } }); let data = await response.json(); return data; }
From here you can see all your courses Id.
Please can you help in downloading udemy courses?
@bissaka what I've done to download one that was stuck in "building course data":
- download the js file attached on https://github.com/FaisalUmair/udemy-downloader-gui/issues/571#issuecomment-823997132
-
git clone https://github.com/FaisalUmair/udemy-downloader-gui && cd udemy-downloader-gui
-
git checkout v1.8.2
- replace the
assets/js/app.js
file by the one downloaded in step (1) -
npm i && npm run build-linux
-
./dist/Udeler-1.8.2.AppImage
EDIT:
THIS DOES NOT WORK
@micalevisk I did same step. but got this error. I do not know why, if you know please tell me. Many thanks
I did the same step and builded AppImage. After launching the app I tried to download the course. Course has downloaded, but the videos from other sections (captures) has height 3-5 kb. 1-st capture screen - https://i.imgur.com/0KgQGO8.png (downloaded videos is correct) 2-nd capture screen - https://i.imgur.com/cnhpIoK.png (downloaded videos corrupted)
@micalevisk can you confirm that your downloaded content is correct/not corrupted?
@micalevisk can you confirm that your downloaded content is correct/not corrupted?
they were corrupeted! lol my bad .-. idk what to do by now
I have done everything i know so far.does anyone know other options to download from udemy.im using a business account so udemey downloder dosent work.my business account going to end so im badly need a way to download. I really appreciate all your help.thanks.
@iam-malithmax have you tried to use extensions like Video DownloadHelper?
@iam-malithmax have you tried to use extensions like Video DownloadHelper?
Such solutions work, but it's more than painful to backup a whole longer course with many videos with this. Especially for courses that get updated more often, this is quite a grind... Or do I overlook an option to download a whole course?
Udeler is quite perfect, and I guess it's probably something small that blocks us. Unluckily I don't have the skills to fix it myself, but I thank everybody in advance who is capable of fixing this. It is so useful...
I support @arjanv also with a little bounty: Next to his 50 EUR I'll donate/PayPal 10$ to the person who fixes the current problem.
@iam-malithmax have you tried to use extensions like Video DownloadHelper?
I just tested it now.dosent work with business account.video sizes only showing in small bytes.anyway thanks for the reply man..
@iam-malithmax have you tried to use extensions like Video DownloadHelper?
A have tried Firefox addon of Video DownloadHelper and it's not working. VideoDownloadHelper downloading videos only from first capture (section). Videos from other sections not downloading
let's each contribute $10 USD to the person who can fix it. Therefore someone might come out and fix it for us
Guys, I'm a developer, I need to download a few courses I recently bought. So I developed an Electron App for doing this, sadly I built the app but the API (backend), this is:
Where the app gets the URL´s for get the videos is simply not working, in the image you can see in the bottom, that the download_url says null, that means that there is not link for download, that is why nothing works 😢
So the main error, is in Udemy API, hope they fix it soon, but for now, we can not do anything

If you have any questions just let me now, I like to help :D
Don't think @FaisalUmair is planning to fix this
is there any new update?
Does anyone know any other alternative way?
Guys, I'm a developer, I need to download a few courses I recently bought. So I developed an Electron App for doing this, sadly I built the app but the API (backend), this is:
Where the app gets the URL´s for get the videos is simply not working, in the image you can see in the bottom, that the download_url says null, that means that there is not link for download, that is why nothing works 😢
So the main error, is in Udemy API, hope they fix it soon, but for now, we can not do anything
![]()
If you have any questions just let me now, I like to help :D
The 'src' link of the course videos is available. You should see an asset object which include a media_source array. Great frontend you should just handle the src link and use a function to download the files. There are all video src for different qualities.
courses with downloads enables seems to work fine but courses with downloads disabled not. downloaded successfully some courses with jdownloader but also a lot does not work, jdownloader says it has somethin to do with udeny's perimeterx protection
Guys, I'm a developer, I need to download a few courses I recently bought. So I developed an Electron App for doing this, sadly I built the app but the API (backend), this is: Where the app gets the URL´s for get the videos is simply not working, in the image you can see in the bottom, that the download_url says null, that means that there is not link for download, that is why nothing works 😢 So the main error, is in Udemy API, hope they fix it soon, but for now, we can not do anything
If you have any questions just let me now, I like to help :D
The 'src' link of the course videos is available. You should see an asset object which include a media_source array. Great frontend you should just handle the src link and use a function to download the files. There are all video src for different qualities.
Well, this is the screenshot from a lecture from a non free course, and idk where is the link for downloading
https://github.com/FaisalUmair/udemy-downloader-gui/issues/581#issuecomment-837029749
Pls can someone explain this process to download udemy courses
https://github.com/FaisalUmair/udemy-downloader-gui/issues/581#issuecomment-837029749
Pls can someone explain this process to download udemy courses
Ok, so first the app needs your token, your token is a code with some information in order to know who is connected to the app
Then, the app can call the Udemy API, with the token in the header, and that call, will give you some information (your courses), in it will be the id's of the courses, you select the course you want, the app will grab the id of the course and will make another call, to get the lectures of the course, and with that, the app will make another call to the Udemy API to get the information of the lecture in that specific course in your specific user, and then, in that call, the response will give you the link of the video in order to download it, but that's the part where the API is not working, because it is a null in there instead of a link
Very basically that's the process
There's nothing to fix here guys....The ride is over.....DRM has come to Udemy.....