This workflow provides an end-to-end automation for discovering, evaluating, and optionally downloading high-quality educational YouTube videos.
It searches YouTube using configurable queries, applies multiple relevance and quality filters, scores the remaining videos, stores the best results in Google Sheets, and optionally downloads selected videos asynchronously using FetchMedia.io.
The workflow is designed to be modular, transparent, and easy to customize for different content curation, research, or archival use cases.
The workflow uses the YouTube Data API to search for videos based on predefined queries.
Videos are filtered using multiple criteria, including:
YouTube returns video duration in ISO-8601 format (for example, PT1M30S).
The workflow converts this value to seconds to enable reliable numeric filtering (for example, Shorts vs long-form videos).
videoId as a unique identifier.Selected video metadata is written to a Google Sheet.
The videoId is used as a stable identifier so rows can be updated later in the workflow.
Selected videos can be submitted to FetchMedia.io for download.
Because downloads are asynchronous:
pending, running, success, failed)When a download completes, the final download URL (or error information) is written back to the corresponding row in Google Sheets.
To use this workflow, you need:
Note: FetchMedia.io is a third-party service and may require a paid account - free tier is available.
The workflow can still be used without the download branch if desired.
This template demonstrates a complete content-curation pipeline:
from discovery, through quality control and scoring, to optional asynchronous media downloading.
It is intended as a practical, production-ready example that can be easily adapted to different workflows.