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)或令牌),您可以在请求头中传递它。
提示 💡 始终验证必要的标头已正确设置,以避免未经授权或失败的请求。
组件 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)中的数据动态插入到有效负载中。有关可用数据的更多详细信息,请参见此处
⚠️ 重要!请确保 body 结构与接收端点所期望的匹配。这包括正确的格式(JSON、XML 等)和字段名称。
测试 Webhook
设置 URL、headers 和 body 后,务必测试 webhook,以验证数据是否正确发送。请始终确保接收系统的响应符合预期,并且传输过程中没有错误。
如何在 Omnisend Automations 中设置 Webhook
步骤 1. 创建一个自动化流程(Automation)工作流(Workflow)
首先在 Omnisend 中创建新的自动化流程(Automation)或编辑现有的自动化流程(Automation)。
步骤 2. 添加 Webhook 操作
在您的自动化流程(Automation)中,在您希望外部事件触发的位置拖放一个“Webhook”模块。
步骤 3. 配置 Webhook URL 和 Headers
输入将接收数据的外部系统的 webhook URL。这可能是一个 CRM、一个通信工具,或者一个像 WhatsApp Business API 这样的 API 服务。Headers 是键值对,包含有关 webhook 请求的元数据,或作为接收系统的身份验证凭据。
步骤 4. 映射 Payload
自定义您希望通过 webhook 发送的数据 payload。Omnisend 允许您传递客户详情、订单信息或其他相关数据。
步骤 5. 测试 Webhook
设置完成后,测试 webhook 以确保外部系统正确发送和接收数据。
验证:
外部系统接收到数据。
响应代码为
200 OK。Omnisend 或外部日志中未出现错误。
将 Webhook 静态 IP 列入白名单
为增强您的 webhook 集成的安全性,Omnisend 对所有出站 webhook 请求使用一组专用的静态 IP 地址。您可以在防火墙、API 网关或端点配置中将这些 IP 列入白名单,以确保只接受来自 Omnisend 的请求。
为什么要将 Webhook IP 列入白名单?
将 Omnisend 的静态 IP 列入白名单可通过以下方式提供额外的安全层:
防止未经授权的请求 – 只有来自 Omnisend IP 的流量才能到达您的 webhook 端点。
降低欺骗风险 – 阻止恶意行为者模仿 Omnisend webhook 调用。
满足合规性要求 – 支持需要基于 IP 的访问控制的企业安全策略。
Omnisend Webhook Static 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 用于从自动化流程工作流发送的 Webhook 请求。请确保您的防火墙或 API 配置允许来自这些地址的入站流量。
注意:如果您不确定如何配置 IP 白名单,请咨询您的开发团队或系统管理员。
使用 Webhook 通过 Slack 发送消息
Slack 可以与 Omnisend 集成,以便在自动化流程(Automation)事件发生时向特定渠道发送通知。
步骤 1. 在 Slack 中创建 Incoming Webhook。
前往 Slack API 并设置传入 Webhook。
选择将发送消息的频道。
复制 Slack 提供的 webhook URL。
步骤 2. 将 Webhook 添加到 Omnisend 自动化流程(Automation)。
在您的 Omnisend 工作流(Workflow)中,将 webhook 模块插入到您的自动化流程(Automation)的所需位置。
输入 Slack webhook URL。
自定义 Payload。 定义您想要发送的消息格式。对于 Slack,Payload 可能如下所示:
{ "text": "A new subscriber has joined! 🎉", "attachments": [ { "title": "Subscriber Details", "text": "Name: [[contact.first_name]] \n Email: [[contact.email]]" } ] }测试集成。启用自动化流程并检查 Slack 频道,以确认消息已成功发送。
通过自动化流程(Automation)Webhooks 将联系人从 Omnisend 发送到 Postscript
步骤 1. 获取您的 Postscript API 密钥(API Key)
前往您的 Postscript 账户。
点击右上角的您的姓名,然后选择 API。
步骤 2. 在 Postscript 中创建一个关键词
在 Postscript 中,点击左侧的 “Keywords”。
点击 Create Keyword 在右上角。
为您的关键词命名,并决定是否在回复中包含优惠券。
编辑回复:
点击紫色的"Reply" 框,或通过点击"Add Action" 创建自动回复,然后自定义回复消息。
此关键词回复将在用户通过您的关键词订阅时立即发送。
步骤 3. 获取关键词 ID
访问 Postscript API 文档:Postscript Get Keywords。
在页眉中输入您的私钥,然后点击 "Try it" 以查找您要用于来自 Omnisend 的联系人的关键词ID。
步骤 4. 在 Omnisend 中设置自动化流程(Automation)
自动化流程(Automation)触发条件(Trigger)。使用“Contact Enters Segment”触发条件(Trigger)将联系人传递到 Postscript。
Webhook Block
将 Webhook 模块添加到您的自动化流程(Automation)中。
对于 URL,请使用:
https://api.postscript.io/api/v2/subscribers。对于 Headers,添加:
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。
您可以使用
"origin": "website","social",或"other"。
步骤 5. 启用自动化流程(Automation)
启用自动化流程(Automation),并通过向您的细分(Segment)添加一个附带电话号码的测试联系人来对其进行测试。
检查流程中的联系人是否成功传递到 Postscript。
遵循这些步骤,您将能够通过自动化流程(Automation)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。在所需的自动化流程中插入 Webhook 模块,并输入自定义 API 端点 URL。
自定义 Payload。Payload 可以包含自动化流程(Automation)中可用的任何数据,例如客户详细信息、订单信息或营销活动(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 进行动作通知
这些说明将帮助您设置 Webhook,以接收各种操作的通知,例如当客户购买特定产品、请求退款或点击电子邮件(Email)中的特定链接时。Webhooks 可以让您根据您的联系人所采取的行动创建自定义事件。它通常是这样运作的:
联系人执行操作:联系人通过例如点击电子邮件(Email)中的链接来触发事件。
进入自动化流程(Automation):联系人进入自动化流程(Automation)工作流(Workflow)。这可以在他们进入一个特定的细分(Segment)时开始。
Webhook 发送自定义事件:Webhook 将关于第一个联系人所执行操作的自定义事件发送到指定的内部电子邮件(Email)地址。
第二个自动化流程(Automation)被触发:指定的联系人进入第二个自动化流程(Automation),您会收到关于第一个联系人所采取操作的通知。
示例
在我们的示例中,每当有人点击电子邮件中的特定链接时,Omnisend 将向您发送一封电子邮件通知。
步骤 1.设置第一个自动化流程(Automation)
定义操作:
添加 Webhook 模块:
Webhook 配置
标题:
键:
x-api-key值: (替换为您的实际 API 密钥(API Key))
正文:
{
"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:您可以随意命名此事件。它将用于触发第二个自动化流程(Automation)。
来源: 必须设置为
"api"。联系人→电子邮件(Email):这指定了将收到自定义事件和关于第一个联系人所执行操作通知的联系人。
properties:这是一份可选的详细信息列表,您可以添加关于首次联系人的信息。在这种情况下,Omnisend 正在收集他们的电子邮件地址、名字和姓氏。
步骤 2.设置第二个自动化流程(Automation)
选择触发条件(Trigger):
添加通知详情:
在此自动化流程(Automation)中,您可以设置电子邮件(Email)或短信(SMS)通知,其中包含从第一个自动化流程(Automation)中收集的详细信息,例如联系人的电子邮件(Email)和姓名。
此 webhook 设置允许您通知单个联系人关于 Omnisend 中任何其他联系人所采取的特定操作。如果您有任何其他问题或需要帮助,请联系 Omnisend 的支持团队。
Webhooks 提供灵活性,以扩展您的 Omnisend 自动化,从而实现与外部平台的实时通信。无论您是通过 Slack、WhatsApp 还是像 Postscript 这样的短信(SMS)平台发送消息,流程都相似——设置 webhook URL、定义 payload 并测试集成。但是,请记住,集成 Webhook 通常需要开发资源,特别是对于自定义 API 设置。
请记住 💡 集成 Webhook 通常需要开发资源,特别是对于自定义 API 设置,因此请确保您拥有必要的支持。
常见问题
何时应该使用 webhooks 与 native integrations?
使用 webhooks 处理没有直接 Omnisend 集成的平台,或者当您需要自定义数据映射时。
我可以在启用自动化流程(Automation)之前测试 Webhooks 吗?
是 – 测试 Webhook或像 Postman 这样的工具来发送测试请求。
是否有速率限制?
限制取决于外部服务 – 请查阅其 API 文档。
我可以将 Omnisend 的 webhook IP 地址加入白名单以保障安全吗?
是的。 Omnisend 使用一组专用的静态 IP 地址,用于从自动化流程(Automation)工作流发送的所有 webhook 请求。将这些 IP 列入白名单,通过确保只有 Omnisend 能够访问您的端点,增加了一层额外的安全保障。查看完整的 IP 列表
您可以在 webhook payloads 中使用什么数据?
您可以使用任何联系人属性或触发自动化流程(Automation)的事件数据。更多信息,请参阅 此处
您需要哪种套餐才能在 Automations 中使用 Webhooks?
Webhooks 适用于所有 付费套餐。如果您使用的是免费套餐并希望使用 Webhooks,您需要先升级。前往 店铺设置 → 账单 管理您的套餐。
如果您在设置 webhooks 方面需要帮助,欢迎联系我们屡获殊荣的客户支持团队。您可以通过应用内聊天或发送邮件至 [email protected] 联系我们。










