Create Video Post
Upload a local video and publish or schedule it to YouTube.
Copy this natural-language prompt into your connected AI tool after setup — these are commands, not API code.
For local video files, ask the agent to use the Verlynk CLI (verlynk media:upload, then posts:create / drafts:update with { mediaId, fileType: "video", contentType: "video/mp4" }). Do not invent a CDN URL.
YouTube requires postType: "video", a title, category { id, name }, and privacy. Put the description in text.
Prompt (publish now — preferred)
Using the Verlynk CLI, upload ~/Videos/product-demo.mp4 and publish it now to my YouTube channel titled "Product Demo — Q3 Features" with description "A walkthrough of our latest features." Category Science & Technology, privacy public. Use the profile that owns that YouTube channel.
Prompt (schedule)
Using the Verlynk CLI, upload ~/Videos/product-demo.mp4 and schedule a YouTube video for next Friday at 6:00 PM UTC titled "Product Demo — Q3 Features" with description "A walkthrough of our latest features. Timestamps in the description." Category Science & Technology (id 28), privacy public, notify subscribers.
Prompt (draft, then publish)
Using the Verlynk CLI: upload ~/Videos/product-demo.mp4, save a YouTube draft with title "Product Demo — Q3 Features", category Science & Technology, privacy public, then publish that draft now. Keep the same media object ({ mediaId, fileType: "video", contentType: "video/mp4" }) when updating the draft to publish.
Required YouTube fields
| Field | Where | Notes |
|---|---|---|
postType | post | Must be video |
title | metaData.contents[0].title | Required for a useful YouTube listing |
text | metaData.contents[0].text | Description |
media | metaData.contents[0].media | One item: { mediaId, fileType: "video", contentType: "video/mp4" } |
category | metaData.category | { "id": "28", "name": "Science & Technology" } (required) |
privacy | metaData.privacy | e.g. public, private, unlisted |
Optional: tags, license, embedding, notifySubscribers, madeForKids, paidPromotions, playlist.
Expected Result
A YouTube video post is created for the selected channel. Local-file flows must use CLI/mediaId (not MCP mediaUrl for video). After publish, postStatus becomes PUBLISHED with a YouTube URL when processing finishes.