YouTube Data API v3 を用いて動画をアップロードする際に、非公開あるいは限定公開にする方法

結論

privacyStatusprivate または unlisted を指定します。

  • private は「非公開」です
  • unlisted は「限定公開」です。

公式ドキュメント

注意

Ruby での実装では privacyStatus の指定の際のキーが privacy_status とスネークケースになるので注意が必要です*1。端折ったコードになりますが、以下のように指定することになります。

def upload_video
  snippet = {
    snippet: {
      title: '動画のタイトル',
      description: '動画の説明文',
      privacy_status: 'private'
    }
  }

  # @youtube は、認証を済ませたクライアントのオブジェクト(詳細は略)
  @youtube.insert_video(
    'snippet',
    snippet,
    upload_source: '/path/to/file',
    content_type: 'video/*'
  )
end

*1:おそらく他言語でもそれぞれの言語の規約に則った形式になると思われます

Powered by はてなブログ