Meta Marketing API上传视频持续触发创意错误,求解决方案
Meta Marketing API 视频创意格式报错(重选视频可修复)的解决方案
问题概述
通过Meta Marketing API创建广告创意后,持续收到「格式不符合要求,无法用于Facebook Feed、Reels等核心广告位」的错误提示;但在Ads Manager中点击编辑按钮重新选择同一视频后,错误立即消失。该问题自2024年7月起稳定存在,已测试符合Meta规范的1:1(Feed)、9:16(Story)等宽高比视频,问题仍未解决。
用户提供的AdCreative配置如下:
{ "name": "Default Creative Name", "image_hash": "", "title": "Kaffeeshop erkunden", "body": "video kampagne", "object_story_spec": { "page_id": "xxxxxx", "instagram_user_id": "xxxxxx" }, "asset_feed_spec": { "titles": [ { "text": "Kaffeeshop erkunden" } ], "bodies": [ { "text": "video kampagne" } ], "link_urls": [ { "website_url": "https://mardorf-erleben.de/", "display_url": "https://mardorf-erleben.de/" } ], "call_to_action_types": [ "LEARN_MORE" ], "call_to_actions": [ { "type": "LEARN_MORE", "value": { "lead_gen_form_id": "xxxxxx" } } ], "descriptions": [ { "text": "" } ], "images": [], "videos": [ { "thumbnail_hash": "f0549e86e6b84cfd90e8505026f1cc94", "video_id": "1081205680488869", "adlabels": [ { "name": "feedvideo1" } ] }, { "thumbnail_hash": "b8699f91698cc4f522a4d39a7bd644fe", "video_id": "700590249231135", "adlabels": [ { "name": "storyvideo1" } ] } ], "ad_formats": [ "SINGLE_VIDEO" ], "optimization_type": "REGULAR" }, "degrees_of_freedom_spec": { "creative_features_spec": { "image_touchups": { "enroll_status": "OPT_OUT" }, "text_optimizations": { "enroll_status": "OPT_IN" }, "inline_comment": { "enroll_status": "OPT_OUT" }, "video_auto_crop": { "enroll_status": "OPT_IN" }, "enhance_cta": { "enroll_status": "OPT_IN" } } }, "contextual_multi_ads": { "enroll_status": "OPT_OUT" }, "video_id": "1081205680488869" }
配置问题分析
- 冗余字段冲突:顶层
video_id与asset_feed_spec.videos中的视频资源重复,API校验时可能因双重定义触发格式错误判断。 - 混合广告位资源:
asset_feed_spec中同时传入Feed和Story两种不同宽高比的视频,且ad_formats仅设为SINGLE_VIDEO,系统无法自动适配不同广告位的格式要求。 - 内容规范缺失:
object_story_spec仅包含账号ID,未明确视频对应的广告位内容结构(如video_data),导致API无法识别视频的使用场景。
修复方案
1. 移除顶层冗余video_id字段
删除配置中顶层的"video_id": "1081205680488869",仅保留asset_feed_spec.videos中的视频定义,避免资源冲突。
2. 拆分创意适配不同广告位
不要在同一个创意中混合Feed和Story视频,分别创建独立创意:
- Feed/Reels创意:仅传入1:1或16:9视频,
ad_formats设为SINGLE_VIDEO,并在object_story_spec中添加video_data明确视频信息:"object_story_spec": { "page_id": "xxxxxx", "instagram_user_id": "xxxxxx", "video_data": { "video_id": "1081205680488869", "thumbnail_hash": "f0549e86e6b84cfd90e8505026f1cc94" } } - Story创意:仅传入9:16视频,
ad_formats设为STORIES,确保object_story_spec适配Story的内容结构。
3. 等待视频元数据同步
上传视频后,调用GET /{video_id}接口获取视频状态,确认状态为READY后再创建AdCreative。可添加轮询逻辑(间隔3-5秒),避免API在视频元数据未完全同步时进行校验。
4. 检查视频底层编码
确保视频符合Meta的技术规范:
- 编码格式:H.264或H.265
- 帧率:25-30fps
- 比特率:1080p视频建议5-10Mbps
- 无损坏的元数据标签
内容的提问来源于stack exchange,提问作者M. Homeister
相关产品推荐
相关产品推荐

