Webhooks 允许您通过连接外部系统和服务来扩展 Omnisend 的自动化流程(Automation)功能。它们使您能够在其他平台中触发条件(Trigger)事件或发送实时数据,从而增强您的自动化流程(Automation)工作流的功能。
在本指南中,我们将向您介绍如何在 Omnisend 自动化流程(Automation)中设置和使用 Webhook,并提供示例和用例。
⚠️ 套餐可用性:Webhooks in Automations 仅在付费套餐中可用。要使用此功能,请在 Store Settings → 账单 下升级您的套餐。
⚠️ 重要提示:实施 Webhook 需要您付出大量精力,并且通常需要开发人员的参与。您可能需要准备专用的 API 端点、处理有效负载,并确保 Omnisend 与外部系统之间正确集成。
什么是 Webhook?
Webhooks 是 HTTP 回调,当特定的自动化流程(Automation)事件发生时,它们会将实时数据从 Omnisend 发送到其他服务。这让您能够:
通知第三方系统有关自动化流程(Automation)事件。
通过 WhatsApp 等平台发送个性化消息。
在 CRM、项目管理工具或 Slack 等沟通平台中触发条件(Trigger)自定义工作流程。
🔑 类比:餐厅呼叫器系统
想象一下,您在餐厅里,拿到一个传呼机,当您的餐桌准备好时,它会通知您。这个传呼机就像一个 webhook,无需您手动检查,即可在特定事件发生时提醒您。
了解 Webhook 结构和组件
在 Omnisend 中设置 webhook 时,了解配置 webhook 请求所涉及的关键组件至关重要。
本节将详细介绍您在 Omnisend 中编辑 webhook 时会遇到的结构和组件:
组件 1.Webhook URL
URL 是您的 webhook 数据将被发送到的目标端点。这通常是一个外部系统或服务,用于处理从 Omnisend 发送的数据。
⚠️ 重要:确保此 URL 正确且可访问。如果接收服务需要安全通信,请确保 URL 以https:// for encrypted transmission.
组件 2.Headers
Webhook 允许您在请求中包含额外的 headers。Headers 是键值对,包含有关 webhook 请求的元数据,或作为接收系统的身份验证凭据。
键。header 的名称(例如,
Authorization,Content-Type)。值。与标头键关联的值(例如,
Bearer 您的access_token,application/json)。Header 示例:
Authorization: Bearer your_access_tokenContent-Type: application/json
常见用例。如果您的接收服务需要身份验证(例如 API 密钥(API Key)或令牌),您可以在请求头中传递它。
4A1 提示:始终验证必要的头信息是否正确设置,以避免未经授权或失败的请求。
组件 3.正文
主体是发送实际数据(有效载荷)的地方。它包含您想要传递给外部系统的相关信息,例如客户详情、订单信息或特定的事件触发器。
格式。 正文通常采用 JSON 格式构建,这使得大多数服务能够轻松处理和读取它。
Body 示例(JSON Payload):
{ "customer_name": "[[contact.first_name]]", "email": "[[contact.email]]", "order_value": "[[event.raw._total_price]]", "purchase_time": "[[event.raw.created_at]]" }自定义 Body。您可以定制 payload,使其仅包含接收服务所需的特定数据。Omnisend 提供变量(例如,
[[contact.email]]),它将您的自动化流程(Automation)中的数据动态插入到有效负载中。查找有关可用数据的更多详细信息
⚠️ 重要:确保请求体结构与接收端点的预期相匹配。这包括正确的格式(JSON、XML 等)和字段名称。
测试 Webhook
设置 URL、头部和请求体后,测试 webhook 以验证数据是否正确发送是至关重要的。始终确保接收系统的响应符合预期,并且在传输中没有错误。
如何在 Omnisend 自动化中设置 Webhook
步骤 1. 创建一个自动化流程(Automation Workflow)
首先在 Omnisend 中创建一个新的自动化流程(Automation)或编辑现有的自动化流程。
步骤 2. 添加 Webhook 动作
在您的自动化流程中,将一个 'Webhook' 块拖放到您希望外部事件触发的点上。
步骤 3. 配置 Webhook URL 和头部
输入外部系统的 webhook URL,该 URL 将接收数据。这可以是一个 CRM、一个通信工具,或像 WhatsApp Business API 这样的 API 服务。头部是包含有关 webhook 请求的元数据的键值对,或作为接收系统的身份验证。
步骤 4. 映射有效负载
自定义您希望通过 webhook 发送的数据有效负载。Omnisend 允许您传递客户详细信息、订单信息或其他相关数据。
步骤 5. 测试 Webhook
设置完成后,测试 webhook 以确保外部系统正确发送和接收数据。
验证:
外部系统接收数据。
响应代码为
200 OK。在 Omnisend 或外部日志中没有出现错误。
白名单 Webhook 静态 IP
为了增强您的 webhook 集成的安全性,Omnisend 使用一组专用的静态 IP 地址来处理所有传出的 webhook 请求。您可以在防火墙、API 网关或端点配置中将这些 IP 地址列入白名单,以确保仅接受来自 Omnisend 的请求。
为什么要将 Webhook IP 列入白名单?
将 Omnisend 的静态 IP 列入白名单提供了额外的安全层,通过:
防止未经授权的请求 – 只有来自 Omnisend IP 的流量可以到达您的 webhook 端点。
减少欺骗风险 – 阻止恶意行为者试图模仿 Omnisend webhook 调用。
满足合规要求 – 支持需要基于 IP 的访问控制的企业安全政策。
Omnisend Webhook 静态 IP 联系人名单
将以下 IP 添加到您的白名单配置中:
34.170.162.11
34.56.62.59
34.56.108.215
34.133.59.36
34.58.66.146
35.184.130.5
35.232.14.89
⚠️ 重要: 这些 IP 仅由 Omnisend 用于从自动化流程(Automation)发送的 webhook 请求。确保您的防火墙或 API 配置允许来自这些地址的入站流量。
注意:如果您不确定如何配置 IP 白名单,请咨询您的开发团队或系统管理员。
通过 Webhook 使用 Slack 发送消息
Slack 可以与 Omnisend 集成,以便在自动化事件发生时向特定频道发送通知。
步骤 1. 在 Slack 中创建一个传入的 Webhook。
前往 Slack API 并设置一个传入的 Webhook。
选择一个将发送消息的频道。
复制 Slack 提供的 webhook URL。
步骤 2. 将 Webhook 添加到 Omnisend 自动化流程(Automation)。
在您的 Omnisend 工作流(Workflow)中,在自动化流程(Automation)中所需的位置插入 webhook 块。
输入 Slack webhook URL。
自定义有效负载。定义您希望发送的消息格式。对于 Slack,有效负载可能如下所示:
{ "text": "A new subscriber has joined! 🎉", "attachments": [ { "title": "Subscriber Details", "text": "Name: [[contact.first_name]] \n Email: [[contact.email]]" } ] }测试集成。启用自动化流程(Automation),并检查Slack频道以确认消息已成功发送。
通过自动化 Webhooks 将联系人从 Omnisend 发送到 Postscript
步骤 1. 获取您的 Postscript API 密钥(API Key)
导航到您的 Postscript 账户。
点击右上角的您的名字,然后选择 API。
步骤 2. 在 Postscript 中创建关键字
在 Postscript 中,点击左侧的 关键字。
点击右上角的 创建关键字。
命名您的关键字,并决定是否在回复中包含优惠券。
要编辑回复:
点击紫色的 回复 框,或通过点击 添加动作 创建自动回复,然后自定义回复消息。
当用户通过您的关键字订阅时,此关键字回复将立即发送。
步骤 3. 获取关键字 ID
访问 Postscript API 文档:Postscript 获取关键词。
在头信息中输入您的 私钥,然后点击 尝试 找到您想要用于来自 Omnisend 的联系人的 关键字 ID。
步骤 4. 在 Omnisend 中设置自动化流程(Automation)
自动化流程触发条件(Trigger)。使用 "联系人进入细分(Segment)" 触发条件将联系人传递给 Postscript。
Webhook 块。
在您的自动化流程中添加一个 Webhook 块。
对于 URL,使用:
https://api.postscript.io/api/v2/subscribers。对于 头信息,添加:
Authorization: Beareraccept: application/json
主体。在请求主体中传递以下信息:
{ "origin": "other", "properties": { "VIP": true }, "phone_number": "[[contact.phone_number]]", "email": "[[contact.email]]", "keyword_id": "<keywordID obtained previously>", "tags": [ "source:omnisend" ] }将
<之前获取的关键字ID>替换为您的实际关键字 ID。您可以使用
"origin": "website"、"social"或"other"。
步骤 5. 启用自动化流程(Automation)
启用自动化流程(Automation),并通过向您的细分(Segment)添加一个带有电话号码的测试联系人来进行测试。
检查流程中的联系人是否成功传递到 Postscript。
通过遵循这些步骤,您将能够通过自动化 Webhooks 将联系人从 Omnisend 发送到 Postscript。
使用 Webhooks 发送 WhatsApp 消息
WhatsApp 集成需要使用 WhatsApp Business API 或第三方服务。以下是使用 Webhooks 集成 WhatsApp 消息的步骤。
步骤 1. 设置 WhatsApp Business API。
通过 Facebook 注册 WhatsApp Business API.
按照设置流程进行,其中包括在您的服务器上托管 API 或使用第三方服务。
获取所需的 API 凭证。
步骤 2. 在 Omnisend 中配置 Webhooks。
在您的 Omnisend 自动化流程(Automation Workflow)中添加一个 webhook 块。
将 WhatsApp Business API 端点 URL 输入为 webhook.
构建 HTTP 请求。要通过 WhatsApp 发送消息,请构建一个包含必要有效负载的 HTTP POST 请求。使用 cURL 的示例:
curl -X POST https://graph.facebook.com/v14.0/YOUR_PHONE_NUMBER_ID/messages \ -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \ -H "Content-Type: application/json" \ -d '{ "messaging_product": "whatsapp", "to": "RECIPIENT_PHONE_NUMBER", "type": "text", "text": { "body": "Hello, this is a test message from the WhatsApp Business API." } }'步骤 3. 测试集成。运行您的自动化流程(Automation)以确保WhatsApp消息成功发送。
将数据发送到自定义 API 端点
在某些情况下,您可能希望将事件数据发送到自定义 API 端点,例如您自己的 CRM 系统或订单管理平台。
步骤 1. 创建自定义 API 端点。 与您的开发团队合作,创建一个可以接收 Omnisend Webhook 数据的 API 端点。
步骤 2. 在 Omnisend 中添加 Webhook。在所需的自动化流程(Automation)中插入 webhook 块,并输入自定义 API 端点 URL。
自定义有效载荷。有效载荷可以包括自动化流程中可用的任何数据,例如客户详细信息、订单信息或营销活动(Campaign)数据。示例:
{ "customer_name": "[[contact.first_name]]", "email": "[[contact.email]]", "order_value": "[[event.raw._total_price]]", "purchase_time": "[[event.raw.created_at]]" }步骤 3. 测试与激活。 测试 Webhook 以确保数据正确发送到您的自定义 API 端点。
使用 Webhooks 进行操作通知
这些说明将帮助您设置网络hooks,以接收各种操作的通知,例如当客户购买特定产品、请求退款或在电子邮件中点击特定链接时。Webhook 可以让您根据联系人采取的操作创建自定义事件。以下是它通常的工作方式:
联系人采取行动: 一个联系人通过,例如,点击电子邮件中的链接来触发一个事件。
进入自动化流程(Automation): 联系人进入一个自动化工作流(Workflow)。这可以在他们进入特定细分(Segment)时开始。
Webhook发送自定义事件: Webhook将关于第一个联系人所执行的操作的自定义事件发送到指定的内部电子邮件地址。
第二个自动化已触发:指定的联系人进入第二个自动化,在此过程中,您将收到有关第一个联系人采取的操作的通知。
示例
在我们的示例中,每当有人点击电子邮件中的特定链接时,我们将向自己发送电子邮件通知。
步骤 1。设置第一个自动化流程(Automation)
定义操作:
添加 Webhook 块:
Webhook 配置
头部:
密钥:
x-api-key值: (用您的实际 API 密钥替换)
请求体:
{
"eventName": "Click notification",
"origin": "api",
"contact": {
"email": "[email protected]"
},
"properties": {
"clicker_email":"[[contact.email]]",
"clicker_fname":"[[contact.first_name]]",
"clicker_lname":"[[contact.last_name]]"
}}关于请求体配置的重要说明:
eventName: 您可以为此事件命名为您选择的任何名称。它将用于触发第二个自动化流程。
origin:必须设置为
"api".联系人 →电子邮件(Email): 这指定了将接收自定义事件和关于第一个联系人所执行的操作的通知的联系人。
属性: 这是一个可选的联系人名单,您可以在其中包含有关第一次联系的详细信息。在这种情况下,我们正在收集他们的电子邮件地址、名字和姓氏。
步骤 2.设置第二个自动化流程(Automation)
选择触发条件(Trigger):
添加通知详细信息:
在此自动化流程中,您可以使用从第一个自动化流程中收集的详细信息(例如联系人的电子邮件和姓名)设置电子邮件(Email)或短信(SMS)通知。
此 webhook 设置允许您通知单个联系人有关 Omnisend 中任何其他联系人采取的特定操作。如果您有任何进一步的问题或需要帮助,请联系我们的支持团队。
Webhook 提供了灵活性,可以扩展您的 Omnisend 自动化,使其能够实时与外部平台进行通信。无论您是通过 Slack、WhatsApp 还是像 Postscript 这样的短信(SMS)平台发送消息,过程都是相似的 - 设置 webhook URL,定义有效载荷,并测试集成。但是,请记住,集成 Webhook 通常需要开发资源,特别是对于自定义 API 设置。
4a1 请注意:集成 Webhook 通常需要开发资源,特别是对于自定义 API 设置,因此请确保您拥有必要的支持。
常见问题
我什么时候应该使用 Webhook 而不是原生集成?
在没有直接的 Omnisend 集成的平台上使用网络hooks,或者当您需要自定义数据映射时使用。
我可以在启用自动化流程之前测试 Webhooks 吗?
Yes – 或使用像 Postman 这样的工具发送测试请求。
是否存在速率限制?
限制取决于外部服务 - 请查看他们的 API 文档。
我可以将 Omnisend 的 Webhook IP 列入白名单以提高安全性吗?
Yes. Omnisend uses a dedicated set of static IP addresses for all webhook requests sent from Automation workflows. Whitelisting these IPs adds an extra security layer by ensuring only Omnisend can reach your endpoint.
我可以在 Webhook 有效负载中使用哪些数据?
You can use any contact attributes or data from an event that triggers the automation. For more information, see
我需要使用哪个套餐才能在自动化中使用 Webhooks?
Webhook 在所有 付费计划 中均可用。如果您使用的是免费套餐并想要使用 Webhooks,您需要先升级。前往 店铺设置 账单 来管理您的套餐。
如果您需要设置网络钩子的帮助,请随时联系我们屡获殊荣的客户支持团队。您可以通过应用内聊天或访问 [email protected] 找到我们。










