API
Use the AdGreetz Creative REST API to create video, static, carousel, and rich media ads from your own apps and backends.
AdGreetz exposes a versioned Creative REST API for server-to-server integrations. It uses the same generation pipelines as Creative Studio and returns JSON for every request.
https://app.adgreetz.com/api/v1
Authenticate with a bearer API key from Settings → API Keys, or a Supabase OAuth access token. Create keys and manage connected apps on that page.
Interactive reference
The full endpoint reference is published as OpenAPI 3.1 and rendered with Scalar:
- Creative REST API reference — browse endpoints, schemas, and try requests in the browser
- OpenAPI document — machine-readable spec for codegen and API tools
UGC ads
UGC uses the same video generation resource and editor as the UGC playground:
- Read
GET /api/v1/ugc/optionsfor models, supported durations and creator restrictions. - Read
GET /api/v1/ugc/creators?brand_id=BRAND_ID&source=approved_character. Show the returned names andpreview_urlimages so the user can select a character. Usesource=persona_imagefor that brand's persona images. - Upload local product images with
POST /api/v1/uploadsand PUT the bytes before generating. - Call
POST /api/v1/ugcwith an existing brand, the selected creator and product media:
{
"brand_id": "BRAND_ID",
"creator": { "type": "approved_character", "id": "asset-SELECTED" },
"product_images": [{ "asset_id": "UPLOADED_PRODUCT_ASSET_ID" }],
"duration": 15,
"aspect_ratio": "9:16"
}
Creator alternatives are { "type": "persona_image", "asset_id": "IMAGE_ASSET_ID" } and { "type": "description", "text": "A detailed creator description" }. Persona photos cannot be used with Seedance; select a compatible model from the options response. Custom creators follow the workspace's persona entitlement.
The response contains generation: { type: "video", id }. Auto-render is enabled by default. Poll /api/v1/generations/video/ID using poll_after_seconds, then fetch /api/v1/generations/video/ID/result when rendered. Stop on failed, or on completed with an error: the composition is available but rendering needs recovery. For an edit-first workflow, pass auto_render: false and call the existing render endpoint when ready. Existing cancel and webhook conventions apply.
Submit generation directly. The workflow calculates costs and returns INSUFFICIENT_CREDITS if funds are insufficient. Tell the user and wait until they add funds and ask to continue. A queued job that later runs out of funds reports error_code: "INSUFFICIENT_CREDITS" on its status/webhook. Any returned credit estimate is informational; the agent does not need a balance precheck or cost calculation.
Use Idempotency-Key to retry a creation request safely within the existing API idempotency window. Product, scene, video and audio references accept an asset_id or a public HTTPS url; private library media must use asset IDs. Model-specific reference limits are enforced. API UGC currently supports team workspaces and existing brands; drafts/finalize and brand creation are excluded.
Related
For agent-first integrations over the Model Context Protocol, see the MCP docs and MCP setup guide.