MachFive Cold Email
MachFive - AI冷邮件生成器
根据潜在客户数据生成个性化的冷邮件序列。MachFive利用人工智能研究潜在客户并创作独特、相关的外联邮件——而非模板。
设置
- 在以下地址获取您的API密钥:https://app.machfive.io/settings(集成 → API密钥)
- 在您的环境中设置
MACHFIVE_API_KEY变量。
活动ID
每个生成请求在URL中都需要一个活动ID:/api/v1/campaigns/{campaign_id}/generate(或/generate-batch)。
- 如果用户未提供活动名称或ID:调用GET /api/v1/campaigns(见下文)以列出他们工作空间中的活动,然后请他们在运行生成前通过名称或ID选择一个。
- 手动获取位置: https://app.machfive.io/campaigns→ 打开一个营销活动 → 从URL或设置中复制ID。
- 无默认值:该技能不会预设营销活动。必须由用户(或代理配置)提供。如果用户提供了默认营销活动ID(例如“为我的请求使用营销活动X”),代理可以将其存储在工作区。
端点
列出营销活动(在生成前发现)
列出工作区中的营销活动,以便当用户未提供名称或ID时,代理可以询问用户使用哪个营销活动。
GET https://app.machfive.io/api/v1/campaigns
Authorization: Bearer {MACHFIVE_API_KEY}
或使用X-API-Key: {MACHFIVE_API_KEY}头部。
可选查询:?q=搜索或?name=搜索以按营销活动名称筛选。
响应(200):
{
"campaigns": [
{ "id": "cb1bbb14-e576-4d8f-a8f3-6fa929076fd8", "name": "SaaS Q1 Outreach", "created_at": "2025-01-15T12:00:00Z" },
{ "id": "a1b2c3d4-...", "name": "Enterprise Leads", "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": "John Smith",
"title": "VP of Marketing",
"company": "Acme Corp",
"email": "john@acme.com",
"company_website": "https://acme.com",
"linkedin_url": "https://linkedin.com/in/johnsmith"
},
"options": {
"list_name": "Q1 Outreach",
"email_count": 3,
"email_signature": "Best,\nYour Name",
"approved_ctas": ["Direct Meeting CTA", "Lead Magnet 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": "John Smith", "email": "john@acme.com", "company": "Acme Corp", "title": "VP Marketing" },
{ "name": "Jane Doe", "email": "jane@beta.com", "company": "Beta Inc", "title": "Director Sales" }
],
"options": {
"list_name": "Q1 Outreach Batch",
"email_count": 3
}
}
响应 (202):
{
"list_id": "uuid",
"status": "processing",
"leads_count": 2,
"message": "Batch accepted. Poll list status or open in UI."
}
列出潜在客户列表
列出工作空间中的潜在客户列表。可选查询参数:campaign_id、status(pending|processing|completed|failed),limit(默认 50,最大 100),偏移量.
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降序。
列表状态 (轮询)
轮询直到列表处理完成。使用来自生成或批量生成的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(待处理|处理中|已完成|失败),创建时间,更新时间。当processing_status === 'completed'时:leads_count,emails_created,completed_at。当失败时:failed_at。404如果列表未找到或不在工作空间内。
每10–30秒轮询一次,直到processing_status === '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}
- format=csv(默认):返回处理后的CSV文件(与界面下载相同),附带
Content-Disposition: attachment; filename="MachFive-{list_id}.csv"。 - format=json:返回
{ "leads": [ { "email": "...", "sequence": [ { "step": 1, "subject": "...", "body": "..." }, ... ] }, ... ] }。每个线索可能包含可选的姓名、公司、职位(如果存在),例如:{ "email": "john@acme.com", "name": "John Smith", "company": "Acme Corp", "title": "VP Marketing", "sequence": [ ... ] }. - 409如果列表尚未完成(请先轮询 GET /lists/:id)。404如果未找到列表或列表不在工作空间内。
批量处理流程:POST generate-batch → 202 + list_id → 轮询 GET /lists/:id 直到processing_status === 'completed'→ GET /lists/:id/export?format=csv 或 json → 将结果返回给用户。
潜在客户字段
每个潜在客户必须包含一个有效的电子邮件;该字段用于在处理过程中映射潜在客户,并在导出时将生成的序列与潜在客户匹配(与应用程序用户界面相同)。所有其他字段都是可选的,但能提升个性化程度。
| 字段 | 必填 | 描述 |
|---|---|---|
电子邮件 | 是 | 潜在客户的电子邮件地址;用于在处理过程中映射潜在客户并用于导出 |
姓名 | 否 | 全名或名字(提升个性化程度) |
公司 | 否 | 公司名称(提升个性化程度) |
职位 | 否 | 职位头衔(提升个性化程度) |
公司网址 | 否 | 用于调研的公司网址 |
领英网址 | 否 | 用于深度个性化的领英个人资料 |
选项
| 选项 | 类型 | 默认 | 描述 |
|---|---|---|---|
列表名称 | 字符串 | 自动 | 此列表在 MachFive 用户界面中的显示名称 |
邮件数量 | 数字 | 3 | 每个潜在客户的邮件数量(1-5) |
电子邮件签名 | 字符串 | 无 | 附加在电子邮件末尾的签名 |
营销活动角度 | 字符串 | 无 | 用于个性化的背景信息 |
已批准的行动号召 | 数组 | 来自营销活动 | 要使用的行动号召(省略则使用营销活动的默认设置) |
限制
- 单个潜在客户(同步):请求可能需要5-10分钟;客户端超时时间应至少设为300秒(5分钟)或600秒(10分钟)。
- 批量(异步):立即返回202;轮询GET /api/v1/lists/{list_id}每10-30秒一次,直到
处理状态是已完成或失败。工作空间有并发批处理限制;如果收到429,请稍后重试。 - 列表列出:查询参数
limit默认 50,最大 100;offset用于分页。
错误
| 代码 | 错误 | 描述 |
|---|---|---|
| 400 | BAD_REQUEST | 无效的 JSON,缺少lead/leads,或缺少/无效的 leademail;或活动没有向量存储 |
| 401 | 未授权 | API密钥无效或缺失 |
| 402 | 信用额度不足 | 信用额度已用完 |
| 403 | 禁止访问 | 活动不在您的工作空间内 |
| 404 | 未找到 | 活动或列表不存在 |
| 409 | 未就绪 | 在列表完成前调用了导出操作(请先轮询 GET /lists/:id) |
| 429 | 工作空间限制 | 并发批量作业过多;请稍后重试 |
使用示例
"为Stripe的销售副总裁生成一封开发信" "为这10个潜在客户创建外联序列" "编写一个针对SaaS公司市场总监的3封邮件序列"
定价
- 免费版:每月100信用额度
- 入门版:每月2,000信用额度
- 增长版:每月5,000积分
- 企业版:自定义积分/月
- 1积分 = 处理1条销售线索
开始使用:https://machfive.io


微信扫一扫,打赏作者吧~