Skip to content

Hourly

Catch uploads that fail to process

You hear within the hour if an upload is stuck or failed to transcode.

Runs
Hourly
Apps
Vimeo
AI
Not needed
Access
private

Send this to your assistant

Create a ClickRuntime automation: every hour, check videos I uploaded to Vimeo in the last 2 days and email me any that are stuck in processing or show an error.

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

Someone uploads a forty-minute customer webinar to Vimeo, closes the laptop, and shares the link in an email campaign that evening. The transcode quietly failed because of an unusual codec, and the video page shows an error to every recipient. Nobody on the team knew, since Vimeo only shows the failed state on the video's own page.

Once an hour the automation looks at your recent Vimeo videos and reads the transcode status on each one. If any video's transcode has failed, you receive an alert naming the video and linking to it, so you can re-export and re-upload while the campaign is still a draft rather than after the send.

Video producers, course creators and anyone who publishes on a schedule benefit most, because a failed upload often goes unnoticed until the audience arrives.

What you get out of it

  • Catch it before the audience does

    An hourly check usually finds a failed transcode well before launch time, so you re-upload quietly instead of apologizing to subscribers who clicked a link and found a broken player on the page.

  • Campaign links stay trustworthy

    Newsletters and course lessons that embed Vimeo links depend on playback working. An alert protects the sender's credibility with the people who clicked and keeps open and click rates from being wasted on a dead video.

  • Names the exact video

    The alert includes the title and a link, so you do not scan a long library trying to find which of last week's uploads is the broken one, especially when an editor uploaded several versions in one sitting.

  • Saves the re-upload scramble

    Finding the failure at 9 a.m. leaves a day to fix an export setting and upload again. Finding it five minutes before a live premiere leaves only panic and an awkward delay for everyone waiting.

  • Works while you are away

    Contractors and editors upload at odd hours. The check runs without anyone watching, so a failed overnight upload is flagged by morning instead of being discovered by whoever first opens the page.

How it works

What happens, step by step

  1. Every hour, ClickRuntime checks the videos uploaded to your Vimeo account in the last two days.

  2. It looks for any that failed to process or are still stuck processing.

  3. You get an email listing each problem video with its status and link.

  4. Each video is reported only once, so you are not alerted about the same upload again.

Before it runs live

  • Connect Vimeo

What you get

RunsHourly
Catch uploads that fail to processtoday, 9:00Succeeded
Email · Vimeo uploads1 Vimeo upload(s) need attention Northwind webinar recording: error https://vimeo.com/1029384999

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 Vimeo 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.
upload_processing_failure_alert.pyexample
from datetime import datetime, timedelta, timezone
from clickruntime import on_trigger, credentials, http, state, notify, report_fetched

@on_trigger
def run(event):
    videos = http.get("https://api.vimeo.com/me/videos",
                      headers={"Authorization": f"Bearer {credentials.secret('VIMEO_TOKEN')}"},
                      params={"sort": "date", "direction": "desc", "per_page": 50,
                              "fields": "uri,name,link,created_time,transcode.status"}).json()["data"]
    since = datetime.now(timezone.utc) - timedelta(days=2)
    alerted = set(state.get("alerted") or [])
    stuck = [v for v in videos
             if datetime.fromisoformat(v["created_time"]) > since
             and v["transcode"]["status"] in ("in_progress", "error") and v["uri"] not in alerted]
    stuck = [v for v in stuck if v["transcode"]["status"] == "error"
             or datetime.fromisoformat(v["created_time"]) < datetime.now(timezone.utc) - timedelta(hours=2)]
    report_fetched(len(stuck))
    if not stuck:
        return {"stuck": 0}
    notify.email_me(f"{len(stuck)} Vimeo upload(s) need attention",
                    "\n".join(f"{v['name']}: {v['transcode']['status']}\n{v['link']}" for v in stuck))
    state.set("alerted", sorted(alerted | {v["uri"] for v in stuck})[-200:])
    return {"stuck": len(stuck)}

FAQ

Common questions

What does a failed transcode mean on Vimeo?
It means Vimeo could not convert the uploaded file into playable versions, often because of an unsupported codec, a corrupted export or an interrupted upload. The video exists in your library but cannot be watched until you upload a new file.
How far back does the hourly check look?
It looks at your most recent videos, which is enough to catch uploads from the last day or two. Very old videos are not rechecked, since their transcode state would have settled long ago and rechecking them would just waste requests.
Will I get an alert for a video that is still transcoding?
No. Only a status of failed triggers the message. Videos that are still in progress are left alone until a later run sees their final state, so a long upload does not produce a false alarm while it is being processed.
What permissions does it need?
private. 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 each time it checks. Checks that find nothing new and stop right away aren't counted.
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 “Catch uploads that fail to process” from your assistant

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