Google Ads API 支持将 YouTube 视频关联到您的 Google Ads 账号。本指南介绍了如何使用该 API 为您的账号添加和移除关联。
关联视频
视频可以通过以下两种方式之一与您的账号关联,具体取决于由谁发起关联流程:
- 您请求将视频与您的账号相关联。在这种情况下,您需要向创作者发送请求,对方必须接受该请求,才能建立与其视频的关联。您可以在请求被接受之前撤销已延期的请求,也可以在请求被接受后移除关联的视频。
- 视频创作者请求将其视频与您的 Google Ads 账号相关联。然后,您可以选择接受或拒绝其请求。
每种场景中都会使用以下方法:
| 场景 | 操作 | 备注 |
|---|---|---|
| 场景 1 | 从 YouTube API 获取视频信息 | 使用 YouTube API 获取要向其发送视频关联请求的 channel_id,以及要关联的视频的 video_id。video_id 是 YouTube 视频网址中的 11 个字符组成的字符串(例如,www.youtube.com/watch?v=VIDEO_ID 中的 v 参数或 youtu.be/VIDEO_ID 中的路径)。 |
| 创建关联请求 | 使用
DataLinkService.CreateDataLink 方法创建关联请求,同时指定 youtube_video.channel_id 和 youtube_video.video_id 以标识视频及其关联的频道。从 v24 开始,您还可以指定 youtube_link_metadata.brand_channel_id,以提供关联的 YouTube 品牌频道的 ID,帮助创作者了解您的品牌。
不应设置 DataLink 的 status;在 API 调用成功完成后,Google Ads API 服务器会将其设置为 REQUESTED。 |
|
| 检查请求的状态 | 使用 GoogleAdsService.SearchStream 或 GoogleAdsService.Search 查询 data_link 资源并检查其
status。 |
|
| 撤销请求 | 使用
DataLinkService.UpdateDataLink 方法,通过将
DataLink 的 status 从 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 |
当视频的数据链接已存在时抛出。 |