> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://docs.reka.ai/vision/youtube-automations/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.reka.ai/_mcp/server. # YouTube Automations > Generate clips automatically whenever a YouTube channel publishes a new video > **Info** > > For chat over text, images and short videos, use the OpenAI-compatible [Chat Completions API](/chat/overview). A YouTube automation watches a YouTube channel. When the channel publishes a new video, Reka Vision starts a [Clip Generation](/vision/highlight-clip-generation) job for it on your account, so highlight clips arrive without you submitting each video by hand. ## Create an automation `POST /v2/youtube-automations` #### Bash ```bash curl -X POST https://vision-agent.api.reka.ai/v2/youtube-automations \ -H "X-Api-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "youtube_channel_id": "UC1234567890abcdefghijk", "youtube_channel_url": "https://www.youtube.com/channel/UC1234567890abcdefghijk", "notify_email": "you@example.com" }' ``` #### Python ```python import requests BASE_URL = "https://vision-agent.api.reka.ai" headers = {"X-Api-Key": REKA_API_KEY} payload = { "youtube_channel_id": "UC1234567890abcdefghijk", "youtube_channel_url": "https://www.youtube.com/channel/UC1234567890abcdefghijk", "notify_email": "you@example.com", } response = requests.post(f"{BASE_URL}/v2/youtube-automations", json=payload, headers=headers) response.raise_for_status() automation = response.json() ``` ### Parameters * **`youtube_channel_id`** (required): ID of the YouTube channel to watch. Cannot be empty. * **`youtube_channel_url`** (optional): URL of the channel. * **`enabled`** (optional): Whether the automation is active. Defaults to `true`. * **`notify_email`** (optional): Email address for notifications about this automation. ### Response ```json { "id": "7c1d3f0e-5b8a-4a6f-9d2e-3f4b5a6c7d8e", "user_id": "user-123", "youtube_channel_id": "UC1234567890abcdefghijk", "youtube_channel_url": "https://www.youtube.com/channel/UC1234567890abcdefghijk", "enabled": true, "notify_email": "you@example.com", "last_checked_at": null, "created_at": "2026-09-30T08:00:00+00:00", "updated_at": "2026-09-30T08:00:00+00:00" } ``` ## List automations `GET /v2/youtube-automations` returns your automations in a `results` array. ```bash curl https://vision-agent.api.reka.ai/v2/youtube-automations \ -H "X-Api-Key: YOUR_API_KEY" ``` ## Get an automation `GET /v2/youtube-automations/{automation_id}` ```bash curl https://vision-agent.api.reka.ai/v2/youtube-automations/7c1d3f0e-5b8a-4a6f-9d2e-3f4b5a6c7d8e \ -H "X-Api-Key: YOUR_API_KEY" ``` ## Update an automation `PATCH /v2/youtube-automations/{automation_id}` changes the channel URL, pauses or resumes the automation, or changes the notification email. Send at least one field. The channel ID cannot be changed; create a new automation instead. ```bash curl -X PATCH https://vision-agent.api.reka.ai/v2/youtube-automations/7c1d3f0e-5b8a-4a6f-9d2e-3f4b5a6c7d8e \ -H "X-Api-Key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{"enabled": false}' ``` ### Parameters * **`youtube_channel_url`** (optional): New channel URL. * **`enabled`** (optional): `false` pauses the automation, `true` resumes it. * **`notify_email`** (optional): New notification email. The response is the updated automation. ## Delete an automation `DELETE /v2/youtube-automations/{automation_id}` ```bash curl -X DELETE https://vision-agent.api.reka.ai/v2/youtube-automations/7c1d3f0e-5b8a-4a6f-9d2e-3f4b5a6c7d8e \ -H "X-Api-Key: YOUR_API_KEY" ``` ```json { "status": "success", "message": "YouTube automation deleted successfully" } ``` > One OpenAI-compatible API for Reka models and a curated selection of open models.