3
votes

I am currently working on an application that manipulates enormous streams of videos and I currently implement a "share on youtube" button so a user ( any user of the application that provided my app with an access token for his youtube account ) can share small parts ( lets say 2 to 7 minutes ) videos on their personal accounts.

In my understanding I require an application from youtube along the user's access key to upload anything. The problem is the application "general" quota is 10k units. Each video upload costs 1605 ( calculated ) units. Meaning that my application can upload up to 6 videos per day because it adds up on the general quota. Is there a way for those units to add up on the per-user quota basis?

If I request an increase to my quota ( lets say 1mil / approved ) that means I can upload ~623 videos.. What would happened if 100 users try to upload a video in their personal accounts ( using my application, thus my application key ) as this response is not reassuring but is also 2 years old.

The code is as straight forward as userSpecificConnection.uploadVideo(video) which creates a userConnection to youtube using the user access token and the application key.

This question seems similar to my question but is 3y/o without a clear answer on the problem that I am currently facing

To clear out my questions :

  1. Is there a way to upload videos on the per-user quota?
  2. As the application is just an intermediate for the users to upload videos to their personal accounts I will not be monitoring how many videos each user uploads to their personal accounts ( as they are personal ) BUT if a user uploads 50 the rest of the users will not be able to upload anything?
  3. Is there a way to avoid this? ( blocking a user from uploading due to an other user reaching the limit ). The users are independent and should not limit each other.

I am not avoiding opening a request for increased quota. Just do not want to start a process that may not help me and will only consume someones time to review my application.

1
You also need to consider that there is a limit to the number of videos you can upload a day anyway. stackoverflow.com/a/52275592/1841839 What is your question exactly most of this seams like statements of facts.DaImTo
@DaImTo my bad not clearing things out of what I ask.. Thank you and I have updated my question accordingly. Should be more clear nowMichael Michailidis

1 Answers

1
votes

Is there a way to upload videos on the per-user quota?

All quotas are against your main quota. So if one user goes crazy and eats all your quota your other users are going to be stuck. Thats how the quota system works unfortunately its project based and not user based.

As the application is just an intermediate for the users to upload videos to their personal accounts I will not be monitoring how many videos each user uploads to their personal accounts ( as they are personal ) BUT if a user uploads 50 the rest of the users will not be able to upload anything?

You will get an error back stating that they have reached their quota limit for the day. You should just display that to them and let them know the quota will reset at midnight west cost USA time.

Is there a way to avoid this? ( blocking a user from uploading due to an other user reaching the limit ). The users are independent and should not limit each other.

Unless you keep track in your application how many uploads the user has made there is no way for you to know they have reached the limit without just trying to do an upload and getting the quota error. Dont worry to much about getting the quota error google doesn't count that errors like that against you just format it nicely for the user.

I am not avoiding opening a request for increased quota. Just do not want to start a process that may not help me and will only consume someones time to review my application.

My rule of thumb is when i have reached 80% usage daily for a quota i normally apply for extension. The youtube api quota can take time to get extended i have heard as long as six weeks.