doodle top mobile

Automate YouTube with Perplexity Computer

Upload videos, set visibility, add custom thumbnails and tags, manage kids content declarations — all from the command line or through your AI agent.

Setup Guide

Please make sure there is always a human in the loop.

doodle left mobiledoodle right mobile

Post to YouTube in Seconds

Terminal

# Install the skill
npx skills add gitroomhq/postiz-agent

# Set your API key
export POSTIZ_API_KEY=your_api_key

# Find your YouTube integration
postiz integrations:list

# Upload a video
VIDEO=$(postiz upload video.mp4)
VIDEO_URL=$(echo "$VIDEO" | jq -r '.path')

# Schedule a YouTube upload
postiz posts:create \
  -c "Description of my awesome video" \
  -m "$VIDEO_URL" \
  -s "2025-01-15T10:00:00Z" \
  --settings '{"title":"My Awesome Video","type":"public","selfDeclaredMadeForKids":"no"}' \
  -i "your-youtube-integration-id"

YouTube-Specific Features

🎬

Video Uploads

Upload videos directly via the CLI. Supports all major formats including MP4, MOV, AVI, MKV, and WEBM.

👁

Visibility Control

Set videos to public, unlisted, or private. Control who can discover and watch your content from the start.

🧒

Kids Content

Declare whether your content is made for kids to comply with YouTube's COPPA requirements. Set per video.

🖼

Custom Thumbnails

Upload and attach custom thumbnail images to your videos. First impressions matter — control your click-through rate.

🏷

Tags & Metadata

Add tags to improve discoverability. Each tag has a value and label for flexible categorization and SEO.

📅

Scheduled Publishing

Schedule video uploads with precise timestamps. Videos are uploaded and set to publish at your chosen time.

How It Works

1

Find Your YouTube Integration

List your connected accounts and grab your YouTube integration ID. You can also fetch available settings to see what options are supported.

Discovery

# List all integrations
postiz integrations:list

# Filter for YouTube
postiz integrations:list | jq \
  '.[] | select(.identifier=="youtube")'

# Get YouTube settings schema
postiz integrations:settings <youtube-id>
2

Upload Your Video & Thumbnail

Upload your video file and optionally a custom thumbnail. YouTube requires media to be accessible via HTTPS. Supports MP4, MOV, AVI, MKV, WEBM, and more.

Upload

# Upload video and extract URL
RESULT=$(postiz upload video.mp4)
VIDEO_URL=$(echo "$RESULT" | jq -r '.path')

# Upload custom thumbnail
THUMB=$(postiz upload thumbnail.jpg)
THUMB_ID=$(echo "$THUMB" | jq -r '.id')
THUMB_PATH=$(echo "$THUMB" | jq -r '.path')

echo $VIDEO_URL
# https://uploads.postiz.com/your-video.mp4
3

Create Your Post

Schedule a YouTube upload with your video, description, title, visibility settings, tags, and optional thumbnail.

Post Creation

postiz posts:create \
  -c "Full video description here" \
  -m "$VIDEO_URL" \
  -s "2025-03-01T09:00:00Z" \
  --settings '{
    "title": "My Tutorial Video",
    "type": "public",
    "selfDeclaredMadeForKids": "no",
    "thumbnail": {
      "id": "thumb-id",
      "path": "thumb-url"
    },
    "tags": [
      {"value": "tutorial", "label": "Tutorial"},
      {"value": "coding", "label": "Coding"}
    ]
  }' \
  -i "youtube-id"

YouTube Settings Reference

Every YouTube post accepts these platform-specific settings via the --settings flag.

FieldTypeDescription
__typestringMust be "youtube"
titlestringVideo title (2-100 characters)
typestringVisibility: "public", "unlisted", or "private"
selfDeclaredMadeForKidsstringKids content declaration: "yes" or "no"
thumbnailobjectCustom thumbnail: {id: string, path: string}
thumbnail.idstringUploaded thumbnail file ID
thumbnail.pathstringPublic URL of the thumbnail image
tagsarrayVideo tags: [{value: string, label: string}]
tags[].valuestringTag value used internally
tags[].labelstringTag display label

