OVERVIEW

Bytedance creative models on RunAPI include Seedance for video generation with native audio-video synthesis, Seedream for text-to-image and image editing, Volcengine Lip Sync for audio-driven video-to-video lip sync, and OmniHuman for audio-driven talking-head video with helper detection endpoints.

  • Single API key shared across all providers
  • No separate Bytedance account required
  • Model skills carry docs, schemas, and setup steps into your workspace
  • Per-call billing in USD, no subscription or minimum spend
  • Failed generations are never charged
  • Switch models by changing one parameter
  • Billing consolidated into one monthly invoice
FEATURES

What stands out

MODELS

All Bytedance models available through RunAPI

QUICKSTART

Install a Bytedance model skill for your app.

Pick a model and add its skill so your coding tool has docs, schemas, pricing notes, and setup steps. Skills work with Claude Code, Codex, Gemini CLI, Cursor, and VS Code. Install once, then switch models by changing one parameter.

runapi.ai
curl -X POST https://runapi.ai/api/v1/omnihuman/audio_to_video \
  -H "Authorization: Bearer $RUNAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "omnihuman-1.5-subject-detection",
  "image_url": "https://cdn.runapi.ai/public/samples/portrait.jpg",
  "audio_url": "https://cdn.runapi.ai/public/samples/voice.mp3"
}'
import { OmnihumanClient } from "@runapi.ai/omnihuman";

const client = new OmnihumanClient();
const result = await client.audioToVideo.run({
    model: "omnihuman-1.5-subject-detection",
    image_url: "https://cdn.runapi.ai/public/samples/portrait.jpg",
    audio_url: "https://cdn.runapi.ai/public/samples/voice.mp3",
});
require "runapi/omnihuman"

client = RunApi::Omnihuman::Client.new
result = client.audio_to_video.run(
    model: "omnihuman-1.5-subject-detection",
    image_url: "https://cdn.runapi.ai/public/samples/portrait.jpg",
    audio_url: "https://cdn.runapi.ai/public/samples/voice.mp3"
)
npx skills add runapi-ai/omnihuman -g
# Claude Code
claude mcp add runapi -s user -- npx -y @runapi.ai/mcp

# Codex
codex plugin install runapi-mcp@agents

# Cursor / Windsurf / VS Code
npx @runapi.ai/mcp init cursor
@runapi.ai/omnihuman v1
REFERENCE

Every Bytedance variant with pricing and model IDs

Full pricing table →
Model Variant Billing Pricing
OmniHuman
omnihuman-1.5 second $0.320 View →
omnihuman-1.5-human-identification call $0.0000 View →
omnihuman-1.5-subject-detection call $0.0000 View →
Seedance
seedance-1.5-pro second $0.290 View →
seedance-2-mini second $0.450 View →
seedance-2.0 second $2.08 View →
seedance-2.0-fast second $0.370 View →
seedance-2.5 second $0.630 View →
seedance-v1-pro second $0.270 View →
seedance-v1-pro-fast second $0.080 View →
Seedream
seedream-4.5-edit call $0.100 View →
seedream-4.5-text-to-image call $0.100 View →
seedream-5-lite-edit call $0.080 View →
seedream-5-lite-text-to-image call $0.080 View →
seedream-5-pro-edit call $0.170 View →
seedream-5-pro-layer-decomposition call $0.140 View →
seedream-5-pro-text-to-image call $0.110 View →
seedream-v4-edit call $0.080 View →
seedream-v4-text-to-image call $0.080 View →
FAQ

Frequently asked questions about Bytedance

Is this an official Bytedance integration?

RunAPI exposes a managed API surface with transparent per-call pricing, fully documented capability and parameters, and clear error behavior. You get the same model output quality without managing a direct provider relationship or provider-side account.

Do I need a Bytedance account?

No. Your RunAPI API key is enough for managed access to all Bytedance models. You do not need to create a separate account, manage provider-specific credentials, or handle provider-side billing.

What's the latency overhead from proxying through RunAPI?

Typically under 20 ms. RunAPI keeps the proxy layer close to model execution regions to minimize added latency. Media generation time is dominated by the model itself, not the proxy.

Are images / videos cached?

Generated outputs are stored and retrievable by task ID. You can fetch completed results at any time using the task status endpoint or the RunAPI dashboard. Output URLs remain accessible for the retention period shown in the API docs. Inputs are not cached or stored.

Can I bring my own key?

Not currently. Calls use RunAPI-managed access, which simplifies authentication and lets RunAPI handle rate limiting, retries, and billing consolidation on your behalf.

How is billing consolidated?

All API calls across all providers appear on a single monthly USD invoice. There is no per-provider billing, no subscription, and no minimum spend. Failed generations are never charged.

What SDKs can I use with Bytedance models?

Official SDKs are available for Python, Node.js, PHP, Java, Ruby, and Go. Each SDK handles authentication, async task polling, and typed responses. For LLM models, the OpenAI and Anthropic SDKs also work by pointing the base URL to RunAPI.

What are model skills and how do they work?

Model skills are installable packages that load a model's docs, typed schemas, pricing notes, and setup steps directly into your coding workspace. Install a skill with one command and your agent has the right context before you write integration code. Skills work with Claude Code, Codex, Gemini CLI, Cursor, and VS Code.

How do I switch between Bytedance models?

Change the model parameter in your API request. All Bytedance models share the same API key, the same request shape, and the same billing. No code changes, no re-authentication, and no separate billing setup are required when switching between models or between variants of the same model. You can also switch to models from other providers by changing the same parameter — the API surface is unified across the entire catalog.

START NOW

Start building with Bytedance models.