I’m planning to develop a web application using C# and .NET that connects to Google Drive for storing media files like images and videos. The goal is to create a system where people in our company can share these files easily.
I also need to add custom tags and descriptions to uploaded files so users can search for them later. This means I need some way to attach extra information to each file beyond just the filename.
Has anyone built something similar before? I’m wondering if Google Drive API supports this kind of functionality and if there are any tutorials or documentation that could help me get started with this project.
The Google Drive API does allow for some custom metadata through properties, but there are significant limitations. You can only have up to 30 custom properties per file, with each key-value pair being restricted to 124 bytes. This becomes particularly problematic when searching through a large number of files with such properties. In a similar project, I adopted a hybrid approach: I stored basic file references in Drive while keeping all metadata, tags, and descriptions in a separate SQL database, which greatly improved full-text search performance. This way, you can sync file IDs between your SQL database and Google Drive, allowing your application to manage metadata and search capabilities more effectively. If your application is for internal use, consider utilizing service accounts for authentication, as this can streamline the process considerably compared to dealing with OAuth flows for individual users.
Google Drive API is a pain for this setup. Try Firebase Storage instead - it handles custom metadata way better and the .NET SDK is much cleaner.
Built something like this last year - Google Drive API is a pain for custom metadata. You can add properties but searching gets messy with lots of files.
The real nightmare is authentication flows, file uploads, syncing with your database, and building search. Then you need webhooks for changes, user permissions, and rate limit handling.
Skip all that coding headache and automate it instead. Set up workflows that handle Drive operations, database updates, and search indexing automatically. No complex integration code to maintain.
That’s what I do for our company’s asset system now. Files upload, get tagged, indexed, and become searchable through automated workflows. Way cleaner than custom API code.
Check out Latenode for these automations: https://latenode.com