---
title: "Queue an AI image or video generation"
method: POST
path: "/studio/generations"
tags: ["AI Studio"]
---

# Queue an AI image or video generation

`POST /studio/generations`

## Request

- Base URL: `https://app.getprolifik.com/api/v1`
- URL: `https://app.getprolifik.com/api/v1/studio/generations`
- Auth: HTTP bearer

Returns a job immediately and charges credits up front (refunded if the job fails). Poll /studio/generations/{generationId} for completion and signed outputs. Accepted params depend on the model: read /studio/models for aspect ratios, durations, and resolutions.

## Headers

- `Idempotency-Key` string, required

## Request body

- CreateStudioGeneration
  - `kind` 'image' | 'video' | 'talking-head', required
  - `modelKey` string, required
  - `prompt` string
  - `influencerId` string, uuid
  - `params` object, required
    - `aspectRatio` string
    - `resolution` '480p' | '720p' | '1080p'
    - `numImages` 1 | 4
    - `template` 'none' | 'iphone-selfie' | 'shocked'
    - `enhance` boolean: Image only: rewrite the prompt into a detailed photographic brief before generating. The prompt as sent is returned in params.enhancedPrompt.
    - `imageKey` string
    - `motionPrompt` string
    - `durationSec` integer: Must be one of the model's durationsSec.
    - `generateAudio` boolean
    - `script` string
    - `language` string: Talking-head only; one of the talkingHeadLanguages returned by /studio/models.
    - `captions` boolean

## Response `202`

Generation accepted

- object

## Other responses

- `400`: Request failed
- `401`: Request failed
- `402`: Payment required. error.code is subscription_required (the plan does not include this feature, or the key's account no longer has a plan: API keys are paid-only, so every write from a key whose account has none is refused; see error.upgradeUrl), insufficient_credits (the AI-credit balance is short; see error.needed, error.balance, error.upgradeUrl), or quota_exceeded (a plan quota such as monthly videos or clip minutes).
- `403`: Request failed
- `404`: Request failed
- `409`: Request failed
- `429`: Request failed
- `503`: Request failed

---

[API](https://skmtc.dev/getprolifik/apis/prolifik-public-api.md) · [All operations](https://skmtc.dev/getprolifik/apis/prolifik-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getprolifik/apis/prolifik-public-api/revisions/301e79c5763c?raw)
