Mindket

Telegram photo to ad image and video maker

Newversion 2 · updated

Overview

An n8n workflow that turns a photo sent to a Telegram bot into two ad concepts, each with an image ad and a short video ad. OpenAI reads the photo and writes the concepts, Nano Banana and Veo 3 Fast on Kie.ai make the media, and Google Sheets and Drive keep the results.

Telegram photo to ad image and video maker is an n8n workflow in the Marketing & SEO category, listed by Mindket. It is free. This is version 2, last updated on . Download it on this page or copy its JSON, then import it into an n8n canvas. Nothing runs until you activate it in n8n.

At a glance

Runs in
  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file, with a public HTTPS address for the Telegram trigger
  • Telegram: you send the photo from your phone and the bot answers in the same chat
  • Google Drive and Google Sheets: the finished files and the rows live there
Start with
index, ad_copy, product, character, visual_guide, 1_color, 2_color, 3_color, image_status, image_link, video_status, video_prompt, video_aspectratio, video_link

Platform

Connects 5 apps

How it works

Trigger

Photo sent to the bot

It starts when someone sends a photo to your Telegram bot, with:

  • A photo of a product or a character
  • A caption saying what ads you want, if you like

Actions

  1. OpenAI reads the photo and describes its brand, colors and fonts as YAML
  2. An agent writes two ad concepts and saves them as rows in your Google Sheet
  3. Kie.ai’s Nano Banana Edit redraws the photo as a 9:16 image ad, saved to Google Drive
  4. OpenAI writes a video prompt from that image, and Veo 3 Fast on Kie.ai animates it
  5. The clip goes to Drive, the sheet gets its link, and the bot tells you in Telegram

Result

Two ad concepts, each with an image and a short video in Drive, linked from your sheet

Integrations

What you need before you start.

Telegram

Chat

Receives your photo, fetches its file path, and messages you when the job starts and when each concept is done.

NeedsA bot token from BotFather

OpenAI

Language and vision models

Describes the photo, writes the concepts and both prompts with gpt-4.1, and reads the finished image with chatgpt-4o-latest.

NeedsOpenAI API key

Google Sheets

Ad table

Holds the concepts, their image and video statuses, and the links to the files.

NeedsGoogle sign-in, and a sheet with the columns

Google Drive

File storage

Keeps the image ads in one folder and the video ads in another.

NeedsGoogle sign-in, and two folders

Kie.ai

Image and video generation

Runs Nano Banana Edit for the image and Veo 3 Fast for the video, and reports each task’s status.

NeedsKie.ai API key, typed into four nodes

Workflow check

Checked by Mindket on 13 Nov 2026

Steps
29 steps, starting on a Telegram event
AI
4 steps call an AI model: Describe Image, Campaign Strategy Generator, Image prompt Creator and Video Prompt Creator
Sign-ins
Signs in to: OpenAI, Telegram, Google Sheets, Google Drive and Kie.ai
API keys
No API key is left in the file; 1 blank in it for your own key
Step types
Mindket’s checker reads all 11 of its step types

Read from the workflow’s file, not from a run.

About

What it is

This n8n workflow turns a photo sent to a Telegram bot into two ad concepts, and gives each one an image ad and a short video ad. It runs 34 nodes in three stages. First, OpenAI reads the photo as YAML: brand, colors, fonts and what is shown. An agent named Campaign Strategy Generator then writes two concepts, which land as rows in a Google Sheet with a slogan, a character, a visual guide and three hex colors. Next, a second agent writes an image prompt for each row, Nano Banana Edit on Kie.ai redraws your photo as a 9:16 ad, and the file goes to Google Drive. Last, OpenAI looks at that image and writes a video prompt, Veo 3 Fast on Kie.ai animates it, and the clip goes to Drive too.

Who it suits

Shop owners, brand teams and social media managers who want ad drafts from a phone photo, and agencies that test a few angles on a product before anyone briefs a designer. Skip it if you do not use n8n yet, or if you want one polished ad rather than a pair of drafts that you still have to review, pick from and finish yourself.

