01
开始之前
Zapier 上的 ConnectMachine 应用为你的联系人提供三个触发器和两个动作。触发器是即时的,因此联系人发生变化后几秒内 Zap 就会运行,而不必等待轮询间隔。
你需要准备
- 一个已完成引导设置的 ConnectMachine 账号。
- 你的 ConnectMachine 套餐包含 Zapier 权限:付费订阅、组织许可席位,或处于有效期内的 Premium 试用。
- 一个 Zapier 账号。Zapier 免费版每月包含 100 次任务,足以应付大多数单步 Zap。
Zapier 集成指南
把 ConnectMachine 里每一位新增和更新的联系人直接送进你已经在用的应用,也可以把这些应用里的联系人写回来。本指南将带你完成账号连接,了解可用的触发器与动作、可映射的字段,以及如何解决大家最常遇到的问题。
最后更新于 2026 年 8 月
01
Zapier 上的 ConnectMachine 应用为你的联系人提供三个触发器和两个动作。触发器是即时的,因此联系人发生变化后几秒内 Zap 就会运行,而不必等待轮询间隔。
02
ConnectMachine 与 Zapier 只需连接一次。之后你搭建的每个 Zap 都可以复用同一个连接。

| 权限 | 用途 |
|---|---|
| 读取你的账号信息 | 为 Zapier 中的连接添加标识,便于你区分多个账号。 |
| 读取联系人和人脉圈 | 加载用于测试的示例记录,并填充联系人和人脉圈下拉列表。 |
| 创建和更新联系人 | 仅在 Zap 执行“创建联系人”或“更新联系人”动作时使用。 |
| 管理自己的触发器订阅 | 让 Zapier 可以开启和关闭你的触发器。Zapier 只能操作自己创建的订阅。 |
断开连接
要撤销访问权限,在 Zapier 中打开 My Apps,找到 ConnectMachine 并移除该连接。使用它的 Zap 会停止运行,直到你重新连接。如果套餐发生变化,或安全检查关闭了连接,按同样的方式重新连接即可。
03
触发器会在 ConnectMachine 中发生某件事时启动 Zap。动作则让其他应用把数据写入 ConnectMachine。
有联系人被添加到你的 ConnectMachine 账号,无论是扫描名片、手动录入还是导入的。
现有联系人的任意信息发生变化。Zapier 收到的是该联系人当前的全部数据,而不只是变动的那个字段。
有联系人被移除。单条删除、批量删除、全部删除和合并都可能触发它。Zapier 每删除一位联系人收到一条数据,其中包含删除前抓取的信息,方便你在其他应用中找到对应的记录。
从其他应用向 ConnectMachine 添加个人或企业联系人。每个新联系人都必须填写名字。公司为选填,可与联系人类型设为“企业”配合使用。如果人脉圈留空,联系人会进入你的默认人脉圈。
修改已存在联系人的字段。联系人 ID 为必填:可以从下拉列表中选择最近的联系人,或选择“自定义”以映射来自前一个 Zap 步骤的 ID。
值得注意
删除联系人只是触发器。系统没有“删除联系人”动作,因此 Zap 永远不会代你删除 ConnectMachine 中的联系人。
04
本演练让 Google Sheets 与 ConnectMachine 保持同步。同样的模式适用于 Zapier 支持的任何应用。
把 ConnectMachine 添加为第一步,并选择一个触发事件。本例使用“更新联系人”,因此每当联系人信息变化时 Zap 都会运行。

点击“测试”加载一位示例联系人。示例数据让你在真实事件到来之前就能完成字段映射。如果没有加载出内容,在 ConnectMachine 中新增或编辑一位联系人后再测试一次。

展开示例即可看到可映射到后续步骤的所有字段:姓名、公司、职位、主要邮箱和电话、带标签的字段值、地点、标签和时间戳。

添加第二个应用,把 ConnectMachine 的字段拖进去。这里用 Google Sheets 的一行数据驱动“更新联系人”动作,因此在表格里做的修改会回流到 ConnectMachine。

用“删除联系人”触发器保持其他系统整洁。在目标应用中按 ID 或邮箱查找该联系人,然后清空或归档对应记录。

