TikTok非中国区OpenAPI常见问题
公共问题
请求接口时报错:XXXX:Missing data for required field这表示必填字段“XXXX”未被传入请求参数,需要检查代码并调整,然后重新调用接口。
请求接口时报错:Access token is invalid, when you call access_token or refresh_token api, old token will become invalid.这意味着 access token 过期或不存在,需要使用最新正确的 access token 调用接口。
请求接口时报错:Advertiser XXXXX doesn\'t exist or has been deleted需要用户检查填写的 advertiser_id 是否正确。
请求接口时报错:No permission to operate advertiser XXXXXXXXX表示无权限操作对应的 advertiser_id,即使用了错误的 access token。需要填写与广告主对应的 access token。
请求接口时报错:advertiser does no grant you XXXX permissionXXXX 表示权限点,即接口权限。遇到此问题,需要先确认开发者的应用 APPID 是否包括此接口权限。如果没有,需要在雅典娜上提交应用申请权限的工单(https://ads.tiktok.com/athena/index.html?key=b25033ef7782d41050cbac74f751d547e9d8ad35a39a541a0f0efbbd51fe722f#/),申请通过后,让广告主重新授权,且授权链接的 scope 中包括 XXXX 权限。如果开发者应用有此接口权限,可以直接让广告主重新授权,且授权链接的 scope 中包括 XXXX 权限。
请求接口时报错:App has been blocked or app is not exist这表示填写的 app id 有误,需要重新检查并填写正确的 app id。
oauth 授权
访问授权链接 URL 时,页面报:RedirectUrlNotMatch这表示授权链接中的 redirect_uri 与对应的 APP 回调地址不一致,需要将前者重置为后者相同。
同意授权后,跳转到回调地址页面,页面显示报错回调地址页面的报错属于回调地址代码的问题,需要用户确认自身代码问题。
调用获取 access token 接口时报错:Invalid auth code这表示 auth code 过期了,需要重新授权获取新的 auth code。
调用接口时报错:Illegal access partner这表示 app_id 与 secret 两者对应关系不一致,比如填写的 secret 错误。
调用刷新 access token 接口时报错:The refresh token has expired.这表示 refresh token 过期,需要使用最新的 refresh token,或者重新授权。
调用刷新 access token 接口时报错:Invalid refresh_token:XXXXXXXXX这表示填写的 refresh token 无效。
广告管理
推广系列获取 campaign 列表时,返回的数据不全campaign/get 接口默认不查询删除的数据,如果想要获取删除的数据,可以在 filtering 中传 primary_status 为 STATUS_DELETE。
广告组获取 adgroup 列表时,返回的数据不全adgroup/get 接口默认不查询删除的数据,如果想要获取删除的数据,可以在 filtering 中传 primary_status 为 STATUS_DELETE。
创建 adgroup 时,报错:The selected placement does not support the current region targeting.这表示所选的广告位不支持当前选择的 location 定向,需要重新调整。
创建 adgroup 时,报错:Please select a Pixel.对于推广目的选择 CONVERSIONS 或者 TRAFFIC,且推广目的为落地页时,需要传 Pixel id,具体可以查看 Pixel 管理模块的文档。
创建 adgroup 时,报错:The selected App does not have a tracking link to track events当优化目标 optimize_goal 为非 click 时,需要设置 app 需要设置检测链接以及相关事件。
创建 adgroup 时,报错:The optimization goal cannot be emptyoptimize_goal 优化目标要求必传。
创建 adgroup 时,报错:Secondary goal only supports the standard bid.深度优化只支持标准出价。
修改 adgroup 预算时,单次修改的金额幅度不能少于 10。广告获取 ad 列表时,返回的数据不全ad/get 接口默认不查询删除的数据,如果想要获取删除的数据,可以在 filtering 中传 primary_status 为 STATUS_DELETE。
创建 ad 时,报错:The creative type is not consistent with the Ad Group type.当 adgroup 的 creative_material_mode 为 custom 时,只能创建自定义 ad,反则创建程序化 ad。
修改 ad 时,报错:These Ads do not support to pause because the status is In Review新建审核中的 ad,不能进行 disable 操作。
DMP 人群管理
上传数据源文件时,报错:file_signature error or file size exceeds limit这表示文件的实际 md5 与传入的 file_signature 不相同,需要重新传入正确的文件的 file_signature。注:每个开发语言都有自己的 MD5 库,可以直接用于获取文件的 md5。
广告报表管理
报表公共问题拉取报表数据时,能否获得当天的消耗数据数据 20 分钟更新一次,查看数据的时间不同,可能刚好跨 10 分钟更新的切片也不同。正常情况下,8 点至 9 点的数据,10 点可以稳定。在晚高峰时,可能需要 3 个小时才能稳定,即正常情况 2 小时,晚高峰 3 小时。一般历史数据查询都不会变,除了数据有问题需要校对的情况会更新历史数据,能保证 7 天数据不再变化。
campaign data获取的 campaign 报表数据,返回字段中 campaign_id 以及 campaign_name 为 null需要在 group_by 中传 STAT_GROUP_BY_FIELD_ID,即"group_by":["STAT_GROUP_BY_FIELD_ID"]。
获取的消耗数据不全/不对report/campaign/get 接口默认不查删除的数据,如果想要查询删除的数据,可以在 filtering 中相应的 primary_status 中的值,即"filtering":{"primary_status":"STATUS_DELETE"}。
ad group data获取的 adgroup 报表数据,返回字段中 adgroup_id 以及 adgroup_name 为 null需要在 group_by 中传 STAT_GROUP_BY_FIELD_ID,即"group_by":["STAT_GROUP_BY_FIELD_ID"]。
获取的消耗数据不全/不对report/adgroup/get 接口默认不查删除的数据,如果想要查询删除的数据,可以在 filtering 中相应的 primary_status 中的值,即"filtering":{"primary_status":"STATUS_DELETE"}。
ad data获取的 ad 报表数据,返回字段中 ad_id 以及 ad_name 为 null需要在 group_by 中传 STAT_GROUP_BY_FIELD_ID,即"group_by":["STAT_GROUP_BY_FIELD_ID"]。
获取的消耗数据不全/不对report/ad/get 接口存在一个 5000 个 ad id 截断问题











