跳到主要内容

Webhooks

预计学习时间:13分钟

Webhooks允许您通过HTTPS向Make发送数据。Webhooks创建一个URL,您可以从外部应用程序或服务调用该URL,或从另一个Makescenario调用。使用webhooks触发场景的执行。

Webhooks通常作为即时触发器。与定时触发器相反,定时触发器会定期请求给定服务以处理新数据,而webhooks在webhook URL接收到请求后立即执行场景。 Make支持以下类型的webhooks:

  • 应用程序特定的webhooks监听从特定应用程序输出的数据,也称为即时触发器。
  • 自定义webhooks允许您创建一个URL,您可以向其发送任何数据。

创建应用程序特定的webhooks

许多应用程序提供webhooks,以便在应用程序发生特定更改时执行场景。这些称为即时触发器。即时触发器在应用程序模块的列表中标记为“即时”:

文档图像

如果一个应用程序没有提供webhooks,则使用轮询触发器定期轮询服务以获取新数据。

创建自定义webhooks

要创建自定义webhook,您必须使用Make的Webhooks应用程序。您可以在Webhooks应用程序文档中找到有关如何设置自定义webhooks模块的信息。

调度webhooks处理

默认情况下,当Make在webhook上接收到数据时,您的场景会立即执行。如果您不希望在webhook接收到数据后立即执行场景,则可以安排场景定期处理所有webhook请求。

1 编辑由您的webhook触发的场景。 2 编辑场景调度设置或编辑webhook模块的调度设置。 3 设置所需的时间表。 当定期webhook接收到数据时,Make会将数据存储在webhook的队列中。每当满足您的时间表条件时,整个队列都会被处理。

Make如何处理webhooks

当webhook接收到请求时,系统会将请求存储在webhook的队列中。每个webhook都有自己的队列。转到左侧菜单中的Webhooks部分,查看所有webhooks及其队列。

并行与顺序处理

如果您正在使用即时webhooks,则Make会在收到请求时立即开始处理每个请求。默认情况下,具有即时webhooks的场景会并行处理。即使先前的场景执行仍在处理中,Make也不会等待其处理完成。

您可以在场景详细信息中检查所有正在运行的执行。

单击运行执行列表中的项目,以查看该特定执行的图形表示。当前显示的执行会标记有眼睛图标。

文档图像

要关闭并行处理,打开场景设置,并选择顺序处理。启用顺序处理后,Make会在上一个执行完成之前等待,然后开始下一个执行。当您需要按顺序处理webhook请求时,也使用顺序处理。

处理定期webhooks

如果您正在使用定期webhooks,则请求会积累在队列中,直到满足时间表条件。当时间表条件满足时,Make根据您为webhook设置的_结果最大数_处理排队请求。 例如,如果您的计划每小时运行一次场景,并且您将_结果最大数_设置为默认值2,则Make每小时处理队列中的两个项目。如果您的webhook队列中积累了请求,请增加_结果最大数_或调整时间表以更频繁执行场景。

即时触发模块具有_周期最大数_参数,而不是_结果最大数_。

即时触发模块中设置_周期最大数_,以获得与webhooks和_结果最大数_参数相同的数据处理行为。

Webhook队列详情

当数据到达webhook且调用未立即执行时,Make会将其存储在webhook处理队列中。

webhook队列项数的限制取决于您的使用允许量,这是您的订阅的一部分。每月获得每10,000次操作的许可,您可以在每个webhook的队列中最多有667个项目。webhook的队列中的最大数量是10,000个项目。

当webhook队列满时,Make会拒绝所有超过限制的传入webhook数据。传入的webhook数据始终存储在队列中,无论数据是否为机密选项设置。一旦数据在场景中处理,它将被永久删除。

查看webhook队列

要查看队列的内容,请按以下步骤操作。 1 转到左侧菜单中的Webhooks部分。

文档图像

2 找到要查看其队列的webhook。 3 单击列表中的特定webhook以检查其详细信息。 文档图像

您可以查看:

  • Webhook状态
  • Webhook URL和webhook UDID(唯一webhook标识符)
  • 您场景的状态
  • 场景ID和场景URL

4 要查看webhook的队列,请点击队列

文档图像

您也可以单击Webhooks页面上带有卡车图标的按钮。

文档图像

webhook的队列内容会显示。 5 单击要检查的webhook旁边的详情

文档图像

您可以看到解析的项目。

未活动webhooks的到期

Make会自动停用与任何场景未连接超过5天(120小时)的webhooks。钩子将返回410 Gone状态码。

文档图像

从队列中删除webhook项目

1 转到左侧菜单中的Webhooks部分。

文档图像

2 单击带有卡车图标的按钮,以查看webhook的队列。

文档图像

3 在要删除的条目前面的左侧勾选框中打勾。 4 单击删除所选以删除所选webhook。

文档图像

要删除所有条目,请勾选左侧的第一个框,然后单击删除所有

文档图像

点击确认

文档图像

您已从队列中删除了传入的webhook项目。

Webhook日志

Make存储webhook日志3天。对于企业计划的组织,Make会保留webhook日志30天。Make会删除超过其他保留限制的旧日志。 要查看webhook日志,请按以下步骤操作。 1 转到左侧菜单中的Webhooks部分。

文档图像

2 单击列表中的特定webhook以检查其详细信息。

文档图像

3 单击日志

文档图像

您可以看到:

  • webhook调用的状态(成功、警告、错误或全部) 要按状态筛选webhook日志,请单击过滤器图标。

文档图像

  • 传入webhook的日期和时间 要按日期和时间对webhook日志进行排序,请单击箭头。

文档图像

  • Webhook执行日志大小

4 要查看特定webhook日志的详细信息,请单击详情文档图像

您可以看到:

  • Webhook请求(时间戳、URL、方法、标头、查询、正文)
  • Webhook响应(状态、标头、正文)
  • 解析的项目 解析的项目将webhook请求的查询参数和正文组合成一个包。

更新webhook设置

只有在使用自定义Webhooks模块时才可以更新webhook的设置。要了解更多信息,请参阅Webhooks应用程序文档。

错误处理

当您的webhook场景出现错误时,场景:

  • 立即停止 - 当场景设置为立即运行时。
  • 在3次无成功尝试(3个错误)后停止 - 当场景设置为定期运行时。

Webhook速率限制

Make每秒最多处理30个传入的webhook请求。 如果每秒发送超过30个请求,系统将返回状态代码429的错误。