> ## Documentation Index
> Fetch the complete documentation index at: https://docs.magnific.com/llms.txt
> Use this file to discover all available pages before exploring further.

# PixVerse V6 Transition API

> Generate first-to-last frame video transitions with PixVerse V6. Interpolate between two images with flexible 1-15s durations, camera movement, and native audio.

## Overview

PixVerse V6 Transition is an image-to-video API that interpolates a video between two keyframes. Provide a `first_image_url` and an `end_image_url`, and PixVerse V6 generates a smooth transition between the two frames guided by your `prompt`. Both images are required. Compared to PixVerse V5.5 Transition, version 6 unlocks flexible 1-15 second durations and adds multi-clip output, while keeping camera movement presets, native audio, and prompt reasoning.

### Key capabilities

* **First-to-last frame transition**: interpolate between the required `first_image_url` and `end_image_url` in a single request
* **Flexible duration (1-15 seconds)**: any integer length from `1` to `15`, with default `5` (previously fixed to `5`, `8`, or `10`)
* **Camera movement presets**: 20 options including `zoom_in`, `zoom_out`, `pan_left`, `pan_right`, `crane_up`, `hitchcock`, `whip_pan`, `camera_rotation`
* **Multi-clip with dynamic cameras**: enable `generate_multi_clip_switch` for multi-clip output with camera changes in a single generation
* **Native synchronized audio**: enable `generate_audio_switch` to produce music, sound effects, or dialogue together with the video
* **Prompt reasoning (`thinking_type`)**: choose `enabled` (default), `disabled`, or `auto` to control prompt rewriting
* **Resolutions**: `360p`, `540p`, `720p`, `1080p`
* **Aspect ratios**: `widescreen_16_9` (default), `classic_4_3`, `square_1_1`, `traditional_3_4`, `social_story_9_16`
* **Async processing**: poll the task endpoint or receive a webhook notification on completion

### Use cases

* **Story transitions**: scene-to-scene cuts and morphs that bridge two shots in any duration
* **Product reveals**: transition between a closed and open, or before and after, product state
* **Marketing and ads**: dynamic transitions with camera movement, multi-clip output, and synchronized audio
* **Social content**: vertical `social_story_9_16` transitions for TikTok, Instagram Reels, and YouTube Shorts
* **Short films and teasers**: longer 10-15 second transition sequences with camera changes

<div className="my-11">
  <Columns cols={2}>
    <Card title="POST /v1/ai/image-to-video/pixverse-v6-transition" icon="video" href="/api-reference/image-to-video/pixverse-v6-transition/create">
      Generate a first/last frame transition with PixVerse V6
    </Card>

    <Card title="GET /v1/ai/image-to-video/pixverse-v6-transition/{task-id}" icon="magnifying-glass" href="/api-reference/image-to-video/pixverse-v6-transition/task-by-id">
      Get task status and result by ID
    </Card>

    <Card title="GET /v1/ai/image-to-video/pixverse-v6-transition" icon="list" href="/api-reference/image-to-video/pixverse-v6-transition/pixverse-v6-transition-tasks">
      List all PixVerse V6 Transition tasks
    </Card>
  </Columns>
</div>

### Parameters