Who uses it, and how
IndustryWho uses itHow they use itExample
Online retailShop ownersPhotograph each new product and send it to the botAn owner sends a photo of a new tote bag and finds two concepts with their media in the sheet and in Drive.
Social media agenciesContent managersPut the audience in the caption and send a client’s product shotsA manager captions a shoe photo with the audience she wants and shows the client two angles the same day.
Food and drinkBrand teamsSend pack shots, and the pack’s colors and fonts carry into the adA snack brand sends its pack shot and gets a vertical ad in the pack’s own colors.
Character brandsIllustrators and creatorsSend a picture of a character, because the photo step has a branch for charactersA creator sends a mascot drawing and gets ads built around it.

Where to use it

Any n8n that Telegram can reach. The Telegram trigger needs a public HTTPS address, which n8n Cloud comes with and which a server of your own may need a reverse proxy or a tunnel to provide.

  • n8n Cloud: import the file into a new workflow there
  • Your own n8n server: the same file, with a public HTTPS address for the Telegram trigger
  • Telegram: you send the photo from your phone and the bot answers in the same chat
  • Google Drive and Google Sheets: the finished files and the rows live there

Setup

Get it saves a zip with workflow.json and Mindket’s setup notes in your downloads folder. Its author puts setup at about 20 minutes, which assumes the accounts exist.

What you need first
NeedDetail
n8nOn n8n Cloud, or on your own server with a public HTTPS address
TelegramA bot made with BotFather, and its token
OpenAIA key. The file uses gpt-4.1 and chatgpt-4o-latest
GoogleOne account for Sheets and Drive, a sheet with the columns below, and two Drive folders
Kie.aiA key, for Nano Banana Edit and Veo 3 Fast
  1. In n8n, create a workflow, open its menu, choose Import from File and pick workflow.json.
  2. Add a Telegram credential with your bot token and select it in Telegram Trigger, Send request msg and Send completed msg.
  3. Open Set Bot ID and replace YOUR_BOT_TOKEN with the same token. The photo’s download link is built from it.
  4. Add an OpenAI credential and select it in GPT, OpenAI Chat Model, Describe Image and Video Prompt Creator.
  5. Make a sheet whose first row holds the columns below. Add a Google Sheets credential, select it in all seven Sheets nodes, and in each one replace YOUR_SHEET_ID with your sheet’s ID and pick the sheet again.
  6. Make two Drive folders and add a Google Drive credential. In Upload file replace YOUR_IMAGE_FOLDER_ID, and in Upload file1 replace YOUR_VIDEO_FOLDER_ID.
  7. In Create Image, Get Image, Create Video and Get Video, replace <YOUR_KIE_API_KEY> with your Kie.ai key and keep the word Bearer before it.
  8. Save, press Execute workflow, send your bot a photo with a caption, then press Publish when the test works.
index, ad_copy, product, character, visual_guide, 1_color, 2_color, 3_color, image_status, image_link, video_status, video_prompt, video_aspectratio, video_link

How to use it

Send your bot a photo of a product or a character. A caption is optional. Use it to name the audience or the mood, and without one the agent falls back on a default request. The bot replies once it has read the photo. The two rows appear in the sheet a little later. The image takes at least 20 seconds and the video at least a minute. The workflow waits that long, asks Kie.ai for the result, and asks again until it reports success or failure. The bot sends a closing message for each concept whose video is in Drive.

What to change for a different result
To changeWhere
Number of concepts, slogan lengthThe system message in Campaign Strategy Generator, which asks for exactly two
Image style and text placementThe system message in Image prompt Creator, which carries the typography rules
Frameimage_size in Create Image and video_aspectratio in Prepare Sheet format, both 9:16
Video length and motionThe prompt in Video Prompt Creator, which asks for 8 seconds
Waiting timeWait (20 seconds) and Wait 2 (60 seconds)
Where files goThe two upload nodes

Example

A photo of a canned iced tea, sent with the caption ads for office workers who skip lunch. OpenAI describes the can, and the strategist returns two concepts in this shape, trimmed here.

{
  "index": "01",
  "ad_copy": "…",
  "product": "…",
  "character": "…",
  "visual_guide": "…",
  "1_color": "#…",
  "2_color": "#…",
  "3_color": "#…",
  "image_status": "create",
  "video_status": "create"
}

