Skip to main content
The YouTube lane uploads videos and uses native scheduling via publishAt where applicable. It publishes only once a YouTube credential is present in your .env; until then the lane is live-but-unauthenticated and waits for you to connect it (set PENDPOST_MODE=mock to exercise it through the mock driver). You own your YouTube account and are responsible for YouTube’s terms of service. pendpost drafts and schedules, but a human approves before anything goes live.
Verification and private uploads. Until your Google Cloud project passes the YouTube API compliance audit, YouTube may force every upload to private regardless of the privacy you request. Verify the project (and pass the audit) to publish publicly; an unverified project keeps its uploads private no matter what pendpost sends.

Setup ceremony

First create an OAuth client in the Google Cloud console. Then run the interactive auth ceremony, which exchanges the OAuth flow for a durable refresh token and writes it to your .env:

Environment variables

The refresh token

The auth ceremony mints a durable YT_REFRESH_TOKEN. pendpost uses it to obtain fresh access tokens for uploads without re-running the OAuth flow each time, so the lane keeps working unattended.
A lane publishes only once its credential is present. If the YouTube variables are blank, the YouTube lane is live-but-unauthenticated and waits for you to connect it. Set PENDPOST_MODE=mock to exercise it through the mock driver.

Validate the lane

A present credential is not the same as a working one. After setup, validate the YouTube lane in the Setup tab, or run a live probe with the health_recheck tool, to confirm the credential is live and not just configured. The lane is ready when it reports live.
Over MCP. Setup and rotation are an interactive human ceremony; secrets are never written through MCP. An agent can still check status (account_status), run a live liveness probe (health_recheck), and read non-secret config (config_get) over MCP without touching credentials.

Common failures

Honest scheduling

For YouTube, pendpost uses native scheduling through publishAt and is honest about which thumbnail mechanics actually apply. See Honest native scheduling for the broader posture.