Skip to main content
API Reference for pika/pika-h3-flex-reference-to-video, served by Comfy Router from Pika. Input: Text, Image, Video, Audio · Output: Video + Audio

Quick start

Create a key in your Comfy workspace and export it as COMFY_API_KEY. The Python and TypeScript snippets use the Comfy SDKs (pip install comfy-sdk and npm install @comfyorg/sdk); the cURL snippet is the same call over raw HTTP. Model ID: pika/pika-h3-flex-reference-to-video Endpoint: POST https://api.comfy.org/v2/models/pika/pika-h3-flex-reference-to-video
The same body, sent to POST https://api.comfy.org/v2/models/pika/pika-h3-flex-reference-to-video/requests. Router answers 201 with a request_id as soon as the run is admitted, and the result is collected once it is ready, from this process or another one. Queued delivery walks through status, cancellation and collection.

Schema

Input

string
Output aspect ratio. auto picks one from the prompt and the media inputs. Omit it to let Pika choose: auto when rewrite is on, else the first media input’s ratio, else 16:9.Possible values: auto, 21:9, 16:9, 3:2, 4:3, 5:4, 1:1, 4:5, 3:4, 2:3, 9:16, 9:21
string
default:"\"mono\""
Audio stems only. mono downmixes before separation; stereo keeps both channels. The video’s audio does not change.Possible values: stereo, mono
integer
default:"5"
Video length in whole seconds, 5 to 15.Range: 5 to 15
string
default:"\"video\""
video returns the video only. audio-stems also returns Dialogue, Music and Effect WAV stems in output.stems, and adds Pika’s per-second stem separation charge.Possible values: video, audio-stems
string
required
Text prompt describing the video and its audio.
object[]
required
Ordered reference media: up to 9 images, 3 videos and 3 audio files, 12 in total. At least one image or video is required. Each file is at most 24 MiB. Video and audio clips are 2 to 15 seconds, and at most 15 seconds in total per type. Pika bills reference video seconds in addition to output seconds.
string
required
The media kind of the file.Possible values: image, video, audio
string
required
URL of the reference file. Images are PNG, JPEG or WebP.
string
default:"\"768p\""
Output resolution. 480p and 768p are native. 1080p, 2k and 4k generate at 768p and then upscale, keeping the audio and frame rate.Possible values: 480p, 768p, 1080p, 2k, 4k
boolean
default:"true"
Improve the prompt before generation. Set it to false to use the prompt as written.
integer
default:"0"
Seed for the video, 0 or more.Range: 0 to …Format: int64
Generated from the schema Router serves at GET /v2/models/pika/pika-h3-flex-reference-to-video/openapi.json, the same document it validates a call against before the request reaches the provider.

Output

object
Set on a failed job.
string
Machine-readable failure code, such as invalid_input, content_moderation or provider_error.
string
Diagnostic text.
string
Job id used to poll for status.
string
The Pika catalog entry the job ran.
object
The finished job’s media, set when status is completed.
object
One generated media file.
string
MIME type of the file.
string
Download URL of the generated file.
string
Which field carries the file: video or audio.
object
One generated media file.
string
MIME type of the file.
string
Download URL of the generated file.
string
Job status: queued, running, completed or failed.
object
Units Pika reported for the job.

Examples

Input

Output

Before you ship

The SDKs create an Idempotency-Key and reuse it for automatic retries. For manual retries, reuse the original key. Router can hold the connection for up to 10 minutes. When a request fails, Router sends an X-Comfy-Error-Type response header explaining why. A 422 means Router rejected the input before calling the provider, and a 413 means the request body was larger than Router accepts. Download generated assets promptly because result URLs can expire. Any size limit named in a field description above is the provider’s own bound on that field, quoted from the provider’s specification. Router applies a separate cap to the whole request body, which base64-encoded media counts against: see request body size. This page documents one partner model called through Comfy Router. The same comfy-sdk / @comfyorg/sdk package also ships a second client, for running a whole ComfyUI workflow graph on Comfy Cloud: Comfy(api_key=...) / new Comfy({ apiKey }), with client.workflows, client.assets and client.jobs. See Comfy SDKs.

Headers

Authentication, idempotency, request IDs, error buckets, retry pacing, spend limits.

Using the Router API

Model discovery, validation errors, retries, and billing.

Limitations

What Router does not do today, and what to use instead.