The sheet then shows create turning to done for the image and again for the video, with a Drive link in image_link and video_link. A status of error means Kie.ai reported a failed task.

For newcomers and experts

If you are new. n8n draws a workflow as boxes joined by lines, and each box, a node, does one job. A credential is a key n8n keeps for you and hands to the node you pick it in. Kie.ai makes the image and the clip on its own servers, which takes a while, so the workflow keeps waiting and asking. Run it once with a test photo. Then open each node: it shows what it received and what it sent, which is where a wrong key or sheet ID turns up.

For experts. Four AI steps do the thinking and two Kie.ai models do the drawing.

The model behind each step
StepModelWhat to know
Describe Image and Video Prompt CreatorOpenAI chatgpt-4o-latest, image analysisCheck the name is still offered on your account, and pick another vision model if it is not
Campaign Strategy Generator and Image prompt Creatorgpt-4.1, through OpenAI Chat Model and GPTEach agent has an output parser that holds its answer to a JSON shape, and the image agent also has a Think tool
Create Imagegoogle/nano-banana-edit on Kie.aiEdits your photo, so the product keeps its look. The prompt forbids recoloring it
Create Videoveo3_fast on Kie.aiAnimates the generated image, not your photo

Two habits of the sheet logic matter if you reuse it. Each run numbers its concepts 01 and 02, and the match column is index. A new photo therefore replaces the rows of the last one, while the files in Drive stay, so rows you want to keep need copying out first. The node Get Rows to Create reads every row whose image_status is create, so a row left behind by a stopped run is picked up by the next one. One loose end: the image agent reads a text_watermark field that nothing in the file fills.

Good to know

Each run costs money. The open bot and the photo’s link are the risks to plan for.

  • Billing: OpenAI and Kie.ai each bill their own part, and a run makes several calls to each
  • Open bot: the trigger has no filter on who writes, so anyone who finds your bot can send it a photo and spend your credits. Add an IF node after it that checks the sender’s ID
  • Token in the link: the photo reaches OpenAI and Kie.ai as a Telegram file link, and that link contains your bot token. Use a bot made for this workflow
  • No photo, no run: a message without a photo stops at Get Image Path with an error
  • No cap on retries: the status checks repeat until Kie.ai answers, so watch your first runs
  • Credentials: the JSON holds none, and nothing from its author’s account

README and files

README

Telegram photo to ad image and video maker

An n8n workflow. Send a photo to your Telegram bot and it writes two ad concepts, then makes an image ad and a short
video ad for each one.

What is inside

  • workflow.json: the workflow as n8n exports it, 34 nodes. It holds no credential, and the sheet, folder and key
    values are placeholders such as YOUR_SHEET_ID.
  • One repair: the original copy had lost the backslashes in Create Image's body, so the prompt's quotation marks went
    out unescaped and every letter n turned into a line break. Mindket put them back.
  • README.md: these notes.

Before you start

  • An n8n instance with a public HTTPS address (n8n Cloud, or your own server), so Telegram can reach the trigger.
  • A Telegram bot made with BotFather, and its token.
  • An OpenAI API key. The file uses gpt-4.1 and chatgpt-4o-latest.
  • A Google account for Sheets and Drive, with a sheet and two Drive folders (below).
  • A Kie.ai API key.

Set it up

  1. In n8n, create a workflow, open its menu and choose Import from File. Pick workflow.json.
  2. Add a Telegram credential with your bot token and select it in Telegram Trigger, Send request msg and
    Send completed msg.
  3. Open Set Bot ID and replace YOUR_BOT_TOKEN with the same token. The photo's download link is built from it.
  4. Add an OpenAI credential and select it in GPT, OpenAI Chat Model, Describe Image and Video Prompt Creator.
  5. Make the sheet (below). Add a Google Sheets credential and select it in all seven Sheets nodes (`Append or update
    row in sheet, Get Rows to Create, Update Row as Done, Update Row as Error, Update Video Prompt`,
    Update in Row as Done, Update in Row as Error). In each, replace YOUR_SHEET_ID with your sheet's ID and pick
    the sheet again.
  6. Make two Drive folders and add a Google Drive credential. In Upload file replace YOUR_IMAGE_FOLDER_ID, and in
    Upload file1 replace YOUR_VIDEO_FOLDER_ID.
  7. In Create Image, Get Image, Create Video and Get Video, replace <YOUR_KIE_API_KEY> with your Kie.ai key.
    Keep the word Bearer before it.
  8. Save and press Execute workflow, then send your bot a photo with a caption. When the test works, press Publish.

