# YouTube・Instagram・Facebook・Threadsへ動画を公開

正規URL： https://sosoapi.ai/ja/docs/video-publishing

動画を一度アップロードし、各投稿先の投稿を準備します。メディア確認、プラットフォーム設定、YouTubeの公開範囲、公開確認を説明します。契約は2026年十月20日確認。

## 一。準備済み動画アセットを1つ用意する

ローカル動画をアップロードするか、公開動画URLをインポートします。準備完了まで確認してから、登録済みasset_idと正規asset_urlを投稿に使ってください。

SosoAPIはプラットフォームの要件に応じて、動画の実際のコンテナ、長さ、サイズ、コーデックを確認します。ファイル名、呼び出し元指定のMIMEタイプ、再生可能なプレビューだけでは適格性を判断できません。予約前に動画・音声の利用権と、必要な開示事項を確認してください。

- 元の動画とカバーのアセットは、同じ認可済みワークスペースに保持してください。

- 正確なアカウントと予定形式で、下書き全体の適格性を確認する。

- 準備に失敗した場合は既存の状況を確認してください。応答が遅いという理由で重複インポートを開始しないでください。

## 2. 投稿先の動画形式を選ぶ

投稿先アカウントが対応する形式とオプションを選びます。準備済みアセットは再利用できますが、provider_payloadは各プラットフォーム用に指定してください。

動画公開の選択肢

| 投稿先 | provider_payloadの選択 | 予約前の確認 |

| --- | --- | --- |

| Instagram | platform: instagram。用途に応じてVIDEO、REELS、STORY_VIDEOを指定します。 | プロアカウントと確認済み機能が必要です。StoriesにはBusinessの適格性が必要です。Reels専用の設定はReelsにのみ指定します。 |

| Facebookページ | platform: facebook。適切なVIDEO、REELS、STORY_VIDEO。 | ページの識別、公開権限、CREATE_CONTENTタスク、対応メディアと形式設定。 |

| Threads | platform: threads。VIDEOを指定します。 | 公開に適格なアカウントと準備済み動画が必要です。VIDEOにテキスト専用の添付は適用されません。 |

| YouTubeチャンネル | platform: youtube。VIDEO。 | タイトル、カテゴリ、公開範囲、キャンセル方式を明示。ネイティブ予約には管理権限が必要です。 |

## 3. 確認済みのYouTube動画を予約する

APIリファレンスのサーバーヘルパーを使います。asset_idを登録済み正整数、asset_urlをその正規URLに置き換えてください。実際のチャンネルアカウントIDと未来の公開日時を選びます。

この例は選択した日時での一般公開を要求します。実行前に、その公開範囲をユーザーに確認してください。contains_synthetic_mediaは動画の実態に合わせます。falseは例にすぎません。UNSCHEDULE_KEEP_PRIVATEは、未公開のYouTubeネイティブ予約をキャンセルした際に非公開を維持する指定です。

```
await sosoPost("/studio-api/scheduled-posts/create", {
  "workspace_id": "<workspace-uuid>",
  "social_account_id": "<youtube-channel-account-uuid>",
  "caption": null,
  "hashtags": [],
  "media": [
    {
      "kind": "video",
      "asset_id": "<ready-video-asset-id>",
      "url": "<canonical-video-asset-url>"
    }
  ],
  "provider_payload": {
    "platform": "youtube",
    "publish_options": {
      "post_type": "VIDEO",
      "title": "A reviewed product walkthrough",
      "description": "Our team introduces the product in one short walkthrough.",
      "category_id": "24",
      "privacy_status": "public",
      "cancellation_mode": "UNSCHEDULE_KEEP_PRIVATE",
      "contains_synthetic_media": false
    }
  },
  "scheduled_at": "<future-ISO-8601-instant-with-offset>",
  "display_timezone": "Asia/Hong_Kong",
  "idempotency_key": "<stable-key-for-this-one-video-intent>"
});
```

- [投稿APIリファレンス](https://sosoapi.ai/ja/docs/publishing-api-reference)

## 4. プライバシー、Shorts、プロバイダー制限を明確にする

YouTubeにはpost_type VIDEOを使用します。surface_expectation: SHORTは指定できますが、Shortに該当するかはYouTubeが判断します。ファイル名や縦向きだけでは判断できません。

アップロード権限とネイティブ予約の管理権限は別です。サムネイルなどの任意機能にチャンネルが対応しているか確認してください。対応可否が不明な場合もあります。Googleのアップロードリファレンスは認可・メタデータ要件を説明しており、SosoAPIも独自の対応フィールドと接続アカウントを確認します。

YouTubeなどでは動画の処理・審査に時間がかかり、利用枠も適用されます。アップロードの受理は一般公開を意味しません。

- [Google：YouTube videos.insertリファレンス](https://developers.google.com/youtube/data/reference/rest/v3/videos/insert)

- [アカウント・形式の機能一覧](https://sosoapi.ai/ja/docs/publishing-capabilities)

## 5. 同じ投稿の最終結果を検証する

投稿IDを保存して配信・最終結果を確認し、リンクがあれば開きます。scheduledやpublishingは最終結果待ちです。

接続が切れても受理済み予約はサーバーで続行します。変更前に同じ投稿を取得します。キャンセルには現在のバージョンと利用可能な操作を使います。公開済み動画の削除は別ルールです。

同じ動画を複数プラットフォームで使う場合は各投稿先の要件を確認します。例はリクエスト形式を示すだけで、このページから実行・公開しません。

- [自分のエージェントで確認する流れ](https://sosoapi.ai/ja/docs/claude-code-codex-social-publishing)

- [投稿APIリファレンス](https://sosoapi.ai/ja/docs/publishing-api-reference)
