YepAPI
AI Models

Wan 2.7

Alibaba's Wan 2.7. AI video generation with audio and first/last-frame control, 2-10 seconds.

POST/v1/media/queue
from $0.21/second

Overview

Alibaba's Wan 2.7 — video generation with audio and first/last-frame control. Async operation — submit a job, poll for completion.

PropertyValue
Model IDalibaba/wan-2.7
ProviderAlibaba
Resolutions720p, 1080p
Aspect Ratios16:9, 9:16, 1:1, 4:3, 3:4
Duration2–10 seconds
Audio GenerationSupported
BillingDynamic (actual cost per job)
Pricingfrom $0.21/second

Usage

All media models use the async job queue. Submit a job, then poll for the result.

Step 1: Submit Job

Text-to-Video

const res = await fetch('https://api.yepapi.com/v1/media/queue', {
  method: 'POST',
  headers: {
    'x-api-key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'alibaba/wan-2.7',
    prompt: 'A cinematic drone shot over a rugged coastline at golden hour',
    options: {
      aspectRatio: '16:9',
      resolution: '720p',
      duration: '5',
    },
  }),
});
const { data } = await res.json();
// data.jobId — use this to poll for results
curl -X POST https://api.yepapi.com/v1/media/queue \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "alibaba/wan-2.7", "prompt": "A cinematic drone shot over a rugged coastline", "options": {"aspectRatio": "16:9", "resolution": "720p", "duration": "5"}}'

Image-to-Video

Pass a reference image via imageData with an imageRole (first_frame or last_frame) to generate a video from a still image.

const res = await fetch('https://api.yepapi.com/v1/media/queue', {
  method: 'POST',
  headers: {
    'x-api-key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'alibaba/wan-2.7',
    prompt: 'Animate this scene — clouds drifting, light changing',
    options: {
      aspectRatio: '16:9',
      resolution: '720p',
      duration: '5',
      imageRole: 'first_frame',
    },
    imageData: {
      mimeType: 'image/jpeg',
      base64: '...', // Base64-encoded image
    },
  }),
});

Step 2: Poll for Result

const status = await fetch(`https://api.yepapi.com/v1/media/status/${data.jobId}`, {
  headers: { 'x-api-key': 'YOUR_API_KEY' },
});
const { data: job } = await status.json();
// job.status — "pending" | "processing" | "completed" | "failed"
// job.result.video — { mimeType, base64 } when completed
curl https://api.yepapi.com/v1/media/status/JOB_ID \
  -H "x-api-key: YOUR_API_KEY"

Request Body

ParameterTypeRequiredDescriptionDefault
modelstringYesalibaba/wan-2.7 or aliases wan, wan-2-7
promptstringYesText description of the video to generate
options.aspectRatiostringNoOne of: 16:9, 9:16, 1:1, 4:3, 3:416:9
options.resolutionstringNo720p, 1080p720p
options.durationstringNo2 to 10 (seconds)5
options.generateAudiobooleanNoGenerate an audio track for the videofalse
options.imageRolestringNoHow to use the input image: first_frame or last_framefirst_frame
imageData.mimeTypestringNoMIME type of input image (image/png, image/jpeg, image/webp)
imageData.base64stringNoBase64-encoded input image for image-to-video generation

Pricing

TierCost/sec
All resolutions$0.21

Example: 5-second video ≈ 5 x $0.21 = $1.05. Billing is dynamic — each job is billed from the actual cost of the finished video, so shorter or lower-resolution jobs cost less.

Info

Video jobs can take several minutes to complete. Results retained for 1 hour.

Under the Hood

Powered by Alibaba's Wan 2.7 via our AI provider. 100% margin on upstream costs.

On this page