Approach for searching clips by assignee metadata across large workspace (200+ projects)?

Hi Frame.io developers,

I’m building a dashboard that needs to find all video clips assigned to a specific user across our Frame.io workspace. We’re using the V4 API and running into performance challenges
with our current approach.

Our Structure:

  • 1 Account
  • 1 Workspace
  • ~200 Projects
  • Each project has multiple nested folders (up to 3-4 levels deep)
  • Up to 50 video clips per project
  • Clips use the “Assignee” metadata field (user_single type) to track assignments

Current Challenge:
We need to find all clips where the “Assignee” metadata field matches a specific user ID. Currently, we’re having to:

  1. Iterate through all projects
  2. Recursively traverse folder structures
  3. Check metadata for each video file individually
  4. This results in hundreds of API calls and frequent timeouts

What we’ve tried:

  • The /accounts/{id}/search endpoint returns 404 (seems not available in V4?)
  • Iterating through projects/folders/files works but is extremely slow
  • Caching assignments in our database helps but needs to stay in sync

Questions:

  1. Is there a search/filter API in V4 that supports querying by metadata fields directly?
  2. What’s the recommended approach for finding all assets with specific metadata values across a large workspace?
  3. Are webhooks the only scalable solution (listening for metadata changes and maintaining our own database)?
  4. Is there a GraphQL API or bulk metadata fetch option we’re missing?

Any guidance on best practices for this use case would be greatly appreciated. We’re looking for a solution that can scale as our project count grows.

Thanks in advance for any insights!

hi @criuz apologies for the delay on approving your post, it got flagged by our spam filter and just now go to clearing the queue.

Is there a search/filter API in V4 that supports querying by metadata fields directly?

Search is not implemented at this time, it is on the roadmap although I don’t have a timeline just yet.

What’s the recommended approach for finding all assets with specific metadata values across a large workspace?

Unfortunately your method right now is the best method, although you could use the list folder children with include=metadata endpoint to scale the calls to not have it go through every single file if need be, provided it’s returning the correct metadata you need.

/v4/accounts/:account_id/folders/:folder_id/children?include=metadata

Are webhooks the only scalable solution (listening for metadata changes and maintaining our own database)?

at this time, yes.

Is there a GraphQL API or bulk metadata fetch option we’re missing?

Just the list folder children with metadata that I listed above.