求助:通过API和Zapier在Odoo CRM中创建销售线索/商机
配置Zapier Webhook创建Odoo销售线索完整指南
1. 留存认证后的核心会话信息
调用/web/session/authenticate成功后,从响应的result字段里提取两个关键值:
session_idcsrf_token
后续所有API请求必须在请求头里带上这两个值:
Cookie: session_id=你的session_id值; X-CSRF-Token: 你的csrf_token值
2. 创建销售线索的API请求详情
用Odoo的/web/dataset/call_kw端点发送POST请求,请求体为JSON-RPC格式,示例如下:
请求体模板
{ "jsonrpc": "2.0", "method": "call", "params": { "model": "crm.lead", "method": "create", "args": [ { "name": "Facebook Ads线索:客户咨询夏季促销", // *必填*:线索标题/主题 "type": "lead", // 可选:lead=普通线索,opportunity=商机 "campaign_id": 123, // Odoo后台对应Facebook广告的营销活动ID "source_id": 456, // Odoo后台"Facebook Ads"渠道的来源ID "description": "用户点击Facebook夏季促销广告,留言询问发货周期", // 对应你要同步的Notes内容 "partner_name": "张三", // 客户姓名 "email_from": "zhangsan@example.com", // 客户邮箱 "phone": "138xxxxxxx" // 客户电话 } ], "kwargs": {} }, "id": 1 // 任意整数,用于匹配请求与响应 }
关键参数说明
model: 固定填crm.lead,对应Odoo的销售线索/商机模型method: 固定填create,表示创建新记录args内的对象是线索的字段映射:name: 必填项,线索的核心标题type: 按需选择线索类型,lead是普通线索,opportunity是已转化的商机campaign_id: 需要先在Odoo后台创建对应Facebook广告的营销活动,然后从活动页面的URL里提取ID(比如https://your-odoo.com/crm/campaign/123里的123)source_id: 先在Odoo后台创建"Facebook Ads"这个渠道来源,同样从来源页面URL提取IDdescription: 直接填入从Facebook Ads获取到的备注/详情内容- 其他字段如
partner_name、email_from等,按需从Facebook Ads的触发数据里映射
3. Zapier内的具体配置步骤
- Facebook Ads触发后,添加「Webhook by Zapier」动作,选择
POST方法 - 设置请求URL为你的Odoo实例地址拼接
/web/dataset/call_kw(比如https://your-odoo-domain.com/web/dataset/call_kw) - 请求头添加以下键值对:
Content-Type:application/jsonCookie:session_id=你的会话ID值X-CSRF-Token:你的CSRF令牌值
- 请求体选择「Raw」,格式选「JSON」,将上面的模板粘贴进去,把固定值替换为Zapier里从Facebook Ads获取的动态字段(比如把标题换成Facebook Ads的广告名称+用户咨询内容)
4. 常见问题处理
- 如果不知道
campaign_id或source_id,可以用search_read接口查询:
查询营销活动ID的请求体示例:
把{ "jsonrpc": "2.0", "method": "call", "params": { "model": "utm.campaign", "method": "search_read", "args": [[["name", "=", "你的Facebook广告活动名称"]]], "kwargs": {"fields": ["id"]} }, "id": 2 }model换成utm.source就能查询渠道来源ID - Odoo云托管版本需要确保Zapier的IP在Odoo的IP白名单里(后台路径:设置→技术→参数→系统参数,配置
web.ip_filter)
内容的提问来源于stack exchange,提问作者Marco Esposito
相关产品推荐
相关产品推荐

