---
title: "Quote Animation Export"
method: POST
path: "/v1/animation-exports/quote"
tags: ["Public API"]
---

# Quote Animation Export

`POST /v1/animation-exports/quote`

## Request

- Base URL: `https://api.animgen.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.animgen.com/v1/animation-exports/quote`
- Auth: HTTP bearer

## Request body

- AnimationExportCreateRequest
  - `source_video_asset_id` string, uuid, required: Owned source video asset ID, not a task ID. Reuse an existing video to avoid generating motion again.
  - `selection` Selection
    - `mode` 'full' | 'range': full uses the complete source; range requires duration_seconds.
    - `start_seconds` number: Range start in seconds from the source beginning.
    - `duration_seconds` number, nullable: Required when mode=range; positive interval length in seconds.
  - `export` ExportOptions
    - `output_formats` string[]: Requested asset formats; defaults to spritesheet in frame_count mode, or spritesheet plus spritesheet_json in FPS mode. Duplicates are removed. Metadata needs its matching texture.
    - `frame_count` integer, nullable: Legacy uniform frame count, mutually exclusive with fps. When both are omitted, uses 24 frames.
    - `fps` number, nullable: Source-speed sampling frequency, without interpolation. Independent exports only; requires spritesheet and spritesheet_json. A short final frame preserves the selection duration.
    - `output_width` integer: Output frame width in pixels.
    - `output_height` integer: Output frame height in pixels.
    - `transparent` ExportTransparency
      - `enabled` boolean: Transparent processing for compatible outputs; requires an alpha_key source and does not make MP4 transparent.
    - `unity` UnityOptions
      - `pixels_per_unit` integer: Unity texture pixels per world unit.
      - `pivot` 'bottom_center': Supported Unity sprite pivot.
  - `metadata` object: Simple scalar/null metadata; at most 4 KiB JSON, no credentials.

## Response `200`

Successful Response

- QuoteResponse
  - `object` 'quote'
  - `credits` integer, required: Current estimated credits. No price lock or spend authorization; creation recalculates the quote.
  - `breakdown` object: Public cost components; use credits as the quoted total.
  - `resolved_export` object, nullable: Final sampling summary for an FPS export from an existing source; null for legacy or generation quotes.
    - `selection` Selection, required
      - `mode` 'full' | 'range': full uses the complete source; range requires duration_seconds.
      - `start_seconds` number: Range start in seconds from the source beginning.
      - `duration_seconds` number, nullable: Required when mode=range; positive interval length in seconds.
    - `fps` number, required: Target sampling frequency; never recalculated as frame_count / duration.
    - `frame_count` integer, required: Number of samples strictly before the selected end.
    - `duration_ms` integer, required: Sum of manifest frame durations in milliseconds.
    - `warnings` ExportWarning[]: Sampling warnings, including repeated source frames without interpolation.
      - `code` string, required
      - `message` string, required
      - `details` object

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/animgen/apis/aianimgenbackend.md) · [All operations](https://skmtc.dev/animgen/apis/aianimgenbackend/llms.txt) · [OpenAPI document](https://skmtc.dev/animgen/apis/aianimgenbackend/revisions/0504d838139a?raw)
