Automate Telegram + YouTube
The fastest channel between your agents and your phone. Long-form content worth repurposing everywhere else. Put an agent between them and the hand-off stops being manual: it reads, decides, acts, and shows its work.
Social Scheduler is a ready-made agent built around Telegram; point its last step at YouTube to finish this hand-off.
Automations teams run
Each of these runs with a reasoning step between the two tools, so what reaches YouTube is a decision about the Telegram event rather than a transcription of it.
When a message arrives in Telegram…
…an agent can pull transcripts and stats in YouTube — after reading the context and deciding it should.
When a command is sent in Telegram…
…an agent can draft descriptions and chapters in YouTube — after reading the context and deciding it should.
When a schedule fires in Telegram…
…an agent can summarise comments in YouTube — after reading the context and deciding it should.
When a video is published in YouTube…
…an agent can send messages and alerts in Telegram — with the reasoning recorded in the run’s receipt.
When a comment arrives in YouTube…
…an agent can reply to commands in Telegram — with the reasoning recorded in the run’s receipt.
Telegram to YouTube, setup template
Start with the telegram-api node and the youtube-api node. Configure the Telegram source payload, the agent input, and the YouTube operation. The sequential template does not implement conditional writes or approval by itself.
This is a schema-checked starting point, not an end-to-end tested automation. Replace every CONFIGURE_ value, choose the operations you intend, connect credentials and map source outputs into later inputs. An edge orders steps; it does not supply a condition, an approval gate or a field mapping. Add and test those controls explicitly before any write. Cloud APIs and model providers may receive data. Keep the workflow inactive until tested with fixtures.
{
"id": "a4d30da9-2ef5-43dc-ac23-f93d94a3bd88",
"name": "Telegram → YouTube",
"nodes": [
{
"id": "39872e37-782a-4473-a4f4-bbc00d39c3ae",
"text": "Watch Telegram",
"x": 512,
"y": 144,
"isEditing": false,
"type": "receive-telegram-update",
"icon": "connect",
"category": "trigger",
"isSelected": false,
"parameters": {
"botToken": "CONFIGURE_BOTTOKEN",
"apiBaseUrl": "CONFIGURE_APIBASEURL",
"updateTypes": "messages_and_buttons",
"chatFilter": "CONFIGURE_CHATFILTER",
"commandFilter": "CONFIGURE_COMMANDFILTER",
"ignoreBotMessages": false,
"dropPendingUpdatesOnStart": false,
"deleteWebhookOnStart": false,
"pollTimeoutSeconds": 1,
"pollIntervalMs": 1,
"limit": 1,
"includeRaw": false
},
"description": "Setup template for Receive Telegram Update. Listen for incoming Telegram bot messages, commands, channel posts, and inline keyboard callback button clicks using long polling. Configure credentials, inputs and output mapping before use.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "c440ca83-5937-4024-a26c-eaeb3bd71aa8",
"text": "Review source and draft",
"x": 512,
"y": 336,
"isEditing": false,
"type": "agnt-agent",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"agentId": "CONFIGURE_AGENTID",
"message": "Read the Telegram item. Decide whether it warrants action in YouTube, and explain why.\nSource input: CONFIGURE_SOURCE_INPUT. Produce a reviewable draft only; do not take external actions."
},
"description": "Setup template for Agent Chat. Chat with an AI agent from your agent library. Select an agent and send messages to interact with it within your workflow. Configure credentials, inputs and output mapping before use.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
},
{
"id": "58afc486-dec5-429b-a518-1f95cb3a796e",
"text": "Configure destination in YouTube",
"x": 512,
"y": 528,
"isEditing": false,
"type": "youtube-api",
"icon": "connect",
"category": "action",
"isSelected": false,
"parameters": {
"action": "ADD_VIDEO_TO_PLAYLIST",
"playlistId": "CONFIGURE_PLAYLISTID"
},
"description": "Setup template for YouTube API. Interact with the YouTube API to manage videos, comments, playlists, and more. Configure credentials, inputs and output mapping before use.",
"error": null,
"isActive": false,
"output": null,
"outputs": {}
}
],
"edges": [
{
"id": "5f42d9ca-992d-4c7c-ada6-d72e574b60b0",
"start": {
"id": "39872e37-782a-4473-a4f4-bbc00d39c3ae",
"type": "output"
},
"end": {
"id": "c440ca83-5937-4024-a26c-eaeb3bd71aa8",
"type": "input"
},
"startX": 800,
"startY": 168,
"endX": 512,
"endY": 360
},
{
"id": "cd6ae1ed-9824-4c4f-ae55-5e520b31af1a",
"start": {
"id": "c440ca83-5937-4024-a26c-eaeb3bd71aa8",
"type": "output"
},
"end": {
"id": "58afc486-dec5-429b-a518-1f95cb3a796e",
"type": "input"
},
"startX": 800,
"startY": 360,
"endX": 512,
"endY": 552
}
],
"zoomLevel": 1,
"canvasOffsetX": 0,
"canvasOffsetY": 0,
"isTinyNodeMode": false
}
Configure Receive Telegram Update
Listen for incoming Telegram bot messages, commands, channel posts, and inline keyboard callback button clicks using long polling.
- botToken — Optional fallback Telegram bot token from @BotFather. If omitted, AGNT uses the connected Telegram provider token from Settings → Connections. Current example:
CONFIGURE_BOTTOKEN. - apiBaseUrl — Optional Bot API base URL. Use https://api.telegram.org by default, or a local Bot API server URL. Current example:
CONFIGURE_APIBASEURL. - updateTypes — Which Telegram updates should trigger the workflow. messages_and_buttons listens for messages, edited messages, and callback button clicks. Current example:
messages_and_buttons. - chatFilter — Optional chat ID or @username to listen to. Leave empty for all chats. Multiple values can be comma-separated or newline-separated. Current example:
CONFIGURE_CHATFILTER. - commandFilter — Optional command name such as start or summarize, without the slash. Multiple values can be comma-separated or newline-separated. Current example:
CONFIGURE_COMMANDFILTER. - ignoreBotMessages — Ignore updates sent by bots when Telegram includes sender metadata. Current example:
false. - dropPendingUpdatesOnStart — Start from fresh updates instead of replaying old queued Telegram updates when the workflow starts. Current example:
false. - deleteWebhookOnStart — Delete any existing Telegram webhook before long polling. Enable this if Telegram reports a webhook conflict. Current example:
false. - pollTimeoutSeconds — Telegram long-poll timeout in seconds. Higher values reduce API churn. Range: 1-50. Current example:
1. - pollIntervalMs — Delay between long-poll requests in milliseconds. Range: 0-60000. Current example:
1. - limit — Maximum updates to fetch per poll. Telegram allows 1-100. Current example:
1. - includeRaw — Include the full raw Telegram update object in raw/response outputs. Current example:
false.
Configure YouTube API
Interact with the YouTube API to manage videos, comments, playlists, and more.
- action — The action to perform on YouTube Current example:
ADD_VIDEO_TO_PLAYLIST. - playlistId — The ID of the playlist Current example:
CONFIGURE_PLAYLISTID.
Install Social Scheduler
Social Scheduler is a working agent built around Telegram. Install it, point its last step at YouTube, and you have this hand-off without building it from an empty canvas.
Runs on your own machine · See what it does
Build it in AGNT
- Install AGNT — it runs on your own machine and needs no account to start.
- Authorise YouTube (one OAuth sign-in) and Telegram (an API key pasted into the vault). Nothing is stored anywhere but your disk.
- Describe the job in plain language, or paste the definition above; telegram-api does the reading and youtube-api the writing.
- Gate anything you would not want done unattended, then let it run and read the first receipt end to end.
Telegram and YouTube — common questions
Can I connect Telegram to YouTube without writing code?
You can build it entirely from the canvas. Authorise Telegram with an API key pasted into the vault, YouTube with one OAuth sign-in, then tell the agent what approve agent actions from anywhere should look like once YouTube is involved. Code is an option for the unusual cases, never a requirement for the common ones.
How is this different from a field-mapping Telegram to YouTube automation?
A field mapping copies values and breaks on the first record nobody anticipated. The middle step here reads the Telegram item in full and decides — whether it matters, how to summarise it, and what belongs in YouTube. Deciding to do nothing is a valid outcome, which no mapping can express.
Does my Telegram and YouTube data leave my machine?
AGNT Community Core is local-first, so there is no vendor middleman holding your Telegram or YouTube tokens. The runtime talks directly to both services. Choose a local model and the content of what it reads never leaves the machine at all.
What does a Telegram and YouTube run leave behind?
A receipt: what was read in Telegram, which tools ran with which arguments, what the agent concluded, and what it wrote to YouTube. Anything consequential can sit behind an approval gate so a person signs off before it happens.