@@ -37,6 +37,28 @@ def create!(portal_id, company_ids, vids, params={})
3737 new ( response )
3838 end
3939
40+ # Updates the properties of a deal
41+ # {http://developers.hubspot.com/docs/methods/deals/update_deal}
42+ # @param deal_id [Integer] hubspot deal_id
43+ # @param params [Hash] hash of properties to update
44+ # @return [boolean] success
45+ def update ( id , properties = { } )
46+ update! ( id , properties )
47+ rescue Hubspot ::RequestError => e
48+ false
49+ end
50+
51+ # Updates the properties of a deal
52+ # {http://developers.hubspot.com/docs/methods/deals/update_deal}
53+ # @param deal_id [Integer] hubspot deal_id
54+ # @param params [Hash] hash of properties to update
55+ # @return [Hubspot::Deal] Deal record
56+ def update! ( id , properties = { } )
57+ request = { properties : Hubspot ::Utils . hash_to_properties ( properties . stringify_keys , key_name : 'name' ) }
58+ response = Hubspot ::Connection . put_json ( UPDATE_DEAL_PATH , params : { deal_id : id , no_parse : true } , body : request )
59+ response . success?
60+ end
61+
4062 # Associate a deal with a contact or company
4163 # {http://developers.hubspot.com/docs/methods/deals/associate_deal}
4264 # Usage
@@ -128,10 +150,11 @@ def [](property)
128150 # @param params [Hash] hash of properties to update
129151 # @return [Hubspot::Deal] self
130152 def update! ( params )
131- query = { " properties" => Hubspot ::Utils . hash_to_properties ( params . stringify_keys! , key_name : 'name' ) }
153+ query = { ' properties' => Hubspot ::Utils . hash_to_properties ( params . stringify_keys! , key_name : 'name' ) }
132154 Hubspot ::Connection . put_json ( UPDATE_DEAL_PATH , params : { deal_id : deal_id } , body : query )
133155 @properties . merge! ( params )
134156 self
135157 end
158+ alias_method :update , :update!
136159 end
137160end
0 commit comments