The sheet

Row 1 holds these column names, in any order. Every Sheets node reads and writes them by name.

| Column | What it holds |
|---|---|
| index | 01 or 02, the concept's number. It is the match column |
| ad_copy, product, character, visual_guide | the concept, as the strategist writes it |
| 1_color, 2_color, 3_color | three hex colors read from the photo |
| image_status, video_status | create, then done or error |
| image_link, video_link | the Drive link of each finished file |
| video_prompt, video_aspectratio | what the video step was given, and its frame (9:16) |

Change the look

  • Number of concepts and the slogan: the system message in Campaign Strategy Generator. It asks for exactly two.
  • Image style and text placement: the system message in Image prompt Creator.
  • Frame: image_size in Create Image, and video_aspectratio in Prepare Sheet format. Both are 9:16.
  • Video length and motion: the prompt in Video Prompt Creator, which asks for 8 seconds.
  • Waiting time: Wait (20 seconds, images) and Wait 2 (60 seconds, videos).

Good to know

  • A new photo replaces the last run's two rows, because every run numbers its concepts 01 and 02 and the match
    column is index. The files in Drive stay. Copy rows you want to keep.
  • Get Rows to Create reads every row whose image_status is create, so a row left by a stopped run is picked up
    by the next one.
  • The trigger has no filter on who writes. Anyone who finds your bot can send it a photo and spend your OpenAI and
    Kie.ai credits. Add an IF node after the trigger that checks the sender's ID.
  • The photo reaches OpenAI and Kie.ai as a Telegram file link, and that link contains your bot token. Use a bot made
    for this workflow.
  • A message without a photo stops at Get Image Path with an error.
  • The status checks repeat until Kie.ai answers, with no limit, so watch your first runs.
  • chatgpt-4o-latest is a model name OpenAI may retire. If your account no longer lists it, pick another vision model
    in Describe Image and Video Prompt Creator.
Files
README.md  4 KB
workflow.json  71 KB

2 files, 75 KB, downloaded as a zip.

What’s new

  • Version 2 · 2026-11-09

    Updated by Mindket to the current version of this kit.

  • Version 1 · 2026-11-03

Reviews

No ratings yet

Write a review

No reviews yet.

More from Mindket

See all from Mindket

Huashu Design

alchaincyf · Skill

Turns a one-line request in your AI agent into a finished design: a launch animation, a clickable app prototype, an editable slide deck, an infographic or a se…

New29.4k

Guizang PPT Skill

op7418 · Skill

Skill that makes single-file HTML slide decks, slide illustrations and platform covers in two visual styles, with a presenter mode for rehearsal. For speakers…

New29.8k

Claude Code Skills & Plugins

alirezarezvani · Skill

Adds 411 ready-made skills for Claude Code and other coding agents, grouped by role from engineering and product to marketing, finance and compliance. Installs…

New29.8k

Similar in Marketing & SEO

See all in Marketing & SEO

Pixel Art XL

nerijs · Kit

A pixel art style add-on for Stable Diffusion XL that turns text prompts into pixel-style images, with an optional LCM LoRA for faster runs. For game makers, d…

New

Licon MSR for LTX-2.5

LiconStudio · Kit

Keeps characters, clothing, objects and backgrounds consistent in generated video by feeding the model up to five reference images. A LoRA for LTX-2.5 in Comfy…

New

Flux.2-Klein-9B-MatchingPose

nhathoangfoto · Kit

A LoRA for FLUX.2 Klein 9B that puts a character into the pose shown by a mannequin reference while keeping the character's face and style. For artists and des…

New