API ReferenceVideo APIsSeedance

Seedance 1 API

ReachAPI は公開モデル ID seedance-1-0-pro と seedance-1-0-pro-fast を通じて Seedance 1 系列を提供します。

このページでは、ReachAPI で Seedance 1 モデルを呼び出すためのリクエスト項目、制約、サンプルを説明します。

重要事項:

  • 作成: POST /v1/vids/create
  • 照会: GET /v1/tasks/{task_id}
  • モデル ID: seedance-1-0-pro, seedance-1-0-pro-fast
  • 実行方式: 非同期タスク
  • すべてのリクエストで明示的な input.content が必要です
  • ReachAPI は prompt や image_url などの旧来の簡易フィールドから input.content を自動生成しません

1. API Overview

  • HTTP method: POST
  • Request path: /v1/vids/create
  • Content-Type: application/json
  • Result delivery:
    • 送信時はタスク受付情報を返します
    • 最終結果は /v1/tasks/{task_id} のポーリングまたは callback_url で取得します

2. Authentication and Headers

Authorization: Bearer YOUR_REACH_API_KEY
Content-Type: application/json

3. Model Capability Summary

ModelDurationResolutionAspect ratioinput.contentNotes
seedance-1-0-pro2-12s480p, 720p, 1080p21:9, 16:9, 4:3, 1:1, 3:4, 9:16Requiredテキスト、先頭フレーム画像、末尾フレーム画像をサポート
seedance-1-0-pro-fast2-12s480p, 720p, 1080p21:9, 16:9, 4:3, 1:1, 3:4, 9:16Requiredテキストと先頭フレーム画像のみサポート

課金と使用量

Seedance の動画タスクは、再生時間ではなく返却されたトークン使用量を基準に課金されます。推定価格 = トークン単価 × トークン消費量。最終課金は ReachAPI のタスクレスポンスに含まれる usage.output_tokens を使用します。この値は BytePlus の usage.completion_tokens からマッピングされます。

モデルトークン単価注記
seedance-1-0-pro$2.50 / 100万トークン動画生成に成功した場合のみ課金
seedance-1-0-pro-fast$1.00 / 100万トークン動画生成に成功した場合のみ課金

4. Create Task

{
  "model": "seedance-1-0-pro",
  "callback_url": "https://your-domain.com/callback",
  "input": {
    "content": [
      {
        "type": "text",
        "text": "A cinematic drone shot passing over a coastline at sunrise"
      }
    ],
    "duration_seconds": 5,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }
}

4.1 Top-Level Parameters

FieldTypeRequiredDescription
modelstringYesseedance-1-0-pro または seedance-1-0-pro-fast
callback_urlstringNoタスク終端状態の HTTPS コールバック URL。最大長 2048
inputobjectYes動画生成パラメータ

4.2 input Parameters

FieldTypeRequiredDescription
contentarray<object>Yes明示的な入力内容。空配列は不可
duration_secondsintegerNo出力時間。2-12
resolutionstringYes480p, 720p, 1080p
aspect_ratiostringNo21:9, 16:9, 4:3, 1:1, 3:4, 9:16

5. input.content Structure

Supported type:

  • text
  • image_url

Supported role:

  • first_frame
  • last_frame
FieldTypeRequiredDescription
content[].typestringYestext または image_url
content[].textstringRequired for type = textテキスト内容
content[].rolestringConditionally requiredfirst_frame または last_frame
content[].image_url.urlstringRequired for type = image_url画像 URL、Base64 画像、またはアップロード済み素材 ID

制約:

  • content は 1 要素以上必要
  • text は最大 1 件
  • image_url は最大 2 件
  • first_frame は最大 1 件
  • last_frame は最大 1 件
  • last_frame を使う場合は first_frame が必要
  • seedance-1-0-pro-fast は last_frame 非対応

6. Legacy Fields No Longer Supported

以下の旧フィールドは 400 を返します:

  • input.prompt
  • input.image_url
  • input.image_urls
  • input.last_image_url
  • input.video_urls
  • input.audio_urls
  • input.negative_prompt
  • input.parameters
  • input.instances
  • input.service_tier
  • input.execution_expires_after
  • input.safety_identifier
  • input.seed
  • input.frames
  • input.camera_fixed
  • input.draft
  • input.content[].draft_task

7. Request Examples

7.1 Text-to-Video

{
  "model": "seedance-1-0-pro",
  "input": {
    "content": [
      {
        "type": "text",
        "text": "A paper boat floating through a neon-lit rainy street at night"
      }
    ],
    "duration_seconds": 4,
    "resolution": "720p",
    "aspect_ratio": "16:9"
  }
}

7.2 First-Frame Image-to-Video

{
  "model": "seedance-1-0-pro-fast",
  "input": {
    "content": [
      {
        "type": "text",
        "text": "A product shot transitions into a dramatic rotating hero reveal"
      },
      {
        "type": "image_url",
        "role": "first_frame",
        "image_url": {
          "url": "https://cdn.example.com/product.png"
        }
      }
    ],
    "duration_seconds": 3,
    "resolution": "720p",
    "aspect_ratio": "1:1"
  }
}

7.3 First-Frame and Last-Frame Guided Video

{
  "model": "seedance-1-0-pro",
  "input": {
    "content": [
      {
        "type": "text",
        "text": "The character slowly turns toward the camera and smiles"
      },
      {
        "type": "image_url",
        "role": "first_frame",
        "image_url": {
          "url": "https://cdn.example.com/first-frame.png"
        }
      },
      {
        "type": "image_url",
        "role": "last_frame",
        "image_url": {
          "url": "https://cdn.example.com/last-frame.png"
        }
      }
    ],
    "duration_seconds": 5,
    "resolution": "1080p",
    "aspect_ratio": "9:16"
  }
}

8. Create Task Response

{
  "code": 200,
  "msg": "",
  "status": "queued",
  "task_id": "task_xxx",
  "data": []
}

9. Query Task Status

{
  "code": 200,
  "msg": "",
  "status": "success",
  "task_id": "task_xxx",
  "data": [
    {
      "url": "https://cdn.example.com/generated/video-1.mp4"
    }
  ],
  "usage": {
    "input_tokens": 0,
    "output_tokens": 102960,
    "total_tokens": 102960
  }
}

Notes:

  • data には動画結果の配列が入ります
  • ReachAPI は成功した動画出力に対して少なくとも data[].url を返します

10. Callback Delivery

callback_url を指定した場合、タスクが終端状態になると同じ JSON 構造で POST 配信されます。

11. Constraints and Notes

  • input.content は必須
  • resolution は必須
  • duration_seconds は 2-12
  • seedance-1-0-pro-fast は last_frame 非対応

On this page