| Parameter                    | Type           | Required | Default           | Description                                                                                         |
| ---------------------------- | -------------- | -------- | ----------------- | --------------------------------------------------------------------------------------------------- |
| `prompt`                     | `string`       | Yes      | -                 | Prompt describing the video transition to generate                                                  |
| `first_image_url`            | `string` (uri) | Yes      | -                 | URL of the image to use as the first frame                                                          |
| `end_image_url`              | `string` (uri) | Yes      | -                 | URL of the image to use as the last frame                                                           |
| `resolution`                 | `string`       | No       | -                 | Output resolution: `360p`, `540p`, `720p`, `1080p`                                                  |
| `aspect_ratio`               | `string`       | No       | `widescreen_16_9` | `widescreen_16_9`, `classic_4_3`, `square_1_1`, `traditional_3_4`, `social_story_9_16`              |
| `duration`                   | `integer`      | No       | `5`               | Video length in seconds. Any integer from `1` to `15`                                               |
| `negative_prompt`            | `string`       | No       | `""`              | Negative prompt for the generation                                                                  |
| `style`                      | `string`       | No       | -                 | Visual style: `anime`, `3d_animation`, `clay`, `cyberpunk`, `comic`                                 |
| `seed`                       | `integer`      | No       | -                 | Reproducibility seed; same seed + same prompt yields the same video                                 |
| `camera_movement`            | `string`       | No       | -                 | Camera preset (e.g., `zoom_in`, `pan_left`, `crane_up`, `hitchcock`, `whip_pan`, `camera_rotation`) |
| `generate_audio_switch`      | `boolean`      | No       | `false`           | When `true`, generates synchronized audio (music, SFX, or dialogue) with the video                  |
| `generate_multi_clip_switch` | `boolean`      | No       | `false`           | When `true`, produces multi-clip output with dynamic camera changes in a single generation          |
| `thinking_type`              | `string`       | No       | `enabled`         | Prompt reasoning mode: `enabled`, `disabled`, or `auto`                                             |
| `webhook_url`                | `string` (uri) | No       | -                 | Optional callback URL that receives task status notifications                                       |

## Frequently Asked Questions

<AccordionGroup>
  <Accordion title="What is the difference between PixVerse V6 Transition and PixVerse V5.5 Transition?">
    PixVerse V6 Transition adds flexible duration (any integer from `1` to `15` seconds instead of fixed `5`, `8`, or `10`) and multi-clip output (`generate_multi_clip_switch`). Camera movement, native audio, and prompt reasoning work the same as in V5.5 Transition.
  </Accordion>

  <Accordion title="How does the transition work?">
    Provide a `first_image_url` and an `end_image_url`. PixVerse V6 interpolates a video between the two frames using your `prompt` as guidance, producing the transition in a single request. Both images are required.
  </Accordion>

  <Accordion title="Which durations are supported?">
    PixVerse V6 Transition accepts any integer duration from `1` to `15` seconds, with a default of `5`. You are no longer limited to fixed steps, so you can match the exact length of your transition.
  </Accordion>

  <Accordion title="What camera movements are available?">
    20 presets are supported, including `zoom_in`, `zoom_out`, `pan_left`, `pan_right`, `crane_up`, `hitchcock`, `whip_pan`, and `camera_rotation`. Leave `camera_movement` unset for a static camera.
  </Accordion>

  <Accordion title="What does generate_multi_clip_switch do?">
    When set to `true`, PixVerse V6 produces multi-clip output with dynamic camera changes inside a single generation, simulating cuts and camera moves without stitching multiple requests.
  </Accordion>

  <Accordion title="What are the rate limits and pricing?">
    Rate limits and pricing depend on your subscription tier. See [Rate Limits](/ratelimits) and the [Pricing page](/pricing) for current values.
  </Accordion>
</AccordionGroup>

## Best practices

* **Frame consistency**: choose two frames that share scene context (subject, framing, lighting) for the smoothest interpolation
* **Input quality**: provide sharp, well-lit images with a clear subject for the strongest motion and style stability
* **Duration selection**: use the shortest duration that conveys the transition to reduce cost; reserve 10-15s for narrative sequences
* **Camera and multi-clip**: combine `camera_movement` and `generate_multi_clip_switch` for dynamic, multi-shot transitions
* **Production integration**: use `webhook_url` instead of polling for scalable workflows
* **Error handling**: implement retry with exponential backoff for 503 responses

## Related APIs

* **PixVerse V5.5 Transition**: prior transition endpoint with fixed `5`/`8`/`10` second durations and no multi-clip output. See the [PixVerse V5.5 Transition overview](/api-reference/image-to-video/pixverse-v5-5-transition/overview).
* **PixVerse V6 (image-to-video)**: animate a single image or run a transition natively via `last_frame_image`. See the [PixVerse V6 overview](/api-reference/image-to-video/pixverse-v6/overview).
* **PixVerse V6 Text to Video**: generate a video from a text prompt with no input image. See the [PixVerse V6 Text to Video overview](/api-reference/text-to-video/pixverse-v6/overview).
