I do not think that the Youtube Terms of Service or API Terms of Use allow you to:
Excerpt from Youtube ToS (5. K) :
You agree not to access the Content or for any reason other than your personal non-commercial use, solely for the purpose and resolution of the normal functionality of the Service and exclusively for streaming. “Streaming” means the simultaneous transmission of YouTube digital content over the Internet to a device with Internet access turned on so that the data is intended for viewing in real time and is not intended for downloading (permanently or temporarily), is copied, stored or redistributed by the user.
Excerpt from API ToS (II. 11) :
Store copies of YouTube’s audiovisual content
Both state very clearly that neither the user nor the applications created using the API can “store” the content, which is a very direct expression that prohibits you from providing such an option in your application. Now, regardless of whether Youtube provides its users with an interface for downloading its content or not, here the argument is not in order, since Youtube does not need to follow its own ToS, in other words, it depends on them to give its users such an opportunity, but you cannot provide it to users of your application.
I suppose you need a special permission from Youtube to provide this option in your application.
ajawadmahmoud
source share