💼 Flixy Business · API v1

The Flixy API, in 5 minutes

A simple JSON REST API: send a request with your key, get your watermark-free creation back.

Create a key

Studio → Business Suite → API → “Create a key”. It is shown only once: keep it secret, server-side.

Start a creation

POST generate.php with a format and a prompt. The response comes back immediately with an id.

Get the file

Poll status.php every 3 seconds. When status is “done”, download “url”.

Authentication

Base URL : https://flixy.design/api/v1/

Authorization: Bearer flx_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

The “X-Api-Key” header is also accepted. Limit: 60 requests per minute per key. Creations are paid in credits with your Business discount; a failed creation is refunded.

Examples

curl -X POST https://flixy.design/api/v1/generate.php \
  -H "Authorization: Bearer $FLIXY_KEY" \
  -H "Content-Type: application/json" \
  -d '{"format":"reel_video","prompt":"A runner smiles at sunrise"}'

Endpoints

POST/api/v1/generate.php

Start a creation (image, edit or video)

Request
{
  "format": "native_square",
  "prompt": "A smiling runner at sunrise on a city bridge",
  "type": "image",
  "params": { "image_size": "2K" },
  "enhance": true
}
Response
{
  "ok": true,
  "id": 1842,
  "status": "queued",
  "type": "image",
  "format": "native_square",
  "credits_charged": 0.29,
  "balance": 412.5,
  "status_url": "https://flixy.design/api/v1/status.php?id=1842"
}
GET/api/v1/status.php?id=1842

Track a creation; "url" gives the final watermark-free file

Response
{
  "ok": true,
  "id": 1842,
  "type": "image",
  "status": "done",
  "url": "https://flixy.design/api/v1/file.php?id=1842&exp=…&sig=…",
  "width": 2048,
  "height": 2048
}
POST/api/v1/copy.php

Generate ad copy in several variants

Request
{
  "kind": "push",
  "brief": "Meditation app, 7-day free trial, busy professionals",
  "lang": "en",
  "variants": 3,
  "tone": "warm",
  "brand": "Calmly"
}
Response
{
  "ok": true,
  "kind": "push",
  "items": [
    { "title": "Breathe. Just 3 minutes.", "message": "Your 7-day free trial is ready.", "image_prompt": "…" }
  ],
  "credits_charged": 0.06,
  "balance": 412.44
}
POST/api/v1/svg.php

Create an animated SVG banner

Request
{
  "brief": "Winter sale -40% on sneakers",
  "width": 300,
  "height": 250,
  "colors": "#FF80BF, #1E1A24",
  "cta": "Shop now",
  "lang": "en"
}
Response
{
  "ok": true,
  "width": 300,
  "height": 250,
  "svg": "<svg xmlns=…>…</svg>",
  "credits_charged": 0.12
}
GET/api/v1/balance.php

Credit balance and account discount

Response
{
  "ok": true,
  "account": "Acme Inc.",
  "balance": 412.44,
  "discount_percent": 20,
  "credit_usd": 1
}
GET/api/v1/formats.php

List of ad formats and copy types

Response
{ "ok": true, "formats": [ … ], "copy_kinds": [ … ] }

generate.php fields

FieldDescription
prompt *Description of the creation (3 to 2,000 characters), in any language.
formatAd format (see the list below): sets framing, length and ad guidelines.
typeimage · edit · video
paramsaspect_ratio, image_size (1K, 2K, 4K), style, lighting · video : resolution (720p, 1080p), duration (4s–10s)
imageBase64 photo (PNG, JPEG, WebP, 12 MB max): to edit (edit) or to animate (video).
continue_fromId of a finished creation to modify or extend.
enhancetrue: the Flixy assistant improves the prompt before creating.

Ad formats

formatNameTypeDelivery size
native_squareSquare native adimage1200×1200
native_wideLandscape native adimage1200×628
push_iconPush iconimage192×192
push_imagePush imageimage720×480
banner_mrecMedium rectangle 300×250image300×250
banner_leaderLeaderboard 728×90image728×90
banner_skySkyscraper 160×600image160×600
social_feedFacebook / Instagram adimage1080×1350
social_storySponsored storyimage1080×1920
reel_videoReel / TikTok advideo1080×1920 · 8s
ctv_videoCTV spotvideo1920×1080 · 10s
social_squareLinkedIn / B2B adimage1200×1200
pin_verticalPinterest pinimage1000×1500
instream_videoYouTube pre-roll / in-streamvideo1920×1080 · 6s
dooh_portraitBus shelter / street furniture screenimage1080×1920
dooh_landscapeDigital billboardimage1920×1080
billboard_4x34×3 m billboard posterimage4×3 m
dooh_videoDOOH video (stations, malls)video1080×1920 · 8s
film_wideFilm scene 16:9video1920×1080 · 8s
film_verticalVertical film scene 9:16video1080×1920 · 8s
packshotSquare product photoimage2048×2048
packshot_portraitPortrait product photoimage1600×2000
poster_portraitPortrait posterimageA3 / A4
poster_landscapeLandscape posterimageA3 / A4
advertorialAdvertorial hero imageimage1600×900

Copy types (“kind” field of copy.php) : native push facebook tiktok banner ctv advertorial titles email

Errors

{ "ok": false, "error": { "code": "insufficient_credits", "message": "Not enough credits for this creation." } }
401 missing_key · invalid_keyMissing, invalid or deleted key.
402 insufficient_creditsNot enough balance: top up your credits.
403 not_businessThe account has no Business access.
422 refusedRequest against the usage rules.
429 rate_limitedMore than 60 requests in one minute.

A technical question? Business support answers 24/7 : business@flixy.design.

Your next post starts here

Create the image, edit or video for your next post for free, in the right format for every network.