> ## Documentation Index
> Fetch the complete documentation index at: https://docs.videodb.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Video Highlights to Notion

> Automate video highlight clip extraction and summary generation, stored in Notion using Zapier and VideoDB.

This Zap automates the generation of video highlight clips and summaries from YouTube videos using VideoDB, with the results automatically stored in Notion. The goal is to simplify knowledge capture, optimize workflow efficiency, and create a system that generates insights with minimal manual effort.

## Goals

1. Automate the extraction of highlight clips from YouTube videos
2. Generate concise, insightful summaries for each video
3. Store both highlights and summaries in a designated Notion page
4. Optimize efficiency by leveraging asynchronous processing and targeted workflow triggers

<iframe className="w-full aspect-video rounded-xl" src="https://www.youtube.com/embed/Dmgu-V2YcUs" title="Video Highlights to Notion" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowFullScreen />

## Prerequisites

* A Zapier account to create and manage workflows
* Access to VideoDB with an active API key
* A configured YouTube playlist (e.g., "Informative Videos and Lectures")
* A Notion account with a parent page prepared for storing video highlights and summaries
* Basic understanding of how Zapier workflows (Zaps) function

## Workflow 1: Upload and Indexing Process

### Step 1: Trigger Setup

1. Create a new Zap in Zapier
2. Set the trigger to *New Video in Playlist* (YouTube)
3. Select the playlist (e.g., "Informative Videos and Lectures")

### Step 2: Video Upload and Indexing

1. Add an action step using VideoDB to upload and index the video
2. Connect to VideoDB using the API key
3. Pass the video title and YouTube URL
4. Set a **target label** (e.g., `YT highlights`) to direct the workflow
5. Confirm that a **Job ID** is returned as a token for asynchronous processing

### Step 3: Publish Workflow 1

Once verified, publish this workflow to make it active.

## Workflow 2: Highlight Clips and Summaries

### Step 1: Trigger Setup

1. Create a new Zap in Zapier
2. Set the trigger to *Upload Job Completed* from VideoDB
3. Filter by the target label (`YT highlights`)

### Step 2: Highlight Clip Generation

1. Add an action to generate highlight clips using VideoDB
2. Use prompts such as *"Extract interesting and insightful information"*
3. Select dynamic video ID from the trigger
4. Configure clip aspect ratio and subtitles (optional)
5. Note: this action returns a new **asynchronous Job ID**

### Step 3: Summary Generation

1. Add another action to summarize the video with VideoDB
2. Prompt: *"Create Notion markdown notes capturing key insights"*
3. Use the same video ID dynamically
4. Another asynchronous Job ID will be returned

### Step 4: Delay for Processing

Insert a Zapier delay (e.g., 5-6 minutes) to allow highlight and summary jobs to complete.

### Step 5: Job Status Checks

1. Add steps to check the status of both highlight and summary jobs
2. Verify the results are available (player link for highlights, markdown text for summary)

### Step 6: Notion Storage

1. Add an action to create a new Notion page under the parent "Playlist Highlights" page
2. Use the video title as the page title
3. Insert the summary text first
4. Add a "Highlights" section, including the **VideoDB Player URL** for generated highlight clips

### Step 7: Test and Publish Workflow 2

Test the full process end-to-end. Once successful, publish this workflow.

## Workflow Templates

<CardGroup cols={2}>
  <Card title="Part 1: Upload and Indexing Process" href="https://zapier.com/shared/3baccadd46bf12d5be5bc0a9ed95527b9adb13d4" icon="upload">
    Upload videos and index them in VideoDB
  </Card>

  <Card title="Part 2: Highlight Clips and Summaries" href="https://zapier.com/shared/33cb81a9ef621614bb3047138e259fd9192fa7dd" icon="star">
    Extract highlights and create summaries in Notion
  </Card>
</CardGroup>
