看起来Base CRM已升级其API并替换了所有端点/参数。
之前我能够检索"赢得"使用此电话的交易:
session = BaseCrm::Session.new("<LEGACY_ACCESS_TOKEN>")
session.deals.all(stage: :won, sort_by: :last_activity, sort_order: :desc, page: 1)
这个查询最近开始忽略我的参数,但它仍继续响应未经过滤的数据(当我意识到这种情况时,这很有趣。)
新语法是:
client = BaseCRM::Client.new(access_token: "<YOUR_PERSONAL_ACCESS_TOKEN>")
client.deals.where(organization_id: google.id, hot: true)
但这不起作用:
client.deals.where(stage_name: :won)
client.deals.where(stage_name: "Won")
client.deals.where(stage_id: 8) # specified ID found in Base Docs for "Won"
等
我已查看Base CRM Gem以及Base CRM API Docs的最新更新,但未找到按特定交易阶段搜索的解决方案。
有没有人对新API和这种查询有好运? 有没有办法使用旧版API?
我已经留下了Base的消息,但我确实需要解决这个问题,你知道,昨天。
感谢您的帮助!
附加信息
遗留API / gem使用JSON进行响应,其中v2 API / gem使用BaseCRM::Deal
对象进行响应:
$ session.deals.find(123456)
# <BaseCRM::Deal
dropbox_email="dropbox@67890.deals.futuresimple.com",
name="Cool Deal Name",
owner_id=54321,
creator_id=65432,
value=2500,
estimated_close_date=nil,
last_activity_at="2016-04-21T02:29:43Z",
tags=[],
stage_id=84588,
contact_id=098765432,
custom_fields={:"Event Location"=>"New York, NY", :Source=>"Friend"},
last_stage_change_at="2016-04-21T02:08:20Z",
last_stage_change_by_id=559951,
created_at="2016-04-18T22:16:35Z",
id=123456,
updated_at="2016-04-21T02:08:20Z",
organization_id=nil,
hot=false,
currency="USD",
source_id=1466480,
loss_reason_id=nil
>
结帐stage_id
。这是一个错误吗?根据文档stage_id
应返回1到10之间的整数。