搜索和 SearchStream

Search Ads 360 Reporting API 具有统一的属性检索和指标报告 机制 可让您使用 Search Ads 360 查询 语言。 这支持复杂的查询,这些查询可返回大量关于 Search Ads 360 普通账号。

您可以使用 SearchSearchStream 方法创建查询。 这两种方法支持相同的查询并返回等效的结果。通过 Search 方法以可自定义的页面大小返回数据,使您能够迭代 使用分页功能对结果集进行分析。在低带宽环境中 或不可靠的网络条件,例如,为了细分大型结果集, 转换为较小的响应,以便在连接丢失时重新获取。通过 另一方面,SearchStream 方法会将整个结果集传回 单个响应,这对于批量数据检索更为高效。

SearchSearchStream 使用相同的基础网址:

    https://searchAds360.googleapis.com/v0/customers/CUSTOMER_ID/searchAds360

基于网页的搜索方法采用可选的 pageSize 参数,该参数限制 单个 API 响应中返回的结果数。

POST /v0/customers/CUSTOMER_ID/searchAds360:search HTTP/1.1
Host: searchAds360.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN

{
"pageSize": 10000,
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}

如果结果中的行数超过 pageSize,则 nextPageToken 返回的值:

{
  "results": [
    // ...
    // ...
    // ...
  ],
  "nextPageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B",
  "fieldMask": "adGroupCriterion.keyword.text,adGroupCriterion.status"
}

使用添加上述值的 pageToken 重复同一查询提取 结果:

POST /v0/customers/CUSTOMER_ID/searchAds360:search HTTP/1.1
Host: searchads360.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN


{
"pageSize": 10000,
"query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'",
"pageToken": "CPii5aS87vfFTBAKGJvk36qpLiIWUW5SZk8xa1JPaXJVdXdIR05JUUpxZyoCVjMwADjUBkD___________8B"
}

使用 SearchStream 方法,该方法会在单个流式传输中返回所有结果 则只需将网址中的服务方法更改为 searchStreamSearchStream 不需要 pageSizepageToken):

POST /v0/customers/CUSTOMER_ID/searchAds360:searchStream HTTP/1.1
Host: searchads360.googleapis.com
Content-Type: application/json
Authorization: Bearer ACCESS_TOKEN

{
    "query": "SELECT ad_group_criterion.keyword.text, ad_group_criterion.status FROM ad_group_criterion WHERE ad_group_criterion.type = 'KEYWORD' AND ad_group_criterion.status = 'ENABLED'"
}