Banners

New banners in the design of a banner you already have

Send one banner whose design you love (reference — an ad you made, or one you liked) and what you need now (brief), and get new banners that look like the same designer made them: the same layout, type, colours, decorations and photo style, with your new words, photo and offer. Several at once: variants (one banner per offer — three products, three sales) or count (different angles of one brief), each in every size of formats (1:1, 4:5, 9:16 story, 16:9 web; the first size is drawn from the reference, the others from that finished first one). How it works: an art director (Gemini 3.1 Pro) studies the reference and writes every banner's exact words — prices, numbers, dates and places ONLY from your brief, never invented — the photo, the colours (yours with brand_id, or the business's own) and the props; the picture model (Nano Banana Pro, or Nano Banana 2.1 with quality: "fast") draws the whole ad, words included; then every picture is READ BACK by a second model and corrected until it says exactly what was planned (a misspelled word, a wrong figure, a copied word of the reference, a broken hand), a few rounds at most — a picture still not exact is delivered with a warning naming what is off. Your photos (images) are used as the real subject. Your logo (logo_url, or the brand's) is never drawn by the model: the design leaves a calm corner and the real file is laid there on a small white badge. Every banner comes with a ready caption and at most 5 hashtags. Asynchronous: the call answers 202; poll GET /v1/executions/{id} — output.progress counts the finished pictures, and output.banners[].pictures[] holds the files (JPEG, about 2K). The files are kept 24 hours. The price is the real cost of what ran (the director, each picture and correction, each read-back) times the standard markup; the estimate is the worst case (every correction round used) and is what is reserved.

Billing: Real cost of the run × the standard markup: the director, each picture and correction, each read-back — per picture delivered · Rate limit: 6/min · Asynchronous

post/v1/banner/clone

Request

  • Base URL: https://apihub.co.il
  • URL: https://apihub.co.il/v1/banner/clone
  • Auth: HTTP bearer

Headers

Idempotency-Keystring

Replay-safe: the same execution is returned instead of charging twice

X-Tagstring

Group calls into one job (e.g. one video) — see GET /v1/usage?tag=…

x-wait-msinteger

Wait for the job inside this call (ms)

Request body

briefstring

What the new banner is for, in your words: the business, the offer, the price, the place, the gift, who it is for. Prices, numbers and places come ONLY from here (and from variants) — nothing is invented

countinteger

Without variants: how many different banners to make from the one brief (each with its own headline angle and photo, the same facts)

colors'auto' | 'reference'

auto = the business's own colours where they differ from the reference (a brand's colours when there is one) · reference = keep the reference's colours exactly

imagesstring[]

Your own photos to put in (the product, the place, a person) — they stay recognisable

formatsstring[]

The sizes of every banner: 1:1 (feed), 4:5 (feed, taller), 9:16 (story / reels), 16:9 (web / YouTube). The first is drawn from the reference, the others from that finished first one

quality'best' | 'fast'

best = Nano Banana Pro (the sharpest words and photos) · fast = Nano Banana 2.1 (about a third of the price)

brand_idstring

A brand of yours (GET /v1/brands): its name, colours, tone and logo — default = your default brand

language'he' | 'en'
logo_urlstring uri

Your logo (PNG with transparency is best): the real file is laid on the corner the design leaves calm, on a small white badge — never drawn by the model

variantsstring[]

Several offers at once, each its own banner in the same design — e.g. three products or three sales. brief then holds what they share (the business, the place)

referencestring uri required

The banner whose design you want (JPEG / PNG / WebP): an ad you made or liked. Its layout, type, colours, decorations and photo style are copied — never its words

photo_directionstring

A line on what the photo should show (who, where, the mood)

Response

Completed (or 202 while processing)

idstring

Execution id — stable across internal retries; use it with GET /v1/executions/{id}

status'pending' | 'processing' | 'completed' | 'partial' | 'failed' | 'cancelled' | 'timeout'
operationstring
tagstring nullable

Your X-Tag, if sent

created_atstring date-time
completed_atstring date-time nullable
outputobject

Operation result (see each operation). While a Studio render is processing: stage (queued · transcribing · downloading · preparing · cleaning_voice · mixing_audio · rendering · finishing), phase (the engine's: download · prepare · voice · audio · encode · qa · upload, or null), progress (a percent, 0–100) and progress_fraction (0–1), eta_seconds (seconds left, never below 0) and estimate_seconds

errorstring nullable

Changes

No recorded changes to this operation across all 2 revisions of this API.