使用YouTube Data API通过Postman上传视频报400错误如何解决?
错误原因
这个400 INVALID_ARGUMENT错误是请求参数不符合YouTube Data API的要求导致的,常见诱因如下:
- 使用了普通API域名而非上传专用域名发起文件上传请求
- Postman中form-data里的
request字段未正确设置Content-Type为application/json,默认的text/plain格式无法被API识别 - OAuth2授权的Access Token未包含
youtube.upload权限范围 - 请求的JSON元数据存在语法错误,或字段值不符合规则
- 上传的视频文件格式、大小、时长超出YouTube支持范围
解决步骤
- 替换请求端点
将原请求URL修改为上传专用地址:
POST https://upload.youtube.com/youtube/v3/videos?part=snippet,status
- 调整form-data字段配置
在Postman的form-data编辑区域,勾选右上角的「Content-Type」显示选项,给request字段的Content-Type列填写application/json,file字段保持默认即可。 - 验证授权权限
重新走OAuth2授权流程,申请https://www.googleapis.com/auth/youtube.upload权限范围,生成新的Access Token替换原有值。 - 校验JSON格式
将你填写的request字段的JSON内容复制到JSON校验工具中,确认没有语法错误,字段值符合要求:categoryId必须是YouTube支持的分类ID,你填写的22(人物/博客)为合法值title、description没有超出长度限制(标题最多100字符,描述最多5000字符)
- 检查视频文件
确认视频为YouTube支持的格式(推荐MP4/H.264编码),大小不超过128GB,时长不超过12小时,文件无损坏。
内容的提问来源于stack exchange,提问作者iamdlm
相关产品推荐
相关产品推荐

