Ragic 最近新增支持了 Make(原 Integromat) 的串接,但不知道你在使用 Google 服务(例如 Gmail 或 Google Drive)的时候,会不会退出这样的错误:
看到这个错误千万别慌张,Make 官方其实有为这个情况提供了一份设置文档,而我们也将其翻译成了中文版,只要顺着这篇文章的步骤照着做,就能够让 Make 获取授权,正确连接、访问你 Google 帐号内的数据,而且只要设置一次,未来在 Make 再碰到 Google 帐号也不用担心,不需要每一次都重新设置了!
你可以在信息主页的右上角找到“创建专案”:
接下来,你可以为专案命名,位置则可以直接保留为“无机构”:
专案创建完成之后,你需要从左上角的汉堡菜单找到“API 和服务”,并点选“启用 API 和服务”:
进入 API 程序库后,你可以依照需求搜索自己需要的 API,举例来说,因为我们要在 Make 使用 Gmail 的相关功能,所以我们要搜索 Gmail API 然后将其启用:
如果你预期之后还会使用到其他服务,例如未来也有串接 Google Drive 的打算,也可以趁这时一并将 Google Drive API 一起启用:
确定需要的 API 启用之后,就可以开始创建与设置 OAuth 的同意画面“OAuth 同意画面”就是当你想用 Google 帐号登录第三方站点(例如 Make)时会退出的窗口,这个窗口会告知你应用程序将获取你的哪些权限,你可以在阅览之后决定是否许可第三方站点访问你的帐号数据。。
由于私人的 Google 帐号不隶属于任何机构,而且我们是需要在 Make 使用,因此在 User Type 当中选择“外部”并点击创建:
接下来,你会需要设置 OAuth 同意画面中的信息,因为我们的目的只是让 Make 可以利用 OAuth 获取授权,因此请对照以下的表格,填入必填字段的信息:
应用程序名称 |
Make |
用户支持电邮 |
你的电邮邮箱 |
授权域 |
integromat.com 和 make.com |
开发人员联络信息 |
你的电邮邮箱 |
输入完毕之后,就可以点击“保存并继续”。
接下来,我们要设置应用程序可以访问的数据“范围”,范围指的是应用程序可以访问的权限,举例来说,藉由设置适当的范围,你可以让 Make 只能读邮件,但是不能编写邮件与草稿,又或者是让 Make 最多只能编写草稿,但无法送出邮件。
以下是 Make 提供串接 Gmail 和 Google Drive 时必须勾选的范围,你可以根据需求决定是否勾选更多范围:
.Gmail:
https://mail.google.com
https://www.googleapis.com/auth/gmail.labels
https://www.googleapis.com/auth/gmail.send
https://www.googleapis.com/auth/gmail.readonly
https://www.googleapis.com/auth/gmail.compose
https://www.googleapis.com/auth/gmail.insert
https://www.googleapis.com/auth/gmail.modify
https://www.googleapis.com/auth/gmail.metadata
.Google Drive:
https://www.googleapis.com/auth/drive
https://www.googleapis.com/auth/drive.readonly
你可以点击“新增或移除范围”,再透过筛选器来找到自己需要的 API 并进行勾选:
如果你有串接其他 Google 服务的需要,别忘了在这里也要一并勾选:
勾选并更新范围之后,就可以再点击保存并继续了。
为了测试 API 是否能正常运作,Google 会请你新增测试用户,因为只有我们的帐号会访问这些数据,因此只要填入自己的 Google 帐号即可:
单击下保存并继续后,Google Cloud 就会列出这个 OAuth 同意画面的摘要:
接下来就可以开始创建“证书”,供 Make 使用了。
为了让 Make 可以正确告知用户要访问的权限、并让用户决定是否同意访问数据,我们需要创建“OAuth 订户端 ID”,这样一来,用户再弹出的窗口中单击下许可、继续时,Google 才会提供 Gmail 或 Google Drive 内的数据给 Make 使用:
开始创建 OAuth 订户端 ID 时,你需要先将应用程序类型选择为“网页应用程序”,并在“已授权的重新导向 URI”中,根据你要使用的服务输入 Make 提供的网址:
Gmail 或 Google Drive:https://www.integromat.com/oauth/cb/google-restricted
Google 语音合成服务:https://www.integromat.com/oauth/cb/google-custom
YouTube:https://www.integromat.com/oauth/cb/youtube
Google Speech:https://www.integromat.com/oauth/cb/google-cloud-speech
其他 Google 服务:https://www.integromat.com/oauth/cb/google
以 Make 开发平台制作的程序:https://www.integromat.com/oauth/cb/app
由于我们只有预计使用到 Gmail 和 Google Drive,因此只需要输入第一个网址:https://www.integromat.com/oauth/cb/google-restricted 即可。输入完并创建之后,Google 就会退出一个带有“订户端编号”和“订户端密钥”的窗口,代表证书已经正确创建了:
回到 Make 并点选最一开始退出错误的 Gmail 模块后,你需要先打开“Show advanced settings”以展开完整的设置窗口,接下来,你就可以看到“Client ID”和“Client Secret”了,分别填上刚刚的订户端编号(Client ID)与密钥(Client Secret)后,就可以再次点击“Sign in with Google”登录:
登录时,Google 可能会提示“这个应用程序未经 Google 验证”,你可以直接点击继续:
接下来,Google 会向你告知 Integromat.com(Make.com 的前身)会获取哪些权限,阅览后确定没问题就可以再单击下继续:
登录窗口关闭之后,就可以看到 Make 已经正确连上你的私人 Google 帐号了!我们将脚本的运行规则填一填,就可以点击左下角的 Run once 测试看看:
新建一笔数据后,可以看到 Make 正确抓取到数据的内容,也正确触发到 Gmail 的模块了:
而我们到邮箱查看,也可以看到这笔信件确实是来自 @gmail.com 的邮箱,说明串接设置没有问题!