moonvalley/video-to-video, served by Comfy Router from Moonvalley.
Quick start
Create a key at platform.comfy.org/profile/api-keys and export it asCOMFY_API_KEY. The Python and TypeScript snippets use the Comfy SDKs (pip install comfy-sdk, npm install @comfyorg/sdk); the cURL snippet is the same call over raw HTTP.
Model ID: moonvalley/video-to-video
Endpoint: POST https://api.comfy.org/v2/models/moonvalley/video-to-video
Schema
Input
string
required
Supported types for video controlPossible values:
motion_control, pose_controlstring
Url to control image
object
object
integer
default:"6"
Intensity of motion controlFormat:
int32number
default:"10"
Guidance scale for generation controlFormat:
floatstring
Negative prompt text
integer
default:"9"
Random seed for generation (default: random)
integer
default:"80"
Number of denoising steps
boolean
default:"true"
Whether to use negative prompts
string
required
Describes the video to generate
string
required
Url to control video
string
Optional webhook URL for notifications
GET /v2/models/moonvalley/video-to-video/openapi.json, the same document it validates a call against before the request reaches the provider.
Output
Router does not publish an output schema for this model.Examples
Input
Before you ship
The SDKs create anIdempotency-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. Download generated assets promptly because result URLs can expire.
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.