SEEAPISEEAPI
Developer CenterDocs
Get API Key
  • Getting Started
  • Authentication
  • List Model Prices
  • Create a Generation
  • Get Task Details
Image Models
Alibaba
Black Forest Labs
ByteDance
Google
Grok
OpenAI
SeeAPI
Video Models
Alibaba
ByteDance
Google
Grok
Kling
Lightricks
MiniMax
PixVerse
Runway
SeeAPI
Vidu
Music Models
Text Models

Templates

  • Alors on Danse API
  • Enzo Fernandez Celebration API
  • Hotel Lobby AI API
  • Neon Duo Dance API
  • Rap Video API
  • Rumpelstiltskin AI Dance API

Policies

  • Data Handling & Privacy
  • Terms of Service
  • Privacy Policy
  • Commercial Use Policy
www.seeapi.com

One AI API for every leading model. Create images, videos, music, and multimodal AI assets online, or build with one unified API.

Explore
  • AI Model Collections
  • AI Tool Alternatives
Developers
  • AI Models
  • API Pricing
  • AI Integrations
  • API Keys
  • Documentation
Support
  • Pricing
  • [email protected]
Legal
  • Privacy Policy
  • Refund Policy
  • Terms & Conditions

Copyright 2026 © SeeAPI. All rights reserved.

GROWCRAFT PTE. LTD.

·5 RAFFLES PLACE, #06-00, RAFFLES PLACE MRT STATION, SINGAPORE 048618

Alors on Danse API

Turn two portraits into a 15-second Alors on Danse duo dance video. The first portrait supplies the appearance of the performer on the left, and the second supplies the performer on the right when both first appear together.

Choose the output resolution and optionally set the aspect ratio and seed. For recognizable results, use one clearly visible person per image, with the face, hair and desired clothing easy to see.

Developer API pricing

Provider: SeeAPI

USD estimate: $0.0037 / credit · Estimated equivalent, not an additional charge.

480p: 330 credits/gen (≈ $1.24/gen)

720p: 720 credits/gen (≈ $2.70/gen)

1080p: 1,780 credits/gen (≈ $6.67/gen)

4k: 3,670 credits/gen (≈ $13.75/gen)

API examples

This example comes from successful API calls. The two input portraits and the output video below belong to the same generation.

Example 1

Input

Portrait 1 · Left performerinput.reference_images[0]
Portrait 1 · Left performer
Portrait 2 · Right performerinput.reference_images[1]
Portrait 2 · Right performer

Output 1

Result 1

These examples are saved API results. Actual generated results may vary.

Request

POST/v1/templates/alors-on-danse/generations
AuthorizationSend your API key in the Authorization header using the Bearer scheme.Authorization: Bearer ****************

Header Params

stringrequired

Identifies a generation request so retries can reuse the same task.

  • Use a new key for each new generation.
  • Retry an identical request with its original key and unchanged body.
Example:
template-order-001

Body Params

application/json
stringrequired

The public provider used to run this template.

  • Send seeapi.
Allowed:seeapi
Default:
seeapi
Example:
seeapi
objectrequired

The portraits and output settings for this generation.

  • Only submit the public fields listed below.
  • The output duration is fixed at 15 seconds.
array <url>required

Portraits of the left and right performers in the duo dance video.

  • Supply an array of exactly two HTTPS image URLs: the left performer first, then the right performer, based on their first appearance together.
  • Use JPEG/JPG, PNG, WebP, BMP, TIFF, or GIF. Each image must be smaller than 30 MB.
  • Width and height must each be 301–5,999 px.
  • The image width-to-height ratio must be greater than 0.4 and less than 2.5.
  • Use direct image URLs that the API can download; URLs must not include credentials or fragments.
  • For best results, show one person per image with a clearly visible face, hair and intended clothing.
  • Replace the example image URLs in the code panel with your own portrait URLs before creating a generation.
min items: 2max items: 2
Example:
["https://customer.example.com/input-1.jpg","https://customer.example.com/input-2.jpg"]
stringoptional

Controls the resolution of the generated video.

  • The selected resolution determines the template price shown above.
Allowed:480p720p1080p4k
Default:
480p
Example:
480p
stringoptional

Controls the width-to-height ratio of the generated video.

  • Use adaptive to follow the template video framing.
  • This setting does not change the allowed proportions of your input images.
Allowed:16:99:161:14:33:421:9adaptive
Default:
adaptive
Example:
adaptive
numberoptional

Controls the random seed used for generation.

  • Reusing the same seed and inputs does not guarantee identical output.
min: 0max: 999999
Default:
0
Example:
0
string <uri>optional

The HTTPS endpoint that receives the generation completion or failure event.

  • Provide an absolute HTTPS URL if you use callbacks.
  • Verify webhook signatures before trusting the notification.

Responses

202The generation has been accepted for processing. Save generation.id and query GET /v1/generations/{task_id} to retrieve the final video.
Bodyapplication/json
  • HTTP 202 confirms acceptance, not completion.
  • The estimated_credits value in the schema example is illustrative; it is not this template’s price.
