We have an app that calculates some metrics from our users' videos on youtube, (about 400k-ish videos at present, rising steadily) - I can initially get the data about their uploads since our users are just arriving piecemeal every day, however keeping it updated every time people log in is absolutely killing our API credit usage (especially for very large channels with 1000s of videos). How can I just determine those videos that have CHANGED their snippet (title, description, tags) since we last asked? - It's very important to the app that changes to videos are reasonably quickly reflected in our users' metrics.
We already get the snippet for users channels in a paged way (50 per page, this seemed to cut our credit usage considerably), and I tried already using etags but it has had no effect on quota usage even if all the videos return 304 - I also searched the docs for a "modifiedDate" and other relevant terms, but I have so far found nothing. I also checked the etag when retrieving just the "id" part, however this etag doesn't change when I modify title, description, or tags....Lastly, we also have a request in to increase our quota, but there must be a better solution than that?
Please read my answer to a somewhat similar question. Note that the respective solution is by no means straightforward to implement, yet it is most likely what you're looking for. Also, I suppose that the activities endpoint may be of help as well.