使用Ruby转换Salesforce Lead

时间:2014-05-28 05:16:24

标签: ruby-on-rails ruby rest soap salesforce

我对salesforce及其API完全陌生。我有一个现有用户表的rails应用程序。我需要开始将数据同步到我们的新salesforce帐户。

目前,我正在尝试转换现有的潜在客户'到帐户'。据我了解,这只能通过旧的SOAP API来实现。我正在尝试使用rforce宝石。

我可以根据文档进行身份验证,如下所示:

binding = RForce::Binding.new \
  'https://www.salesforce.com/services/Soap/u/20.0'

binding.login \
  'email', 'password' + 'token'

然后我尝试像这样调用转换引导动作:

binding.convertLead "leadId" => lead_id

但是我收到了错误:

:errors=>{:message=>"valid leadId is required", :statusCode=>"INVALID_CROSS_REFERENCE_KEY"}

我确信我使用的leadId确实有效,因为我在调用之前实际检索过它(使用REST API)。

我认为问题可能是rforce gem没有正确构建底层SOAP调用 - 我认为这是在this SO post中描述的。

我感谢任何人都能提供的任何其他信息。

非常感谢, 马特

2 个答案:

答案 0 :(得分:0)

尝试使用lead.Id而不是lead_Id。

答案 1 :(得分:0)

输入哈希需要键'leadConverts':

binding.convertLead 'leadConverts' => { 'leadId' => lead_id, 'convertedStatus' => 'Status' }

您可能需要添加其他参数,具体取决于在Salesforce平台上转换潜在客户所需的内容。