Budget: 27000 UAH Deadline: 17 days
Hello!
Updating data every 1–60 minutes for 30–50 channels easily hits the daily quota of 10,000 units by default, especially if videos.list/search.list is called thoughtlessly with details. Therefore, a separate quota scheduler can be created that selects methods with minimal cost (for example, combining videos.list with a previous cache of IDs, not using search unnecessarily).
Regarding query aggregation, it is necessary to pull statistics in batches of several videos and channels, rather than one video - one request + fallback mode, where as the limit approaches, the update frequency is automatically reduced and missed slots are logged.
For 30–50 channels, there will be 30–50 separate refresh tokens; YouTube/Google can revoke them when the password changes, suspicious activity occurs, or limits are exceeded, so a centralized token manager is needed. Required: encrypted storage of refresh tokens (KMS/key in secret manager, AES encryption at the database level), an automatic re-auth mechanism: if the refresh token stops working, the system sets the account to "re-authorization needed" status and displays a banner in the UI. And of course, it is necessary to make a fine distinction between app vs user quota and use server-side OAuth with offline access, as recommended by Google.
Best regards,
Georgiy
Senior Software Engineer