Skip to main content
POST
/
v1
/
jobs
/
submit
Veo 3.1 — Start-End Frame to Video
curl --request POST \
  --url https://api.muvi.video/v1/jobs/submit \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "<string>",
  "input": {
    "prompt": "<string>",
    "start_frame_url": "<string>",
    "end_frame_url": "<string>",
    "aspect_ratio": "<string>",
    "duration": "<string>",
    "resolution": "<string>"
  }
}
'
{
  "jobId": "<string>",
  "status": "<string>",
  "estimatedCompletionTime": "<string>",
  "costMicroCents": 123
}

Documentation Index

Fetch the complete documentation index at: https://developer.pixelbyte.app/docs/llms.txt

Use this file to discover all available pages before exploring further.

Generate smooth video transitions between two key frames with Google’s Veo 3.1 model. Provide a start frame, an end frame, and an optional text prompt to guide the in-between motion.
PropertyValue
ProviderGoogle
ModelVeo 3.1
CapabilityStart-End Frame to Video
Base Cost200,000 micro-cents/second ($0.20/sec)
Processing Time~120 seconds

Request Body

model
string
required
Model slug. Use google/veo-3.1/start-end-frame-to-video for start-end frame video generation.
input
object
required
Input parameters for start-end frame to video generation.
webhookUrl
string
HTTPS URL to receive a webhook notification when the job completes or fails.

Pricing

Base cost: 200,000 micro-cents per second ($0.20/sec)
finalCost = baseCost × duration
FactorOptionMultiplier
Duration44x
66x
88x
Default cost: 4 seconds = 200,000 × 4 = 800,000 micro-cents ($0.80)

Response

jobId
string
Unique identifier for the submitted job.
status
string
Initial job status. Always "pending" on successful submission.
estimatedCompletionTime
string
ISO 8601 timestamp of the estimated completion time.
costMicroCents
number
The cost of the job in micro-cents.

Code Examples

curl -X POST https://api.muvi.video/v1/jobs/submit \
  -H "Authorization: Bearer $PIXELBYTE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "google/veo-3.1/start-end-frame-to-video",
    "input": {
      "prompt": "A timelapse of clouds moving over mountains",
      "start_frame_url": "https://example.com/image.jpg",
      "end_frame_url": "https://example.com/image.jpg",
      "aspect_ratio": "16:9",
      "duration": "4",
      "resolution": "720p"
    }
  }'