需要灵感?ConnectMachine 的 Zapier 页面列出了适用于 Salesforce、HubSpot、Slack、Gmail 和 Airtable 的热门 Zap。想了解两条 CRM 路线的完整流程,包括各自所需的字段映射和查重规则,请看把名片扫描同步到 HubSpot 和把名片扫描同步到 Salesforce。
05
每个触发器都会把完整的联系人记录交给 Zapier,因此下面这些字段你都可以映射到后续步骤。
| 字段 | 内容 |
|---|---|
Item ID | 该事件的稳定 ID,确保同一次变更不会让你的 Zap 运行两次。 |
Contact ID | ConnectMachine 的联系人 ID。可映射到“更新联系人”,或存入你的其他应用。 |
Event Type | 该联系人是被创建、更新还是删除。 |
Source | 变更的来源。值为 zapier 表示是你自己的某个 Zap 做的改动。 |
Contact Type | 个人或企业。 |
First Name, Last Name, Company, Job Title | 核心身份字段。 |
Label, Notes, Bio | 你的 ConnectMachine 标签、私人备注和联系人简介。 |
Primary Email, Primary Phone, Website | 主要联系方式,可直接映射到大多数应用。 |
Emails, Phones, Websites, Socials, Custom | 带标签的列表。每一项都有一个标签和一个值。 |
Address, Where We Met | 街道、城市、州省、邮编、国家和坐标。 |
Tags | 联系人身上的标签,包括活动标签。 |
Created At, Updated At, Deleted At | UTC 时间戳。 |
“创建联系人”和“更新联系人”接受同一组字段。只需填写你想设置的那些。
| 字段 | 是否必填 | 说明 |
|---|---|---|
Contact ID | 仅更新时必填 | 从下拉列表中选择最近的联系人,或选择“自定义”以映射来自前一步骤的 ID。 |
Contact Type | 选填 | 个人或企业。默认为个人。 |
First Name | 仅创建时必填 | 创建任何联系人时都必须填写。 |
Company | 选填 | 填写公司名称;企业联系人请把联系人类型设为“企业”。 |
Last Name, Job Title, Label | 选填 | 纯文本字段。 |
Notes, Bio | 选填 | 备注仅你的账号可见。 |
Network | 选填 | 留空则使用你的默认人脉圈。 |
Primary Email, Primary Phone, Website | 选填 | 更新当前的主要值;若原本没有,则新建一个。 |
Emails, Phones, Websites, Socials, Custom | 选填 | 每类最多五条。每一条都需要标签和值。 |
Address, Where We Met | 选填 | 街道、城市、州省、邮编、国家和坐标。“相遇地点”还可以填写地点名称。 |
http:// 或 https:// 开头。06
当一个 Zap 在 ConnectMachine 中创建或更新联系人时,这个变更和其他变更一样会触发“新增联系人”或“更新联系人”。如果同一个 Zap 又在监听这些触发器,它就可能不断触发自己,形成死循环。
每条触发记录都带有一个 Source 字段。由你自己的 Zap 造成的变更,来源值为 zapier,因此你可以把它们过滤掉。
在触发器之后紧接着加上这个筛选条件
Source — 不完全匹配 — zapier
只有会写回 ConnectMachine 的 Zap 才需要这一步。只把联系人发送到其他应用的 Zap 不可能形成循环。
07
大多数问题都出在连接、套餐或某个未通过校验的字段值上。请在下面找到你遇到的症状。
你的 ConnectMachine 套餐已不再包含 Zapier。请续订付费订阅、获取组织许可席位,或开启 Premium 试用,然后重新打开该 Zap。
该连接缺少所需的某项权限。在 Zapier 中进入 My Apps,重新连接 ConnectMachine,并在授权页面上批准所有权限。
触发器订阅已失效。把 Zap 关闭再打开,让 Zapier 重新创建一个。
该联系人 ID 在已连接的账号中不存在,或者该联系人已被删除。请检查你映射的 ID,并确认当前使用的是正确的 ConnectMachine 账号。
映射进来的值未通过校验。请在源头修正,或在 ConnectMachine 步骤之前加一个 Zapier Formatter 步骤,去掉多余空格并补上 https:// 前缀。
关闭一个不再使用的 ConnectMachine Zap,然后重试。Zapier 也会在 60 秒后自动重试。
在 ConnectMachine 中新增或编辑一位联系人,然后再次点击“查找新记录”。
在 Zapier 的 My Apps 中移除 ConnectMachine 连接,然后从头重新连接一次。
08
本参考文档列出了原生集成调用的每一个 ConnectMachine API 端点。它们都是生产环境的 HTTPS 端点;该集成不会调用沙箱、测试、预发布或开发环境的 API。
https://api.connectmachine.ai
该集成使用带 PKCE 的 OAuth 2.0 授权码流程。受保护的端点需要 Authorization: Bearer <access_token>。Zapier 会请求以下权限范围:user:read、contacts:read、contacts:write 和 webhooks:write。
{
"access_token": "<access-token>",
"refresh_token": "<refresh-token>",
"token_type": "Bearer",
"expires_in": 3600,
"scope": "user:read contacts:read contacts:write webhooks:write"
}/api/v1/oauth/authorize启动授权流程,并把浏览器重定向到 ConnectMachine 授权页面。
/api/v1/oauth/token用授权码或刷新令牌换取访问令牌。
/api/v1/oauth/me测试连接,并返回在 Zapier 中显示的账号标识。
/api/v1/zapier/subscriptions让某个 Zap 订阅联系人创建、更新或删除事件。
/api/v1/zapier/subscriptions/{id}移除当前已认证连接的触发器订阅。
/api/v1/zapier/trigger-samples返回一条有代表性的记录,用于配置和测试即时触发器。
/api/v1/zapier/contacts在已连接的账号中创建个人或企业联系人。
/api/v1/zapier/contacts/{id}只更新已连接账号名下某个现有联系人中所提供的字段。
/api/v1/zapier/contact-options为“更新联系人”下拉列表加载最近的联系人。
/api/v1/zapier/network-options为“创建联系人”和“更新联系人”加载人脉圈。
“创建联系人”和“更新联系人”接受包含以下字段的 JSON。未知字段会被忽略。留空的值不会清除已有数据。
| JSON 字段 | 类型 | 规则 |
|---|---|---|
type | string | person 或 business。创建时默认为 person。 |
first_name, last_name | string | 创建任何联系人时 first_name 为必填。 |
company, job_title | string | 选填的公司和职位信息。 |
notes, bio, network_id | string | network_id 必须属于已连接的账号。 |
email, phone, website | string | 主要值;标签使用 email_label、phone_label 和 website_label。 |
emails, phones, websites | array | 每种值类型最多五个 { label, value } 对象。 |
socials, custom | array | 每个集合最多五个 { label, value } 对象。 |
address, where_we_met | object | 地点字段:name、googlemap_uri、street、street2、city、state、country、postcode、latitude、longitude。 |
ConnectMachine 会向订阅的目标 URL 发送一次 HTTPS POST。创建和更新事件包含当前的联系人快照。删除事件包含 contact_ids,在可用时还会在 contacts 中包含删除前的快照。Zapier 会把每位联系人变成一条触发数据,其 Item ID 由事件 ID 和联系人 ID 组合而成。
{
"event_id": "event_01",
"occurred_at": "2026-08-04T12:00:00Z",
"source": "app",
"source_id": "contact_01",
"data": {
"event_type": "contacts.updated",
"contacts": [{
"id": "contact_01",
"type": "person",
"first_name": "John",
"last_name": "Doe",
"primary_email": "john.doe@example.com",
"updated_at": "2026-08-04T12:00:00Z"
}]
}
}错误使用统一的 JSON 结构返回。429 响应还会带上 Retry-After 响应头。
{
"error": "invalid_request",
"error_description": "Invalid contact payload"
}| 状态码 | 错误码 | 含义 |
|---|---|---|
400 | invalid_request, invalid_event_type, invalid_contact_type, first_name_required, invalid_email, invalid_url, invalid_website, invalid_labeled_value, too_many_values, invalid_latitude, invalid_longitude, invalid_location_url, invalid_target_url | 请求格式有误,或某个字段未通过校验。 |
401 | invalid_client, invalid_grant, invalid_token | OAuth 客户端、授权许可或 bearer 令牌缺失、过期、已撤销或无效。 |
403 | insufficient_scope, onboarding_required, premium_required, forbidden | 请携带所需权限范围重新连接、完成引导设置,或为该账号开通 Zapier 权限。 |
404 | not_found | 所请求的联系人、账号或名下资源不存在。 |
409 | conflict | 请求与资源的当前状态冲突。 |
429 | subscription_limit, rate_limited | 请在 Retry-After 响应头给出的秒数之后重试。 |
503 | server_error, temporarily_unavailable | 服务未能完成该请求;请采用退避策略重试。 |
把你的 Zap 名称和 Zapier 显示的错误发给我们,我们会帮你看看。