---
title: "Bannerbite Integration"
description: "Bannerbite renders video and image variants from After Effects templates. Agents pick a project and bite, substitute text, colors, images, and footage by scene name, and kick off renders for personalized ads and social creative at scale."
url: https://flowrunner.ai/integrations/bannerbite
date_modified: 2026-09-04T14:59:52-07:00
---

# Bannerbite

[Developer Tools](https://flowrunner.ai/integrations/category/developer-infrastructure)

Bannerbite renders video and image variants from After Effects templates. Agents pick a project and bite, substitute text, colors, images, and footage by scene name, and kick off renders for personalized ads and social creative at scale.

[Verified](https://flowrunner.ai/integrations/verified "What does verified mean?") · 7 actions · API key · available

[Bannerbite website](https://bannerbite.com/) · [Platform Documentation](https://bannerbite.com/) · Capability data verified 2026-08-28

1.  A client campaign row is marked approved in the production tracker
2.  Get Scene Data lists the bite's real element names with their current values
3.  Every field on the campaign row is matched against that list, because a name the bite does not carry changes nothing and is not reported
4.  Render Bite submits the scene values with a webhook URL attached, since this API has no route to ask whether a render finished
5.  The finished video URL arrives at the webhook and posts to the client channel with the copy it was built from
6.  The rendered output is read back against the approved brief before anything is scheduled
7.  The producer watches the first variant of the set before the rest of the batch is queued

## What This Integration Enables

Bannerbite is for teams whose creative has a timeline. It renders from After Effects based templates, so a bite is not a layout with text swapped into it, it is a video design with scenes, audio, and elements that a workflow can address by name. That is a narrower promise than a general design tool makes, and it is the right one for the work that actually piles up: the same thirty second cut in six languages, the same product spot with a different offer per segment, the same explainer rebuilt because the price changed.

The connector is deliberately shaped around what has to happen before a render rather than around the render itself. Get Scene Data returns the element names a bite really carries, with their current values, because Bannerbite matches by name and a name that is not in the bite is ignored rather than rejected. Get Bite returns the output size and the bite's access token. Two render routes exist and they are different contracts, not duplicates: one takes a structured scene list, the other takes each element as a flat top level key and adds a sequence render type, which is the shape built for spreadsheet and automation sources. Rendering is asynchronous with no status route, so the callback is not optional. FlowRunner's job here is to hold that whole sequence together and to put a person at the point where a bad variant would otherwise reach a client, which is what [human-in-the-loop](https://flowrunner.ai/concepts/human-in-the-loop) means on a creative pipeline.

### Without FlowRunner

**Motion is the bottleneck**: Layout variants are quick to produce, and every version that has a timeline goes back to an editor

**Typos that render clean**: A misspelled element name is ignored rather than rejected, so the variant renders with the template's own placeholder content

**Renders that vanish**: A submitted render returns an acknowledgement and nothing else, and nobody knows the outcome until someone opens the folder

### With FlowRunner

**Variants as data**: Scene values arrive from a tracker row, and one bite produces the whole set of localized or per client cuts

**Names checked before the send**: The bite's real element names are read first, so a value that would have been silently dropped is caught while it can still be fixed

**Outcomes routed**: Every render carries a callback, so the finished file lands in a review channel instead of waiting to be discovered

## Use Case Scenarios

### A localized campaign rendered from a tracker

Each row in [Airtable](https://flowrunner.ai/integrations/airtable) is one market: language, headline, offer, product shot, and the footage clip to use. The agent calls Get Scene Data once for the bite and validates every column name against what the bite actually exposes, then calls Render With Flat Fields per row, because the flat contract is the one the vendor built for exactly this source shape and it carries a custom message through to the result so each callback identifies its own row. Callbacks arrive as renders complete over the next few minutes and the finished URLs go back into the row they came from. The producer reviews the first market before the rest are queued.

### Client review that closes its own loop

A creative request lands from an account manager. The agent renders a single cut with Render Bite, and when the callback arrives it posts the video into the client's channel in [Slack](https://flowrunner.ai/integrations/slack) with the exact scene values it used underneath. Approval in the thread releases the rest of the set. A rejection routes back with the values still attached, so the fix is a changed field rather than a rebuilt brief. Nothing here required anyone to open the Bannerbite dashboard, and nothing rendered twice because two people were unsure whether the first one had gone through.

### Letting a downstream system trigger its own renders

A partner portal needs to produce a personalized video when a customer completes a step. Rather than exposing account internals, the team uses the bite's access token, which Render Bite accepts in place of the numeric id, so the portal can render that one design without ever seeing project or bite ids. Usage is tracked against the campaign record in [HubSpot](https://flowrunner.ai/integrations/hubspot) and the outputs are logged to [Google Sheets](https://flowrunner.ai/integrations/google-sheets). Handing that token out is a decision the agent prepares and a person makes, for the reason below.

## Human-in-Loop Highlight

Get Bite returns a bite's access token, and Render Bite accepts that token in place of the numeric id. The vendor built it so a design can be rendered from somewhere that should not see internal ids, which is genuinely useful: a partner portal, a client side tool, a spreadsheet an account team owns. It is also a standing render capability against your account, and the interesting thing about this connector is what is missing from its seven operations. There is no rotate. There is no revoke. There is no list of who is holding one. Once that string leaves the flow, this API offers nothing that takes it back. So the agent will assemble the request, name the bite, and stop: "This will hand the access token for the Q3 product bite to the partner portal. That token renders this design against our account, and there is no operation on this API to rotate or revoke it afterwards. Issue it, or point the portal at a webhook that asks us to render instead?" The producer or the account owner picks. Most of the time the second option is better and nobody would have thought to consider it, because handing out a token is a single call that succeeds instantly and looks like nothing at all.

Agent processes routinely

Detects exception requiring judgment

Clear match Continues automatically

Ambiguous Routes to human via preferred channel

Human decides

Agent resumes with decision

## Agent Capabilities

7 actions

### Projects

2

-   **List Projects** Lists the account's projects, each a folder of bites with its own name, thumbnail, and settings.
-   **Get Project** Reads one project's details: its name, slug, description, background color, and thumbnail.

### Bites

3

-   **List Bites** Lists the bites in a project. A bite is one video design: its scenes, the template each scene uses, its audio, and its current content. Bites are only ever listed within a project.
-   **Get Bite** Reads one bite in full, including the template behind each scene, the output size in pixels, and the bite's access token.
-   **Get Scene Data** Lists the editable elements of a bite's scenes with their current values: text with its color, images and videos with their URLs, shapes with their fill. Run this before any render, because Bannerbite matches elements by name and an unknown name is ignored rather than reported.

### Renders

2

-   **Render Bite** Renders a bite to an image, a video, or an overlay with the given scene values substituted in. It is asynchronous and returns an acknowledgement rather than a file, and there is no status route, so a callback URL or an email address is how the outcome is learned.
-   **Render With Flat Fields** Renders a bite using Bannerbite's flat field form, where each element is a top level key rather than an entry in a scene list. The shape built for spreadsheet and automation sources, and the only route that offers a sequence render type and a custom message carried through to the result.

## Frequently Asked Questions

### What can FlowRunner do with Bannerbite?

FlowRunner agents can run List Projects, Get Project, and List Bites in Bannerbite, plus 4 more actions.

### Does connecting Bannerbite to FlowRunner require OAuth?

No. Bannerbite connects to FlowRunner with an API key, no OAuth flow required.

### Can Bannerbite trigger a FlowRunner workflow automatically?

Bannerbite doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.

**Work at Bannerbite?** This integration exposes Bannerbite to AI agents on every FlowRunner plan, including through MCP, at no cost to you. [See what FlowRunner offers integration partners](https://flowrunner.ai/integrations/partners), including how to keep this page current.

---
Markdown version of https://flowrunner.ai/integrations/bannerbite. Site index: https://flowrunner.ai/llms.txt
