You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过单请求HTTP+JSON调用YouTube API上传视频?

直接上传YouTube视频的multipart/form-data请求配置(非可续传)

核心请求头配置

  • Authorization:必填,格式为 Bearer {你的OAuth2授权令牌},令牌必须包含https://www.googleapis.com/auth/youtube.upload权限,需提前在Google Cloud Console完成OAuth2授权流程获取。
  • Content-Type:格式为 multipart/form-data; boundary={自定义边界字符串},用Postman的话无需手动编写,工具会自动生成并匹配请求体。
  • X-Upload-Content-Length:可选,填写视频文件的字节大小,帮助服务端提前处理文件。

Boundary的本质用法(Postman自动处理,无需手动编写)

multipart请求的boundary是分隔请求体不同部分(如元数据JSON和视频文件)的标识:

  1. 每个部分开头用 --{边界字符串} 标记
  2. 每个部分需声明Content-Disposition和对应类型的Content-Type
  3. 整个请求体结尾用 --{边界字符串}-- 收尾

Postman实操步骤

  1. 新建POST请求,URL填写 https://www.googleapis.com/upload/youtube/v3/videos?part=snippet,status,part参数要和你设置的视频属性对应(比如snippet管理标题描述,status管理隐私权限)。
  2. 切换到「Body」标签,选择「form-data」类型。
  3. 添加第一个字段:
    • Key设为metadata,类型选「Text」
    • 点击该字段的「Headers」按钮,添加Content-Type: application/json
    • Value里填写视频属性JSON,示例:
      {
        "snippet": {
          "title": "你的视频标题",
          "description": "你的视频描述",
          "tags": ["标签1", "标签2"],
          "categoryId": "22" // 对应娱乐分类,可查询YouTube官方分类ID表
        },
        "status": {
          "privacyStatus": "private" // 可选public/unlisted/private
        }
      }
      
  4. 添加第二个字段:
    • Key设为file,类型选「File」
    • 点击「Select Files」选择本地要上传的视频文件
  5. 配置授权头:
    • 切换到「Headers」标签,添加Authorization,值填Bearer {你的OAuth2令牌},也可直接用Postman的「Bearer Token」认证方式更便捷。
  6. 直接发送请求即可,Postman会自动生成boundary并同步到Content-Type头,无需手动干预。

关键注意事项

  • 非可续传请求的视频大小上限为512MB,超过此限制必须使用可续传模式,这是YouTube API的硬限制。
  • 确保OAuth2令牌权限正确,无权限会返回403错误。
  • part参数必须覆盖你在metadata里设置的所有模块,比如填了snippet和status,part就必须包含这两个,否则会报错。
  • 若手动修改Content-Type里的boundary,务必保证和请求体里的分隔符完全一致,否则服务端会解析失败。

内容的提问来源于stack exchange,提问作者RealGigex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 13:35:15