Rumpelstiltskin AI Dance API
Create a 15-second comic barn scene with two people: the first portrait becomes the dancer, who makes a shushing gesture and performs playful tiptoe steps; the second becomes the seated observer. The template supplies the choreography, setting, costumes and soundtrack. Submit two portraits in role order, choose the output resolution and framing, then retrieve the finished video.
Developer API pricing
Provider: SeeAPI
USD estimate: $0.0037 / credit · Estimated equivalent, not an additional charge.
720p: 490 credits/gen (≈ $1.84/gen)
1080p: 730 credits/gen (≈ $2.74/gen)
API examples
These examples were generated through real calls to the SeeAPI API. Choose a case to explore the inputs and actual generated results.
Example 1
Input
input.reference_images[0]
input.reference_images[1]
Output 1
Result 1
These examples are saved API results. Actual generated results may vary.
Request
/v1/templates/rumpelstiltskin-ai-dance/generationsHeader Params
Identifies a generation request so it can be retried without creating another video.
- Use a fresh key for each new video.
- After a timeout, retry with the original key and an identical request body.
- Example:
template-order-001
Body Params
application/jsonIdentifies the API provider for this generation.
- Use seeapi. Other values return HTTP 400.
seeapi- Default:
seeapi- Example:
seeapi
objectrequiredContains the portraits and output settings for the dance video.
- Submit only the public fields listed below.
- The template creates one 15-second video. Duration, choreography, background and soundtrack are preset.
Contains the portraits and output settings for the dance video.
- Submit only the public fields listed below.
- The template creates one 15-second video. Duration, choreography, background and soundtrack are preset.
Assigns the two portrait identities to the dancer and seated observer.
- Send exactly two directly accessible HTTPS image URLs in an array, without embedded credentials or URL fragments.
- Order matters: the first portrait is the dancer; the second is the seated observer, including reaction close-ups and rear views.
- Use one clearly visible person per image, with an unobstructed face and recognizable hair.
- Accepted formats: JPEG and PNG. Each image must be no larger than 10 MiB (10,485,760 bytes).
- Both dimensions must be at least 300 px; the width-to-height ratio must be between 0.4 and 2.5, inclusive.
- Replace the example portrait URLs with your own. Do not add a background image or source video to this array.
- Example:
["https://customer.example.com/input-1.jpg","https://customer.example.com/input-2.jpg"]
Sets the output video resolution.
720p1080p- Default:
720p- Example:
720p
Sets the aspect ratio of the output video.
- Omit this field to use the template’s auto setting, or choose one of the listed ratios.
- This setting controls the output framing, not the dimensions of your input portraits.
auto21:916:91:19:16- Default:
auto- Example:
auto
URL that receives notifications when the generation succeeds or fails.
- Use an absolute HTTPS URL. Omit this field if you poll for task status.
Responses
202The generation was accepted and is still processing. Save generation.id to query the task; acceptance does not mean the video is ready.
objectrequired
- Example:
task_example
Public template ID.
- Example:
rumpelstiltskin-ai-dance
seeapi- Example:
seeapi
Normalized customer input only.
- Example:
{"reference_images":["https://customer.example.com/input-1.jpg","https://customer.example.com/input-2.jpg"],"resolution":"720p","aspect_ratio":"auto"}
processingRequest-specific template estimate in customer credits; obtain an estimate with Quote Template. The example value is illustrative, not this template's price.
- Example:
10
- Example:
0
- Example:
0
- Example:
2026-01-01T00:00:00.000Z
- Example:
2026-01-01T00:00:00.000Z
false- Example:
false
200An idempotent retry returned the existing generation and its current status. No new generation was created.
objectrequired
Public template ID.
- Example:
rumpelstiltskin-ai-dance
seeapi- Example:
seeapi
Normalized customer input only.
processingsucceededfailedcanceledrefundedexpiredEstimate recorded on the original task in customer credits.
objectoptional
array <object>required
imagevideotrue- Example:
true
Invalid request or public template input
Invalid API key
Insufficient credits
API key scope or access denied
Template or task not found or unavailable
Template configuration changed, idempotency conflict, or request still being created
Request body too large
Rate limit exceeded
Service temporarily unavailable
Query Task Status
After submitting a task, use the unified query endpoint to check progress and retrieve results:
Poll GET /v1/generations/{task_id} using the returned generation.id, or use an HTTPS callback_url for terminal notifications. When status is succeeded, read the video URL from generation.result.assets. If the task fails, inspect its public error before submitting a corrected request with a new idempotency key.
Callbacks
Manage the secret used to verify generation webhook signatures. Callback URLs are supplied when you create each generation.
Webhook flow
Callback URL per generation.