BeansAI
ModelsPricingDocs
Sign inSign up
ModelsPricingDocs
Sign inSign up

Quickstart

  • Overview

Clients

  • Claude Code
  • CC Switch
  • OpenClaw
  • Roo Code
  • OpenCode
  • Codex CLI
  • GPT Image 2
  • Seedance 2.0
  • SkyReels V4
  • Mureka Song
  • Cursor
  • Cherry Studio

Reference

  • Raw API
← Back to Docs

SkyReels V4

Submit asynchronous SkyReels V4 video-generation tasks through BeansAI with text, image, and omni video references.

Overview

SkyReels exposes native submit endpoints such as POST /api/v1/video/text2video/submit, POST /api/v1/video/image2video/submit, and POST /api/v1/video/omni-video/submit. Task polling uses the matching GET /api/v1/video/:operation/task/:task_id endpoint.

BeansAI keeps one public entrypoint: POST /videos and GET /videos/:task_id. The relay translates BeansAI parameters to the native SkyReels request, inserts the upstream node credential as api_key, and wraps task ids with beansvids_... for later polling.

Models

ModelOperationUse
skyreels-v4-text-stdtext2videoText prompt to video, standard mode
skyreels-v4-text-fasttext2videoText prompt to video, fast mode
skyreels-v4-image-stdimage2videoFirst-frame image to video, standard mode
skyreels-v4-image-fastimage2videoFirst-frame image to video, fast mode
skyreels-v4-omni-stdomni-videoOmni references without video-reference pricing
skyreels-v4-omni-fastomni-videoFast omni references without video-reference pricing
skyreels-v4-omni-video-stdomni-videoOmni video-reference workflow, standard mode
skyreels-v4-omni-video-fastomni-videoOmni video-reference workflow, fast mode

Submit text to video

text-to-video.sh
curl https://api.beansai.dev/v1/videos \
  -H "Authorization: Bearer sk-beans-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "skyreels-v4-text-std",
    "content": [
      {
        "type": "text",
        "text": "A polished green coffee bean logo forms from soft studio light, cinematic product reveal"
      }
    ],
    "ratio": "16:9",
    "duration": "5",
    "resolution": "1080p",
    "mode": "std",
    "generate_audio": false
  }'

Submit image to video

Put a reference image in content[]; BeansAI forwards it as SkyReels first_frame_image.

image-to-video.sh
curl https://api.beansai.dev/v1/videos \
  -H "Authorization: Bearer sk-beans-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "skyreels-v4-image-std",
    "content": [
      { "type": "text", "text": "Animate this product photo into a clean 5 second launch reveal" },
      { "type": "image_url", "image_url": { "url": "https://example.com/product.png" } }
    ],
    "ratio": "9:16",
    "duration": "5",
    "resolution": "720p",
    "mode": "std"
  }'

Submit omni video

Add a video_url content part for the omni video-reference workflow. BeansAI wraps it into SkyReels ref_videos and keeps the public task id pollable through /videos/:task_id.

omni-video.sh
curl https://api.beansai.dev/v1/videos \
  -H "Authorization: Bearer sk-beans-..." \
  -H "Content-Type: application/json" \
  -d '{
    "model": "skyreels-v4-omni-video-std",
    "content": [
      { "type": "text", "text": "Use the reference motion, replace the subject with a green coffee bean mascot, keep the camera movement smooth" },
      { "type": "video_url", "video_url": { "url": "https://example.com/motion-reference.mp4" } }
    ],
    "ratio": "16:9",
    "duration": "5",
    "resolution": "720p",
    "mode": "std"
  }'

Poll task status

Save the returned id or task_id. SkyReels task ids returned by BeansAI start with beansvids_.

poll-task.sh
curl https://api.beansai.dev/v1/videos/beansvids_... \
  -H "Authorization: Bearer sk-beans-..."

Native mapping

SkyReels places the API key inside the JSON request body. In BeansAI, operators store that key on the provider node; client requests continue to use the normal BeansAI Bearer key.

skyreels-native-example.sh
curl https://api-gateway.skyreels.ai/api/v1/video/text2video/submit \
  -H "Content-Type: application/json" \
  -d '{
    "api_key": "sk-skyreels-...",
    "prompt": "A cinematic product reveal",
    "aspect_ratio": "16:9",
    "duration": 5,
    "resolution": "1080p",
    "mode": "std",
    "sound": false
  }'

Tips

  • ratio maps to SkyReels aspect_ratio; generate_audio maps to sound.
  • resolution can be 480p, 720p, or 1080p. mode can be fast or std.
  • Advanced native operations can be selected with skyreels_operation when you need a specific SkyReels endpoint.