objectrequired
stringrequired
Example:
task_example
stringrequired

Public template ID.

Example:
alors-on-danse
stringrequired
Allowed:seeapi
Example:
seeapi
objectrequired

Normalized customer input only.

Example:
{"reference_images":["https://customer.example.com/input-1.jpg","https://customer.example.com/input-2.jpg"],"resolution":"480p","aspect_ratio":"adaptive","seed":0}
stringrequired
Allowed:processing
numberrequired

Request-specific template estimate in customer credits; obtain an estimate with Quote Template. The example value is illustrative, not this template's price.

Example:
10
numberrequired
Example:
0
numberrequired
Example:
0
string <date-time>required
Example:
2026-01-01T00:00:00.000Z
string <date-time>required
Example:
2026-01-01T00:00:00.000Z
booleanrequired
Allowed:false
Example:
false
200An idempotent replay returns the existing generation and its current status, rather than creating another task.
Bodyapplication/json
  • The existing task may still be processing or may already be complete.
  • When status is succeeded, read the finished video from generation.result.assets.
objectrequired
stringrequired
stringrequired

Public template ID.

Example:
alors-on-danse
stringrequired
Allowed:seeapi
Example:
seeapi
objectrequired

Normalized customer input only.

stringrequired
Allowed:processingsucceededfailedcanceledrefundedexpired
numberrequired

Estimate recorded on the original task in customer credits.

numberrequired
numberrequired
objectoptional
array <object>required
stringrequired
stringrequired
Allowed:imagevideo
string <uri>required
stringrequired
integerrequired
stringoptional
stringoptional
string <date-time>required
string <date-time>required
string <date-time>optional
booleanrequired
Allowed:true
Example:
true
400

Invalid request or public template input

401

Invalid API key

402

Insufficient credits

403

API key scope or access denied

404

Template or task not found or unavailable

409

Template configuration changed, idempotency conflict, or request still being created

413

Request body too large

429

Rate limit exceeded

503

Service temporarily unavailable

Query Task Status

After submitting a task, use the unified query endpoint to check progress and retrieve results:

Get Task DetailsLearn how to query task status and retrieve generation results

Use generation.id as task_id in GET /v1/generations/{task_id}. When generation.status is succeeded, retrieve the video URL from generation.result.assets. If the task fails, inspect generation.error_code and generation.error_message.

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.

Webhook signing key
Code Examples
Request
const response = await fetch("https://api.seeapi.com/v1/templates/alors-on-danse/generations", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Idempotency-Key": "template-order-001",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
  "provider": "seeapi",
  "input": {
    "reference_images": [
      "https://customer.example.com/input-1.jpg",
      "https://customer.example.com/input-2.jpg"
    ],
    "resolution": "480p",
    "aspect_ratio": "adaptive",
    "seed": 0
  }
})
});

const result = await response.json();
ResponseHTTP 202
{
  "generation": {
    "id": "task_example",
    "template_id": "alors-on-danse",
    "provider": "seeapi",
    "input": {
      "reference_images": [
        "https://customer.example.com/input-1.jpg",
        "https://customer.example.com/input-2.jpg"
      ],
      "resolution": "480p",
      "aspect_ratio": "adaptive",
      "seed": 0
    },
    "status": "processing",
    "estimated_credits": 10,
    "consumed_credits": 0,
    "refunded_credits": 0,
    "created_at": "2026-01-01T00:00:00.000Z",
    "updated_at": "2026-01-01T00:00:00.000Z"
  },
  "idempotent": false
}
PreviousVidu Q4 · Reference to VideoNextEnzo Fernandez Celebration API
Request
const response = await fetch("https://api.seeapi.com/v1/templates/alors-on-danse/generations", {
  method: "POST",
  headers: {
    "Authorization": "Bearer YOUR_API_KEY",
    "Idempotency-Key": "template-order-001",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
  "provider": "seeapi",
  "input": {
    "reference_images": [
      "https://customer.example.com/input-1.jpg",
      "https://customer.example.com/input-2.jpg"
    ],
    "resolution": "480p",
    "aspect_ratio": "adaptive",
    "seed": 0
  }
})
});

const result = await response.json();
ResponseHTTP 202
{
  "generation": {
    "id": "task_example",
    "template_id": "alors-on-danse",
    "provider": "seeapi",
    "input": {
      "reference_images": [
        "https://customer.example.com/input-1.jpg",
        "https://customer.example.com/input-2.jpg"
      ],
      "resolution": "480p",
      "aspect_ratio": "adaptive",
      "seed": 0
    },
    "status": "processing",
    "estimated_credits": 10,
    "consumed_credits": 0,
    "refunded_credits": 0,
    "created_at": "2026-01-01T00:00:00.000Z",
    "updated_at": "2026-01-01T00:00:00.000Z"
  },
  "idempotent": false
}