名称: cold-email
描述: 使用 AI 生成高度个性化的冷启动邮件序列。将潜在客户数据转化为高转化率的推广活动。
元数据:
clawdbot:
requires:
env:
- MACHFIVE_API_KEY
根据潜在客户数据生成个性化的冷启动邮件序列。MachFive 利用 AI 研究潜在客户并撰写独特、相关的推广内容,而非使用模板。
MACHFIVE_API_KEY。每个生成请求都需要在 URL 中指定一个活动 ID:/api/v1/campaigns/{campaign_id}/generate(或 /generate-batch)。
列出工作空间中的活动,以便在用户未提供名称或 ID 时,代理可以询问用户使用哪个活动。
GET https://app.machfive.io/api/v1/campaigns
Authorization: Bearer {MACHFIVE_API_KEY}
或使用 X-API-Key: {MACHFIVE_API_KEY} 请求头。
可选查询参数:?q=search 或 ?name=search 用于按活动名称过滤。
响应 (200):
{
"campaigns": [
{ "id": "cb1bbb14-e576-4d8f-a8f3-6fa929076fd8", "name": "SaaS Q1 推广", "created_at": "2025-01-15T12:00:00Z" },
{ "id": "a1b2c3d4-...", "name": "企业潜在客户", "created_at": "2025-01-10T08:00:00Z" }
]
}
如果未提供活动名称或 ID,请先调用此接口,然后询问用户:“我应该使用哪个活动?[列出名称/ID]。”
为一个潜在客户生成邮件序列(每个潜在客户 3–5 封邮件)。等待完成,直接返回序列。请求可能需要 3–5 分钟(AI 研究 + 生成);请使用至少 300 秒(5 分钟) 或 600 秒(10 分钟) 的客户端超时设置。不要使用 120 秒超时,否则响应会被截断。
POST https://app.machfive.io/api/v1/campaigns/{campaign_id}/generate
Authorization: Bearer {MACHFIVE_API_KEY}
Content-Type: application/json
或使用 X-API-Key: {MACHFIVE_API_KEY} 请求头。
{
"lead": {
"name": "张三",
"title": "市场副总裁",
"company": "Acme 公司",
"email": "john@acme.com",
"company_website": "https://acme.com",
"linkedin_url": "https://linkedin.com/in/johnsmith"
},
"options": {
"list_name": "Q1 推广",
"email_count": 3,
"email_signature": "祝好,\n您的姓名",
"approved_ctas": ["直接会议 CTA", "线索磁石 CTA"]
}
}
响应 (200):
{
"lead_id": "lead_xyz789",
"list_id": "uuid",
"sequence": [
{ "step": 1, "subject": "...", "body": "..." },
{ "step": 2, "subject": "...", "body": "..." },
{ "step": 3, "subject": "...", "body": "..." }
],
"credits_remaining": 94
}
恢复处理: 响应中包含 list_id。如果请求超时或响应被截断,您仍然可以获取结果:调用 GET /api/v1/lists/{list_id} 确认状态,然后调用 GET /api/v1/lists/{list_id}/export?format=json 来检索序列。
为多个潜在客户生成邮件序列(一个列表;每个潜在客户获得一个序列)。立即返回(202)并附带 list_id;处理在后台运行。要获取结果:轮询列表状态,然后调用导出接口。
POST https://app.machfive.io/api/v1/campaigns/{campaign_id}/generate-batch
Authorization: Bearer {MACHFIVE_API_KEY}
Content-Type: application/json
或使用 X-API-Key: {MACHFIVE_API_KEY} 请求头。
{
"leads": [
{ "name": "张三", "email": "john@acme.com", "company": "Acme 公司", "title": "市场副总裁" },
{ "name": "李四", "email": "jane@beta.com", "company": "Beta 公司", "title": "销售总监" }
],
"options": {
"list_name": "Q1 推广批量",
"email_count": 3
}
}
响应 (202):
{
"list_id": "uuid",
"status": "processing",
"leads_count": 2,
"message": "批量任务已接受。请轮询列表状态或在 UI 中查看。"
}
列出工作空间中的潜在客户列表。可选查询参数:campaign_id、status(pending | processing | completed | failed)、limit(默认 50,最大 100)、offset。
GET https://app.machfive.io/api/v1/lists
GET https://app.machfive.io/api/v1/lists?campaign_id={campaign_id}&status=completed&limit=20
Authorization: Bearer {MACHFIVE_API_KEY}
响应 (200): { "lists": [ { "id", "campaign_id", "custom_name", "processing_status", "created_at", "completed_at" }, ... ] }。按 created_at 降序排列。
轮询直到列表处理完成。使用来自 generate 或 generate-batch 的 list_id。
GET https://app.machfive.io/api/v1/lists/{list_id}
Authorization: Bearer {MACHFIVE_API_KEY}
响应 (200): id、campaign_id、custom_name、processing_status(pending | processing | completed | failed)、created_at、updated_at。当 processing_status === 'completed' 时:包含 leads_count、emails_created、completed_at。当 failed 时:包含 failed_at。如果列表未找到或不在工作空间中,返回 404。
每 10–30 秒轮询一次,直到 processing_status === 'completed' 或 failed。如果 failed,该列表无法导出;请通过提交新的批量任务来重试。
状态变为 completed 后,获取处理后的输出。支持 CSV(默认)或 JSON 格式。
GET https://app.machfive.io/api/v1/lists/{list_id}/export?format=csv
GET https://app.machfive.io/api/v1/lists/{list_id}/export?format=json
Authorization: Bearer {MACHFIVE_API_KEY}
Content-Disposition: attachment; filename="MachFive-{list_id}.csv"。{ "leads": [ { "email": "...", "sequence": [ { "step": 1, "subject": "...", "body": "..." }, ... ] }, ... ] }。每个潜在客户在数据存在时可能包含可选的 name、company、title,例如 { "email": "john@acme.com", "name": "张三", "company": "Acme 公司", "title": "市场副总裁", "sequence": [ ... ] }。批量处理流程: POST generate-batch → 202 + list_id → 轮询 GET /lists/:id 直到 processing_status === 'completed' → GET /lists/:id/export?format=csv 或 json → 将结果返回给用户。
每个潜在客户必须包含一个有效的 email;该字段用于在处理过程中映射潜在客户,并在导出时匹配生成的序列与潜在客户(与应用 UI 相同)。所有其他字段都是可选的,但能提升个性化程度。
| 字段 | 必填 | 描述 |
|---|---|---|
email |
是 | 潜在客户的电子邮件地址;用于在处理过程中映射潜在客户并在导出时匹配 |
name |
否 | 全名或名字(提升个性化) |
company |
否 | 公司名称(提升个性化) |
title |
否 | 职位(提升个性化) |
company_website |
否 | 公司网址,用于研究 |
linkedin_url |
否 | LinkedIn 个人资料,用于更深度的个性化 |
| 选项 | 类型 | 默认值 | 描述 |
|---|---|---|---|
list_name |
字符串 | 自动生成 | 在 MachFive UI 中此列表的显示名称 |
email_count |
数字 | 3 | 每个潜在客户的邮件数量(1-5) |
email_signature |
字符串 | 无 | 附加到邮件末尾的签名 |
campaign_angle |
字符串 | 无 | 用于个性化的背景信息 |
approved_ctas |
数组 | 来自活动 | 要使用的 CTA(省略则使用活动默认值) |
processing_status 变为 completed 或 failed。工作空间有并发批量任务限制;如果收到 429,请稍后重试。limit 默认 50,最大 100;offset 用于分页。| 代码 | 错误 | 描述 |
|---|---|---|
| 400 | BAD_REQUEST | 无效的 JSON、缺少 lead/leads、或缺少/无效的潜在客户 email;或活动没有向量存储 |
| 401 | UNAUTHORIZED | 无效或缺少 API 密钥 |
| 402 | INSUFFICIENT_CREDITS | 积分不足 |
| 403 | FORBIDDEN | 活动不在您的工作空间中 |
| 404 | NOT_FOUND | 活动或列表不存在 |
| 409 | NOT_READY | 在列表完成前调用了导出(请先轮询 GET /lists/:id) |
| 429 | WORKSPACE_LIMIT | 并发批量任务过多;请稍后重试 |
“为 Stripe 的销售副总裁生成一封冷启动邮件”
“为这 10 个潜在客户创建推广序列”
“编写一个针对 SaaS 公司市场总监的 3 封邮件序列”
开始使用:https://machfive.io