Google Ads API 支持将 YouTube 视频与您的 Google Ads 账号相关联。本指南介绍了如何使用该 API 向您的账号添加和移除关联。
关联视频
视频可以通过以下两种方式之一与您的账号相关联,具体取决于谁启动该流程:
- 您请求将视频与您的账号相关联。在这种情况下,您会向创作者发送请求,创作者必须接受该请求,才能建立与其视频的关联。您可以在请求被接受之前撤销已发送的请求,也可以在请求被接受后移除关联的视频。
- 视频的创作者请求将其视频与您的 Google Ads 账号相关联。然后,您可以选择接受或拒绝他们的请求。
在每种情况下,都会使用以下方法:
| 情况 | 操作 | 备注 |
|---|---|---|
| 情况 1 | 从 YouTube API 获取视频信息 | 使用 YouTube API
获取 channel_id 以发送视频关联请求,以及您要关联的视频的 video_id
。video_id 是 YouTube 视频网址中找到的 11 个字符的字符串(例如,v 参数在 www.youtube.com/watch?v=VIDEO_ID 或路径在 youtu.be/VIDEO_ID)。 |
| 创建关联请求 | 使用
DataLinkService.CreateDataLink 方法
创建关联请求,同时指定
youtube_video.channel_id 和 youtube_video.video_id
,以标识视频及其关联的频道。从 v24 开始,您还可以指定
youtube_link_metadata.brand_channel_id
,以提供关联的 YouTube 品牌频道的 ID,帮助创作者
了解您的品牌。
不应设置 status
的 DataLink;Google Ads API 服务器会在成功完成 API 调用后将其设置为 REQUESTED。 |
|
| 检查请求的状态 | 使用 GoogleAdsService.SearchStream 或 GoogleAdsService.Search 查询 data_link
资源并检查其
status。 |
|
| 撤销请求 | 使用
DataLinkService.UpdateDataLink 方法
撤销关联请求,方法是将 status 的
DataLink 从 REQUESTED 更改为 REVOKED。 |
|
| 移除关联 | 使用
DataLinkService.RemoveDataLink 移除关联的视频。 |
|
| 情况 2 | 检索邀请 | 使用 GoogleAdsService.Search
或 GoogleAdsService.SearchStream
查询 data_link
资源。按
status = PENDING_APPROVAL 进行过滤,以查找要接受或拒绝的关联请求。 |
| 接受或拒绝关联请求 | 使用
DataLinkService.UpdateDataLink 方法将状态
DataLink
更新为 ENABLED 以接受请求,或更新为 REJECTED 以拒绝
请求。 |
检索关联详细信息
您可以使用 GoogleAdsService.Search
或
GoogleAdsService.SearchStream
查询 data_link 资源。以下查询会检索 YouTube 视频关联的详细信息,包括 YouTube 视频 ID 和频道 ID:
SELECT
data_link.resource_name,
data_link.status,
data_link.youtube_video.video_id,
data_link.youtube_video.channel_id
FROM data_link
WHERE data_link.type = 'VIDEO'
在此工作流中,可能会抛出以下常见错误:
| 错误代码 | 说明 |
|---|---|
DataLinkError.PERMISSION_DENIED |
客户无权执行此操作。 |
DataLinkError.YOUTUBE_VIDEO_ID_INVALID |
由于视频 ID 无效,因此无法创建视频关联。 |
DataLinkError.INVALID_STATUS |
当数据关联的当前状态对于所请求的操作无效时抛出。 |
DataLinkError.INVALID_UPDATE_STATUS |
尝试在更新期间进行不受支持的状态转换(例如,直接从 REVOKED 转换为 ENABLED)时抛出。 |
MutateError.RESOURCE_ALREADY_EXISTS |
当视频的数据关联已存在时抛出。 |