From 449a39eaf8defd901ece830b047d525ccc0b7cac Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ant=C3=B3nio=20Lima?= Date: Tue, 8 Jan 2019 19:00:18 +0000 Subject: [PATCH] adding dissociation method to deals --- lib/hubspot/deal.rb | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/hubspot/deal.rb b/lib/hubspot/deal.rb index a7c26a60..d54c282a 100644 --- a/lib/hubspot/deal.rb +++ b/lib/hubspot/deal.rb @@ -49,6 +49,15 @@ def associate!(deal_id, company_ids=[], vids=[]) Hubspot::Connection.put_json(ASSOCIATE_DEAL_PATH, params: { deal_id: deal_id, OBJECTTYPE: objecttype, objectId: object_ids}, body: {}) end + # Didssociate a deal with a contact or company + # {https://developers.hubspot.com/docs/methods/deals/delete_association} + # Usage + # Hubspot::Deal.dissociate!(45146940, [], [52]) + def dissociate!(deal_id, company_ids=[], vids=[]) + objecttype = company_ids.any? ? 'COMPANY' : 'CONTACT' + object_ids = (company_ids.any? ? company_ids : vids).join('&id=') + Hubspot::Connection.delete_json(ASSOCIATE_DEAL_PATH, { deal_id: deal_id, OBJECTTYPE: objecttype, objectId: object_ids }) + end def find(deal_id) response = Hubspot::Connection.get_json(DEAL_PATH, { deal_id: deal_id })