【问题标题】:Triggering Zap A by passing a POST function from Zap B通过从 Zap B 传递 POST 函数来触发 Zap A
【发布时间】:2019-12-27 04:30:32
【问题描述】:

使用 Zapier,我正在尝试设置一个 Zap,它每天运行一次,并通过电子表格获取任何具有特定关键字的内容并将其添加到另一张工作表中,将其从原始工作表中删除,然后冲洗并重复。我正在使用 Daily Schedule 触发器运行一些带有 Post 函数的 Python 代码来发送 webhook。 URL 链接到另一个带有 Catch Hook 触发器的 Zap,该触发器应在该 webhook 进入以运行调整电子表格的步骤时执行,然后以 A/B 路径结束,如果还有更多实例,该路径将重复 webhook要移动/删除的关键字。但是,我的 Zap 没有触发到 webhook,我不知道为什么。我对 webhook 很陌生,无法自己找到答案。

import requests

hookUrl = 'https://hooks.zapier.com/hooks/catch/123456/1abcd2/'
id = input.get('value')

response = requests.post(hookUrl, id)

id = int(id)+1

return {'value': id}

我希望代码执行到 webhook URL 的帖子并触发 Zap,但 Zap 没有反应。代码执行成功,否则返回递增的 ID。

有什么见解吗?

【问题讨论】:

  • 在黑暗中拍摄,但我猜您的 post 请求需要发送 JSON,而不仅仅是 id 本身。要准确查看请求发送的格式,请尝试将其指向 requestbin.com 而不是其他挂钩 url。
  • 这绝对是问题所在!感谢您帮助 ickle 新手自动化他们的工作,您为我节省了大量时间 :)
  • 没问题!您应该发布您的解决方案作为答案,以帮助可能有相同问题的其他人!
  • 完成。再次感谢您!

标签: python webhooks zapier


【解决方案1】:

以下是有效的:

import requests

hookUrl = 'https://hooks.zapier.com/hooks/catch/123456/1abcd2/'
payload = {'id': input.get('value')}
r = requests.post(hookUrl, data=payload)

id = int(input.get('value'))+1

return {'value': id}

错误在于没有为现在称为payload 的变量定义键。添加密钥以保持 JSON 格式后(谢谢,xavdid!),它就像一个魅力。现在,我有一个 Zap,它每天午夜发出这个 webhook,它运行一个不同的 Zap,最后一个路径步骤是 a.) 终止 Zap 或 b.) 发送一个 webhook 并再次循环 Zap,这取决于是否电子表格中具有给定变量的任何条目仍然存在。

感谢您的帮助!

【讨论】:

    猜你喜欢
    • 2019-07-18
    • 2019-08-24
    • 2020-11-14
    • 1970-01-01
    • 2012-12-29
    • 2020-11-22
    • 2020-11-04
    • 2020-04-21
    • 1970-01-01
    相关资源
    最近更新 更多