使用Instagram Graph API可恢复上传Reel时遭遇500 ProcessingFailedError
Instagram Reels 可恢复上传(rupload)持续返回500错误排查
操作步骤
- 创建容器:向
https://graph.facebook.com/v24.0/{ig_user_id}/media发起POST请求,参数包含upload_type=resumable、media_type=REELS,以及标题、缩略图偏移量等。此步骤成功,返回id和uri(例如https://rupload.facebook.com/ig-api-upload/v24.0/{container_id})。 - 上传视频:向上述uri发起POST请求,请求头包含
Authorization: OAuth {access_token}、file_size、offset,请求体为视频字节(约260KB文件采用单块上传)。 - 发布:向
.../media_publish发起POST请求并携带creation_id。因步骤2失败,从未执行到此步骤。
错误详情
步骤2(上传至rupload.facebook.com)始终返回:
- HTTP 500
- 响应体:
{"debug_info":{"retriable":false,"type":"ProcessingFailedError","message":"{\"success\":false,\"error\":{\"message\":\"unknown error\"}}"}} - 响应头包含
Proxy-Status: http_request_error(重复出现),表明故障源于Meta内部基础设施。
已验证项
- 令牌:有效且未过期(例如2026年3月到期),拥有
instagram_content_publish、publish_video等权限。账号验证和容器创建均使用该令牌成功执行。 - 视频文件:约263KB的MP4文件,编码为H.264 + AAC,分辨率1080×1920,时长4.25秒,添加
-movflags +faststart参数,格式为yuv420p,本地播放正常。 - API版本:Graph API和容器返回的rupload URI均使用v24.0版本。
- 请求:单块POST请求,
file_size正确、offset=0,请求体为原始视频字节。已尝试添加和移除Content-Type: video/mp4请求头。
故障仅发生在向rupload.facebook.com发送二进制文件时;容器创建和令牌均无问题。
最小化上传代码(Python)
# Container already created; cont['uri'] = 'https://rupload.facebook.com/ig-api-upload/v24.0/{id}' url = cont['uri'] file_size = os.path.getsize(video_path) headers = { 'Authorization': f'OAuth {access_token}', 'Content-Type': 'video/mp4', 'file_size': str(file_size), 'offset': '0', } with open(video_path, 'rb') as f: body = f.read() resp = requests.post(url, headers=headers, data=body, timeout=300) # resp.status_code == 500, body as above
问题
- 这是否是Instagram/Meta可恢复上传(rupload)端点的已知故障或漏洞?是否有官方状态说明或解决方法?
- 是否存在新增要求(请求头、编码、Facebook Login for Business、应用模式等),导致即使容器创建成功,rupload仍返回500"unknown error"?
未修改应用代码或令牌,该流程近期突然失效。想了解这是否为平台端问题,以及推荐的解决方法(例如使用video_url或等待修复)。
内容的提问来源于stack exchange,提问作者Sebastian Munaretto
相关产品推荐
相关产品推荐

