Skip to content

The moment it happens

Write captions and alt text for images

Every image link you send comes back with a caption and accessible alt text.

Runs
The moment it happens
Apps
Google Gemini
AI
Not needed
Access
API key

Send this to your assistant

Create a ClickRuntime automation: give me a link I can post image URLs to. For each image, use the Google Gemini API to write a one-line caption and alt text under 125 characters, and email them to me.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A small online shop receives dozens of product photos from suppliers and needs alt text and a short description for each. A real estate agent uploads walkthrough videos and needs summaries for the listing. An office has scanned PDFs nobody can search. Writing captions by hand is slow, and the lazy fallback is filenames like DSC_0042.jpg, which is poor for accessibility and for search engines.

When you send a file to the ClickRuntime link, it downloads the file and passes it to Gemini, either inline or through the Files API for larger media, along with your instruction. Gemini returns a caption, description or summary in a structured form, and the result is emailed to you with the file reference.

Content teams, accessibility owners and archive managers use it where a person would otherwise have to watch, view or read each file in turn.

What you get out of it

  • Alt text for every image

    Images without descriptions are unusable for screen reader users and invisible to image search. Automatic captions mean every product photo ships with meaningful text, which supports accessibility rules and search traffic.

  • Long videos summarized without watching

    A 40-minute recording becomes a few paragraphs and a list of key moments. Anyone deciding whether it is worth watching, or looking for one decision made in a meeting, finds it in seconds.

  • Scanned documents become searchable text

    A PDF made of page images can be summarized or described so its content can be found. Archives that were previously a pile of unnamed scans start to have titles and descriptions.

  • Structured output that systems can use

    Returning fields like title, caption and keywords means the result can be pasted into a catalogue, CMS or spreadsheet, without someone first trimming a long block of AI text. No cleanup step is needed in between.

  • Consistent descriptions across a team

    A defined instruction yields the same style and length for every file. A catalogue where each photo has a similar format reads as professional, compared with a mix written by five people on different days.

How it works

What happens, step by step

  1. When you send an image link to your personal ClickRuntime link, the automation starts straight away.

  2. ClickRuntime downloads the image and sends it to Gemini.

  3. Gemini writes a one-line caption and alt text under 125 characters.

  4. You get an email with the image link, the caption and the alt text, ready to paste into your site.

Before it runs live

  • Connect Google Gemini
  • Paste your automation's link into the other app's webhook settings

What you get

RunsThe moment it happens
Write captions and alt text for imagesjust nowSucceeded
Email · Image captionsCaption: Two engineers reviewing a whiteboard plan Alt: Two people at a whiteboard covered in sticky notes

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Slack
  • Combine it with other Google Gemini steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
describe_and_caption_images_pdfs_and_videos.pyexample
import base64
from clickruntime import on_event, credentials, notify, http

def gemini(body, model="gemini-2.5-flash"):
    resp = http.post(f"https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent",
                     headers={"x-goog-api-key": credentials.secret("GEMINI_API_KEY")}, json=body, timeout=120)
    resp.raise_for_status()
    return resp.json()["candidates"][0]

@on_event
def handle(event):
    url = (event.json or {})["url"]
    img = http.get(url)
    img.raise_for_status()
    out = gemini({
        "contents": [{"parts": [
            {"inline_data": {"mime_type": img.headers.get("content-type", "image/jpeg"),
                             "data": base64.b64encode(img.content).decode()}},
            {"text": "Write a one-line caption and alt text under 125 characters for this image."},
        ]}],
        "generationConfig": {"responseMimeType": "application/json", "responseSchema": {
            "type": "OBJECT", "properties": {"caption": {"type": "STRING"}, "alt": {"type": "STRING"}}}},
    })
    text = out["content"]["parts"][0]["text"]
    notify.email_me("Image caption", f"{url}\n{text}")
    return {"url": url}

FAQ

Common questions

What file types can it describe?
Gemini can work with common images, PDFs, audio and video. Very large videos are uploaded through the Files API instead of being sent inline. Unsupported or damaged files produce a clear error, so you know which file to resend.
Can it write the caption in the style of my brand?
Yes. You can give instructions such as two sentences, no marketing language, mention the color and material, or write for a visually impaired reader. The wording is part of the prompt, so changing the style means changing that instruction.
How does the file reach it?
Another tool posts the file or a download URL to the link ClickRuntime provides, and the rest happens on arrival. The link is private to you. Most upload forms, cloud storage tools and scripts can send to a link like this.
What permissions does it need?
API key. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run for each event the app sends.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Write captions and alt text for images” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.