Skip to main content

Bannerbear integration

Generate branded images, videos, and collections from Bannerbear templates and react to renders completing on behalf of your clients.

What it does

The Bannerbear integration lets your agency render on-brand creative for a client from inside a workflow. Connect a client's Bannerbear project once and your workflows can generate static images from a template with per-layer modifications, render videos, animated GIFs, multi-scene movies and web-page screenshots, produce every campaign size at once as a collection, gate a video behind an approval step, look up or page through any render, and manage the templates and template sets the renders are built from.

Connect a Bannerbear account

  1. Open your workspace in TaskJuice and navigate to Connections.
  2. Choose Bannerbear and click Connect.
  3. In a new tab, open the Bannerbear dashboard signed in as the client (or as your agency, if the client has invited you into their project).
  4. Open the project you want to wire up, go to Settings, API Key, and copy the project API key. Project-scoped keys are preferred so revocation stays scoped to that one client.
  5. Paste the key into TaskJuice. Bannerbear authenticates every request with Authorization: Bearer {api_key}.

To rotate or revoke credentials, return to the Bannerbear project Settings, regenerate the API key, and update the TaskJuice connection.

Triggers

TaskJuice covers every event Bannerbear's project-level Event Webhooks emit. Each one delivers the full asset object as a single activation — one POST is one render, never a batch.

TriggerFires when
bannerbear/image-createdan image finishes rendering
bannerbear/collection-createda collection finishes rendering
bannerbear/video-createda video finishes rendering
bannerbear/animated-gif-createdan animated GIF finishes rendering
bannerbear/movie-createda movie finishes rendering
bannerbear/screenshot-createda screenshot finishes capturing
bannerbear/template-createda template is created in the project
bannerbear/template-editeda template is edited

You do not register these yourself. Publishing a workflow registers the webhook with Bannerbear over its API. Because Bannerbear accepts one event per registration, TaskJuice creates a separate webhook per trigger you use, all pointing at the same delivery URL.

Turning a workflow off or deleting it stops the deliveries reaching it, but leaves the registration in place at Bannerbear — it is marked dormant and cleaned up automatically later. Removing the Bannerbear connection is what deletes the registrations from your project immediately. You can also delete them yourself in Bannerbear's Advanced Settings at any time.

The event name arrives in the Bannerbear-Event header, which is how TaskJuice tells deliveries apart — template_created and template_edited post an identical body and are distinguishable by nothing else.

Bannerbear deliveries are not verified

Bannerbear authenticates deliveries by sending its own Project Webhook Key as a bearer token on the Authorization header, and gives no way to set that header to a value TaskJuice chooses. Since that key differs per project and is not readable through Bannerbear's API, TaskJuice cannot check it, and inbound deliveries are accepted unverified. What protects your workflow is the ingress URL itself: it is unguessable and unique to your tenant. Treat trigger data as unattested and re-read anything security-relevant through an action before acting on it.

Actions

Images

  • bannerbear/create-image renders a single image from a template with a list of layer modifications, optional transparent background, optional PDF render, and optional template version pin.
  • bannerbear/get-image fetches an image render by UID and returns the final image_url once status is completed.
  • bannerbear/list-images pages through image renders for the connected project (max 100 per page).

Videos

  • bannerbear/create-video renders a branded video from a video template with optional input media URL, layer modifications, and GIF preview generation.
  • bannerbear/get-video fetches a video render by UID, including percent_rendered for an in-flight render.
  • bannerbear/list-videos pages through video renders for the connected project.
  • bannerbear/update-video approves a video for rendering or corrects its transcription. Setting approved to true releases a video queued behind a video template that requires approval.

Collections

  • bannerbear/create-collection renders a full template set as a single collection so a workflow can produce every campaign size in one call.
  • bannerbear/get-collection fetches a collection by UID and returns image_urls keyed by template.
  • bannerbear/list-collections pages through collection renders for the connected project.

Animated GIFs, movies and screenshots

  • bannerbear/create-animated-gif, bannerbear/get-animated-gif, bannerbear/list-animated-gifs render and read back animated GIFs, one frame of modifications per animation step.
  • bannerbear/create-movie, bannerbear/get-movie, bannerbear/list-movies assemble a multi-scene movie from ordered input clips with an optional transition and soundtrack.
  • bannerbear/create-screenshot, bannerbear/get-screenshot, bannerbear/list-screenshots capture a public web page at a given viewport size.

Templates and sets

  • bannerbear/list-templates and bannerbear/get-template read the templates in the connected project, optionally filtered by tag or name, including each template's modifiable layer names.
  • bannerbear/create-template, bannerbear/duplicate-template, bannerbear/update-template and bannerbear/delete-template manage templates. Deleting a template is irreversible; renders already produced from it are kept.
  • bannerbear/list-video-templates and bannerbear/get-video-template read video templates, including whether one requires approval before rendering.
  • bannerbear/list-template-sets, bannerbear/get-template-set, bannerbear/create-template-set and bannerbear/update-template-set group templates into the sets Create Collection renders.

Known limitations

  • The Bannerbear API enforces a rate limit of 30 requests per 10 seconds per account. When Bannerbear returns 429, the action surfaces as a retryable rate-limit error so the workflow can back off and resume.
  • Image, video, and collection renders are asynchronous and respond with 202 Accepted. The action returns immediately with status pending and the render's uid; use bannerbear/get-image to poll for completion, or wait for the bannerbear/image-created webhook to fire.
  • Bannerbear does not HMAC-sign webhook bodies, and the bearer token it sends is its own Project Webhook Key rather than a value TaskJuice can set — so deliveries reach your workflow unverified. See the trigger callout above.
  • Bannerbear has no endpoint for editing a webhook registration, so changing which events a workflow listens for deletes and recreates the registrations rather than updating them in place.
  • This integration targets Bannerbear's V2 API. V5 is a separate, newer API with its own keys, and a V5 key will not authenticate against V2 endpoints. Generate a V2 project API key, not a V5 one. Bannerbear's V5-only tools suite (background removal, voiceover, subtitling, the video edit operations) and its workflow-run endpoints are therefore not available through this integration.
  • The connected project is fixed on the connection itself. To work across two Bannerbear projects, create a second connection scoped to that project key.
  • Template, template-set, and video-template UIDs must exist in the connected project. Bannerbear returns 404 for unknown UIDs and the action surfaces it as a non-retryable NOT_FOUND error.
Was this helpful?