---
title: "seedance-2-first-last-frame (balanced)"
method: POST
path: "/api/v1/seedance-2-first-last-frame"
tags: ["Video: Edit & Effects"]
---

# seedance-2-first-last-frame (balanced)

`POST /api/v1/seedance-2-first-last-frame`

## Request

- Base URL: `https://api.muapi.ai`
- URL: `https://api.muapi.ai/api/v1/seedance-2-first-last-frame`
- Auth: one of:
  - API key in header `x-api-key`
  - OAuth 2 (client credentials, token URL `https://api.muapi.ai/oauth/token`)

Generate a video from a start frame (and optional last frame) using Seedance 2. Input: prompt + images_list (1 image = start only, 2 images = start + last for guided interpolation). Output: video. Use for: smooth transitions, morph effects, before/after animation, controlled start-frame video.

## Query parameters

- `webhook` string
- `team_id` integer, nullable

## Headers

- `x-api-key` string
- `x-embed-code` string, nullable
- `x-agent-embed-code` string, nullable
- `x-whitelabel-studio` string, nullable
- `authorization` string, nullable

## Request body

- Seedance2PiapiFirstLastRequest
  - `prompt` string, required: Text prompt describing the video (max 4000 characters).
  - `images_list` string[], required: 1 image = first frame only; 2 images = first and last frame.
  - `webhook_url` string, uri, nullable
  - `aspect_ratio` 'adaptive' | '21:9' | '16:9' | '4:3' | '1:1' | '3:4' | '9:16': Output aspect ratio. 'adaptive' matches the input frames (recommended for first/last-frame transitions). Concrete ratios may crop or pad.
  - `duration` integer
  - `high_bitrate` boolean
  - `resolution` '720p' | '1080p' | '4k': Output resolution. Price scales with resolution — see the model's pricing table.

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/muapi/apis/muapi-api.md) · [All operations](https://skmtc.dev/muapi/apis/muapi-api/llms.txt) · [OpenAPI document](https://skmtc.dev/muapi/apis/muapi-api/revisions/e4b7374381e5?raw)
