---
title: "Generate a UGC reaction clip"
method: POST
path: "/ugc/reactions"
tags: ["UGC"]
---

# Generate a UGC reaction clip

`POST /ugc/reactions`

Generates a short clip of your character reacting to camera, using image-to-video AI. The character is one of your `character` elements (create one with `POST /elements`).

**Flow:** create the reaction, then poll `GET /ugc/reactions/{id}` until `status` is `completed`. The finished clip also appears in `GET /ugc/reactions` and can be used as `reactionId` in `POST /ugc/videos`.

**Cost:** by quality (see the response `creditsUsed`). Credits are refunded automatically if generation fails.

Requires an active paid subscription.

## Request body

- object
  - `avatarImageUrl` string, uri — Dashboard use only. Public callers pass `elementId` instead; an avatarImageUrl from the public API must be an AITuber-hosted asset URL.
  - `elementId` string, uuid — The character element to react. Get IDs from `GET /elements` (type `character`) or create one with `POST /elements`.
  - `avatarId` string, uuid — Legacy avatar ID. Prefer `elementId`.
  - `reactionPrompt` string — Direct control over the reaction, e.g. "shocked, eyes wide, leaning back". Provide this OR hookText.
  - `hookText` string — The hook the character is reacting to. The AI turns it into a fitting expression. Provide this OR reactionPrompt.
  - `quality` 'good' | 'premium' — Generation quality. `premium` costs more and looks better.

## Response `200`

OK

- object
  - `reactionVideoId` string, uuid, required — Poll `GET /ugc/reactions/{id}` until completed.
  - `status` 'pending', required
  - `creditsUsed` number, required
  - `name` string, required — AI-generated name for the reaction.
  - `tags` string[], required — AI-generated keywords for the reaction.

## Other responses

- `401` — 401
- `402` — 402
- `403` — 403

---

[API](https://skmtc.net/aituber/apis/aituber-api.md) · [All operations](https://skmtc.net/aituber/apis/aituber-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/aituber/aituber-api/revisions/35448566f143/schema)