Common Configurations

Copy-paste these settings for common YouTube uploading scenarios.

Public Video with Tags

settings.json

{
  "title": "How to Build a REST API in 10 Minutes",
  "type": "public",
  "selfDeclaredMadeForKids": "no",
  "tags": [
    {"value": "tutorial", "label": "Tutorial"},
    {"value": "api", "label": "API"},
    {"value": "coding", "label": "Coding"}
  ]
}

Unlisted Video with Custom Thumbnail

settings.json

{
  "title": "Team Meeting Recording - March 2025",
  "type": "unlisted",
  "selfDeclaredMadeForKids": "no",
  "thumbnail": {
    "id": "thumb-abc123",
    "path": "https://uploads.postiz.com/thumb.jpg"
  }
}

Kids Content Video

settings.json

{
  "title": "Learn Colors with Fun Animations",
  "type": "public",
  "selfDeclaredMadeForKids": "yes",
  "tags": [
    {"value": "kids", "label": "Kids"},
    {"value": "educational", "label": "Educational"},
    {"value": "colors", "label": "Colors"}
  ]
}

Private Draft Video

settings.json

{
  "title": "Draft - Upcoming Product Launch",
  "type": "private",
  "selfDeclaredMadeForKids": "no"
}

What is Perplexity Computer?

Perplexity Computer is a general-purpose digital worker that decomposes high-level goals into subtasks, spawns specialized sub-agents across 19 AI models, and delivers finished results — from code to marketing campaigns.

🧩

Task Decomposition

Perplexity Computer breaks complex social media campaigns into subtasks and handles each one with specialized sub-agents for maximum quality.

🔄

Multi-Model

Spawns sub-agents across 19 different AI models, picking the best model for each subtask — content writing, image generation, scheduling, and more.

🎯

End-to-End Delivery

Schedule recurring tasks with cron jobs. Perplexity Computer can upload your YouTube videos on a schedule without you having to ask each time.

How Postiz Works with Perplexity Computer

When you install Postiz Agent globally, Perplexity Computer automatically discovers it by reading the bundled SKILL.md file. This file tells Perplexity Computer what commands are available, what environment variables are needed, and how to compose YouTube uploads with the right settings.

  • Install Postiz Agent and set your POSTIZ_API_KEY
  • Perplexity Computer discovers Postiz through tool integration
  • Tasks are decomposed across specialized sub-agents
  • Each sub-agent picks the best model for its subtask
  • Results are delivered end-to-end with verification

Install Postiz

# Install the Postiz skill
npx skills add gitroomhq/postiz-agent

# Set your API key
export POSTIZ_API_KEY=your_api_key

# Perplexity Computer discovers Postiz
# through its tool integration system
# and decomposes tasks across sub-agents

YouTube Uploading with Perplexity Computer

Message Perplexity Computer from any platform — it reads the Postiz skill, discovers your YouTube integration, and handles the entire upload workflow autonomously.

🌐

From Any Chat App

Give Perplexity Computer a high-level go...

Send a message to Perplexity Computer from your favorite chat app. It runs as a persistent daemon on your machine, so it picks up your message, discovers your YouTube account via Postiz, uploads the video with thumbnail, and schedules the publish — all while you go about your day.

Perplexity Computer

You: Create a week-long YouTube
  campaign for our product launch

Perplexity Computer:
  Breaking this into subtasks:
  1. Research trending topics
  2. Draft 5 posts with varied angles
  3. Find your YouTube integration
  4. Schedule posts across the week

  All 5 posts scheduled!
  Mon-Fri at 10:00 AM.
🌐

Scheduled & Proactive

Perplexity Computer can execute rec...

Perplexity Computer supports cron-based heartbeat tasks. Set up a recurring job that checks a folder for new videos and uploads them to YouTube automatically — no manual trigger needed.

