Skip to main content
← Ads Studio Endpoint: POST https://api.higgsfield.ai/higgsfield/ads-studio/v1.0 Endpoint ID: higgsfield/ads-studio/v1.0 ▶Open API PlaygroundAds Studio · Generate ads↗

Usage notes

  • Submit one request with your brief. Ad concepts are prepared automatically, then rendered as images; no separate preparation or generate call is required.
  • batch_size selects 1–8 ad concepts. Each concept produces one image, so a fully successful batch returns batch_size images.
  • Rendering uses GPT Image 2.5 Flare with fixed 2k resolution and high quality. Exact dimensions depend on aspect_ratio. quality, resolution, renderer and fallback model are not public inputs.
  • All outputs in a batch use the requested aspect_ratio. Omitting it selects 1:1. The value auto is not supported.
  • Set HF_API_KEY_ID and HF_API_KEY_SECRET to your API credentials. Set a unique IDEMPOTENCY_KEY for each intended generation; reuse it only when retrying that same request.

Quick start

Input schema

string
default:""
Optional product category or business niche used to guide ad concepts. Maximum characters: 1000.
string
required
Required marketing brief describing the product or service, desired message and visual direction. Must contain non-whitespace text. Minimum characters: 1. Maximum characters: 8000. Pattern: \S.
string
default:""
Optional language guidance for ad copy, for example en or ru. This is free text, not a fixed language-code enum. Maximum characters: 80.
integer
default:"1"
Number of ad concepts and requested output images. Billing is summed across the rendered images. Minimum: 1. Maximum: 8.
array
default:"[]"
Optional product or visual reference images. Supply up to 10 directly downloadable HTTP(S) URLs. Omit or send [] for text-only generation. Maximum items: 10. Each item: string. Minimum characters: 1. Maximum characters: 8192. Pattern: ^https?://.
string
default:"1:1"
Output width-to-height ratio shared by every image in the batch. Allowed values: "1:1", "4:5", "5:4", "16:9", "9:16", "4:3", "3:4", "21:9", "3:2", "2:3", "2:1", "1:2", "3:1", "1:3".
string
default:""
Optional description of the intended audience, such as interests, needs or use cases. Maximum characters: 2000.

Product references

Omit image_urls for text-only generation. To guide the ad with your product, send direct image URLs that the service can download without browser cookies or custom authentication headers. An unexpired signed HTTPS URL is suitable. Keep the URLs valid while the request is being processed.
Reference images guide generation; exact preservation of a product, label or text is not guaranteed. Supported oversized references are normalized before rendering. The output remains a PNG at the selected aspect ratio.

Pricing

Illustrative estimate: approximately $0.084 per image. This is a budgeting example, not a fixed charge or maximum price. Actual cost varies with the aspect ratio, prepared prompt, reference images and measured token usage. Consult the current model pricing in the Playground before submitting work. The initial charge is an estimate reconciled to actual rendering usage on completion, with standard credit rounding. Cached input is charged at the cached rate instead of being counted again as uncached input. Ad concept preparation is not billed separately. For a batch, the final price is the sum of the actual image charges. Do not multiply aggregated batch token usage by batch_size again. Three images at the illustrative estimate would budget approximately $0.252; the actual total can differ.

Check request status

Use the returned status_url with the same API credentials. Set REQUEST_ID to the identifier returned when you submit the request:
Follow the shared polling guidance. A request handle confirms acceptance, not successful image generation. Stop polling on completed, failed, nsfw, or canceled, and inspect the returned outputs and errors.

Response

Submission returns one request handle for the entire batch:
Accepted
A fully successful two-image batch returns two indexed images:
Completed
Process every returned image rather than only images[0]. Use its zero-based index to identify its batch slot and inspect errors for unsuccessful slots. After subscribe returns, extend the Python quick start with:
See idempotent requests, polling, request errors and authentication for shared request handling.