Featured image of post How to Enable Google Search Console API

How to Enable Google Search Console API

本文详细介绍了如何在 Google Cloud Platform 上启用 Google Search API,包括创建项目、验证域名所有权、配置服务号等步骤。

Tip

通过本文,你将了解:

  • 如何在Google Cloud Platform创建项目
  • 如何验证域名所有权
  • 如何启用Google Search API

1 前言

网络上很多有关教程都是转载来转载去,质量很差,我不想看。
于是我便跟着Google提供的文档一步步操作,最终成功了。
现在我将经验总结如下,希望能帮助到你。

2 Google Search API 介绍

Info

我该使用`Google Search Console API`还是`Google Indexing API`?

Google Search Console API 和 Google Indexing API 都是关于Google Search Console的API,但是它们的功能不同。


如果你是想通过API获取网站访问信息等,那么你应该使用Google Search Console API
如果你是想通过API提交网站给Google Search Console,那么你应该使用Google Indexing API

但是本文讲解的:

  • 如何在Google Cloud Platform创建项目
  • 如何验证域名所有权

这两部分,对于Google Search Console APIGoogle Indexing API都是通用的。因为这些API都需要在Google Cloud Platform中创建项目,并且验证域名所有权。
并且在文末我也会附上激活Google Indexing API的方法。
请放心阅读。

Tip

Google Search API 全称为 Google Search Console API ,是Google提供的一套API,可以通过API的方式获取Google Search Console的数据并进行部分操作。

以下为Google Search API全部功能,整理自官方文档

2.1 Search Analytics

查询网站的流量数据。

方法HTTP 请求说明
查询POST /sites/siteUrl/searchAnalytics/query使用您定义的过滤条件和参数查询搜索流量数据。该方法会返回您定义的行键(维度)分组的零行或多行。您必须定义一个或多个日期的日期范围。

JSON POST 示例:

1
2
3
4
5
6
POST https://www.googleapis.com/webmasters/v3/sites/https%3A%2F%2Fwww.example.com%2F/searchAnalytics/query
{
  "startDate": "2015-04-01",
  "endDate": "2015-05-01",
  "dimensions": ["country","device"]
}

2.2 站点地图

方法HTTP 请求说明
deleteDELETE /sites/siteUrl/sitemaps/feedpath从此网站中删除站点地图。
getGET /sites/siteUrl/sitemaps/feedpath检索关于特定站点地图的信息。
listGET /sites/siteUrl/sitemaps列出为此网站提交的站点地图条目,或包含在站点地图索引文件中(如果请求中指定 sitemapIndex)。
提交PUT /sites/siteUrl/sitemaps/feedpath为网站提交站点地图。

2.3 协作平台

方法HTTP 请求说明
添加PUT /sites/siteUrl将网站添加到 Search Console 中的用户网站集。
deleteDELETE /sites/siteUrl从用户的 Search Console 网站集中移除某个网站。
getGET /sites/siteUrl检索关于特定网站的信息。
listGET /sites列出用户的 Search Console 网站。

2.4 网址检查

方法HTTP 请求说明
index.inspectPOST /urlInspection/index:inspect与 Google 索引中提供的网址相关的信息。

JSON POST 示例:

1
2
3
4
5
6
POST https://searchconsole.googleapis.com/v1/urlInspection/index:inspect
{
"inspectionUrl": "https://www.example.com/mypage",
"siteUrl": "https://www.example.com/",
"languageCode": "en-US"
}

3 创建项目、配置服务号与验证域名所有权

3.1为什么要创建项目?

Google Cloud Platform的逻辑中,你的一切操作都是在项目下进行的。
你的域名、站点、乃至API等都属于用户的资源,这些资源会在项目中进行管理。

简单来说,项目就是一个容器,Google在你发出请求后看容器里是否有请求的主体、请求方是否可以访问容器、请求方是否有权限对容器中的资源进行操作。满足上述条件后,Google才会对你的请求进行处理。

因此,想要调用Google SearchAPI,你必须创建一个项目,并在验证域名所有权后,才能通过API在项目中对资源进行操作。

3.2 创建项目

  1. 打开Google Cloud Platform,并登录你的Google账号。
  2. 点击右上角Select a project ,然后点击 New Project 。创建一个新的项目。

这样,你就创建了一个新的项目。

3.3 配置服务号

  1. 打开服务账号页面
  2. 点击 add 创建服务帐号,并输入服务帐号的名称和说明。您可以使用默认服务帐号 ID,也可以选择其他唯一的帐号 ID。完成后,点击创建。
  3. 后面的 服务帐号权限(可选) 部分无需设置。点击继续。
  4. 向用户授予访问此服务帐号的权限 屏幕上,向下滚动到创建密钥部分。点击 add 创建密钥。
  5. 在随即显示的侧面板中,选择密钥的格式。建议使用 JSON。
  6. 点击创建。你的新公钥/私钥对随后会生成并下载到您的计算机。

这样,你就创建了一个新的服务号,并下载了私钥。在完成本教程后,你可以用这个私钥访问你需要的API。

Warning

请妥善保管你的私钥,你的私钥只能在创建时下载一次,如果丢失,你将无法再次下载。

3.4 验证域名所有权

你可以在这里验证域名所有权。

3.5 将服务账号添加为网站所有者

这里将服务账号添加为网站所有者。

  1. 选择添加用户。
  2. 在添加新用户对话框中,输入服务帐号的电子邮件地址。(在 3.3 步骤2中创建的服务帐号邮箱,形如my-service-account@project-name.google.com.iam.gserviceaccount.com
  3. 将权限设置为“所有者”。
  4. 点击添加。

这样,你就将服务账号添加为网站所有者了。

4 启用Google Search Console API

点击这里即可启用Google Search Console API.

此外,点击这里即可启用Google Indexing API.

这样,你就可以通过你的私钥调用Google Search Console API了。

5 结语

通过本文,你应该已经了解了如何启用Google Search Console API,以及如何调用Google Search Console API。

在一开始写这篇文章的时候,我混淆了Google Search Console API和Google Indexing API的逻辑,写到一半才意识到网站资源、token、域名所有权验证之间的逻辑关系,于是我把整篇文章重写了一遍。
可谓教学相长了。

comments powered by Disqus