Perplexity Computer Task

Tell Perplexity Computer:

"Every Monday morning, create a
week's worth of YouTube content
based on trending topics in our
industry. Schedule one post per day
at 10 AM. Use engaging hooks and
relevant hashtags."

Perplexity Computer will:
  1. Research current trends
  2. Generate 5 unique posts
  3. Schedule via Postiz
  4. Report results back

Why Perplexity Computer + Postiz for YouTube

Perplexity Computer makes Postiz a natural fit for your YouTube workflow. The agent discovers all available commands and autonomously chains them together.

  • Decomposes complex YouTube campaigns into optimized subtasks
  • 19 AI models — picks the best one for each part of the workflow
  • End-to-end delivery from ideation to scheduled publishing
  • Research-powered content based on real-time trending topics
  • Cross-post to YouTube + other platforms in a single request
  • Available to Perplexity Max subscribers

SKILL.md (auto-discovered)

---
name: postiz
description: Social media automation
  CLI for scheduling posts across
  30+ platforms including YouTube
metadata:
  perplexity-computer:
    requirements:
      env:
        - POSTIZ_API_KEY
      binaries:
        - postiz
---

# Available Commands
- postiz integrations:list
- postiz integrations:settings <id>
- postiz posts:create
- postiz upload <file>
- postiz analytics:platform <id>

# YouTube Settings
title (2-100 chars), type
(public/unlisted/private),
selfDeclaredMadeForKids,
thumbnail, tags

Also Works with Claude Code

Postiz Agent works as a CLI tool with any AI agent that can execute shell commands — including Anthropic's Claude Code.

C

Claude Code

by Anthropic

Claude reads the SKILL.md file to learn all available Postiz commands, then autonomously discovers your YouTube integration, uploads your video and thumbnail, applies tags and visibility settings, and schedules the upload.

Claude Code

> Upload my tutorial video to YouTube
  as public with tags "coding" and
  "tutorial", schedule for tomorrow

Claude will automatically run:
  postiz integrations:list
  postiz upload ./tutorial.mp4
  postiz upload ./thumbnail.jpg
  postiz posts:create \
    -c "Full tutorial description" \
    -m "uploaded-video-url" \
    -s "2025-03-02T09:00:00Z" \
    --settings '{"title":
      "My Tutorial Video",
      "type":"public",
      "selfDeclaredMadeForKids":"no",
      "tags":[{"value":"coding",
        "label":"Coding"},
        {"value":"tutorial",
        "label":"Tutorial"}]}' \
    -i "youtube-id"

YouTube + Other Platforms

Schedule the same video to YouTube and other platforms in a single command. Each platform gets its own settings.

Terminal

# Post a video to YouTube and TikTok simultaneously
postiz posts:create \
  -c "New tutorial is live! #coding #tutorial" \
  -m "$VIDEO_URL" \
  -s "2025-03-01T09:00:00Z" \
  --settings '{
    "title": "Build a REST API in 10 Minutes",
    "type": "public",
    "selfDeclaredMadeForKids": "no",
    "tags": [
      {"value": "tutorial", "label": "Tutorial"},
      {"value": "api", "label": "API"}
    ]
  }' \
  -i "youtube-id,tiktok-id"

# Batch schedule a week of YouTube uploads
for day in 1 2 3 4 5; do
  postiz posts:create \
    -c "Episode $day of our coding series" \
    -m "episode${day}-video-url" \
    -s "2025-03-0${day}T15:00:00Z" \
    --settings '{"title":"Coding Series Ep '$day'","type":"public","selfDeclaredMadeForKids":"no"}' \
    -i "youtube-id"
done

Start posting to YouTube

Install Postiz Agent and automate your YouTube content strategy with AI-powered scheduling and publishing.

Ready to get started?

Grow your social media presence with Postiz.
Schedule, analyze, and engage with your audience.

Grow your social media presence with Postiz.