hubspot-api-client 3.1.1 → 6.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (330) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +28 -0
  3. data/lib/hubspot-api-client.rb +73 -1
  4. data/lib/hubspot/codegen/cms/audit-logs/api/default_api.rb +106 -0
  5. data/lib/hubspot/codegen/cms/audit-logs/api_client.rb +422 -0
  6. data/lib/hubspot/codegen/cms/audit-logs/api_error.rb +61 -0
  7. data/lib/hubspot/codegen/cms/audit-logs/configuration.rb +265 -0
  8. data/lib/hubspot/codegen/cms/audit-logs/models/collection_response_public_audit_log.rb +226 -0
  9. data/lib/hubspot/codegen/cms/audit-logs/models/error.rb +292 -0
  10. data/lib/hubspot/codegen/cms/audit-logs/models/error_detail.rb +258 -0
  11. data/lib/hubspot/codegen/cms/audit-logs/models/next_page.rb +224 -0
  12. data/lib/hubspot/codegen/cms/audit-logs/models/paging.rb +210 -0
  13. data/lib/hubspot/codegen/cms/audit-logs/models/public_audit_log.rb +352 -0
  14. data/lib/hubspot/codegen/cms/domains/api/domains_api.rb +183 -0
  15. data/lib/hubspot/codegen/cms/domains/api_client.rb +422 -0
  16. data/lib/hubspot/codegen/cms/domains/api_error.rb +61 -0
  17. data/lib/hubspot/codegen/cms/domains/configuration.rb +265 -0
  18. data/lib/hubspot/codegen/cms/domains/models/collection_response_with_total_domain.rb +240 -0
  19. data/lib/hubspot/codegen/cms/domains/models/domain.rb +1091 -0
  20. data/lib/hubspot/codegen/cms/domains/models/domain_cdn_config.rb +497 -0
  21. data/lib/hubspot/codegen/cms/domains/models/domain_setup_info.rb +231 -0
  22. data/lib/hubspot/codegen/cms/domains/models/error.rb +292 -0
  23. data/lib/hubspot/codegen/cms/domains/models/error_detail.rb +258 -0
  24. data/lib/hubspot/codegen/cms/domains/models/next_page.rb +224 -0
  25. data/lib/hubspot/codegen/cms/domains/models/paging.rb +210 -0
  26. data/lib/hubspot/codegen/cms/performance/api/default_api.rb +186 -0
  27. data/lib/hubspot/codegen/cms/performance/api_client.rb +422 -0
  28. data/lib/hubspot/codegen/cms/performance/api_error.rb +61 -0
  29. data/lib/hubspot/codegen/cms/performance/configuration.rb +265 -0
  30. data/lib/hubspot/codegen/cms/performance/models/error.rb +292 -0
  31. data/lib/hubspot/codegen/cms/performance/models/error_detail.rb +258 -0
  32. data/lib/hubspot/codegen/cms/performance/models/performance_view.rb +528 -0
  33. data/lib/hubspot/codegen/cms/performance/models/public_performance_response.rb +332 -0
  34. data/lib/hubspot/codegen/cms/site-search/api/default_api.rb +225 -0
  35. data/lib/hubspot/codegen/cms/site-search/api_client.rb +422 -0
  36. data/lib/hubspot/codegen/cms/site-search/api_error.rb +61 -0
  37. data/lib/hubspot/codegen/cms/site-search/configuration.rb +265 -0
  38. data/lib/hubspot/codegen/cms/site-search/models/content_search_result.rb +427 -0
  39. data/lib/hubspot/codegen/cms/site-search/models/error.rb +292 -0
  40. data/lib/hubspot/codegen/cms/site-search/models/error_detail.rb +258 -0
  41. data/lib/hubspot/codegen/cms/site-search/models/indexed_data.rb +279 -0
  42. data/lib/hubspot/codegen/cms/site-search/models/public_search_results.rb +282 -0
  43. data/lib/hubspot/codegen/cms/site-search/models/search_hit_field.rb +259 -0
  44. data/lib/hubspot/codegen/cms/url-redirects/api/redirects_api.rb +368 -0
  45. data/lib/hubspot/codegen/cms/url-redirects/api_client.rb +422 -0
  46. data/lib/hubspot/codegen/cms/url-redirects/api_error.rb +61 -0
  47. data/lib/hubspot/codegen/cms/url-redirects/configuration.rb +265 -0
  48. data/lib/hubspot/codegen/cms/url-redirects/models/collection_response_with_total_url_mapping.rb +242 -0
  49. data/lib/hubspot/codegen/cms/url-redirects/models/error.rb +292 -0
  50. data/lib/hubspot/codegen/cms/url-redirects/models/error_detail.rb +258 -0
  51. data/lib/hubspot/codegen/cms/url-redirects/models/next_page.rb +224 -0
  52. data/lib/hubspot/codegen/cms/url-redirects/models/paging.rb +210 -0
  53. data/lib/hubspot/codegen/cms/url-redirects/models/url_mapping.rb +596 -0
  54. data/lib/hubspot/codegen/cms/url-redirects/models/url_mapping_create_request_body.rb +306 -0
  55. data/lib/hubspot/codegen/crm/associations/configuration.rb +7 -0
  56. data/lib/hubspot/codegen/crm/companies/api/associations_api.rb +2 -2
  57. data/lib/hubspot/codegen/crm/companies/api/basic_api.rb +20 -12
  58. data/lib/hubspot/codegen/crm/companies/api/batch_api.rb +40 -24
  59. data/lib/hubspot/codegen/crm/companies/api/search_api.rb +10 -6
  60. data/lib/hubspot/codegen/crm/companies/configuration.rb +7 -0
  61. data/lib/hubspot/codegen/crm/companies/models/batch_read_input_simple_public_object_id.rb +20 -20
  62. data/lib/hubspot/codegen/crm/companies/models/batch_response_simple_public_object.rb +29 -38
  63. data/lib/hubspot/codegen/crm/companies/models/batch_response_simple_public_object_with_errors.rb +333 -0
  64. data/lib/hubspot/codegen/crm/companies/models/filter.rb +15 -15
  65. data/lib/hubspot/codegen/crm/companies/models/simple_public_object_batch_input.rb +18 -18
  66. data/lib/hubspot/codegen/crm/contacts/api/associations_api.rb +2 -2
  67. data/lib/hubspot/codegen/crm/contacts/api/basic_api.rb +20 -12
  68. data/lib/hubspot/codegen/crm/contacts/api/batch_api.rb +40 -24
  69. data/lib/hubspot/codegen/crm/contacts/api/search_api.rb +10 -6
  70. data/lib/hubspot/codegen/crm/contacts/configuration.rb +7 -0
  71. data/lib/hubspot/codegen/crm/contacts/models/batch_read_input_simple_public_object_id.rb +20 -20
  72. data/lib/hubspot/codegen/crm/contacts/models/batch_response_simple_public_object.rb +29 -38
  73. data/lib/hubspot/codegen/crm/contacts/models/batch_response_simple_public_object_with_errors.rb +333 -0
  74. data/lib/hubspot/codegen/crm/contacts/models/filter.rb +15 -15
  75. data/lib/hubspot/codegen/crm/contacts/models/simple_public_object_batch_input.rb +18 -18
  76. data/lib/hubspot/codegen/crm/deals/api/associations_api.rb +2 -2
  77. data/lib/hubspot/codegen/crm/deals/api/basic_api.rb +20 -12
  78. data/lib/hubspot/codegen/crm/deals/api/batch_api.rb +40 -24
  79. data/lib/hubspot/codegen/crm/deals/api/search_api.rb +10 -6
  80. data/lib/hubspot/codegen/crm/deals/configuration.rb +7 -0
  81. data/lib/hubspot/codegen/crm/deals/models/batch_read_input_simple_public_object_id.rb +20 -20
  82. data/lib/hubspot/codegen/crm/deals/models/batch_response_simple_public_object.rb +29 -38
  83. data/lib/hubspot/codegen/crm/deals/models/batch_response_simple_public_object_with_errors.rb +333 -0
  84. data/lib/hubspot/codegen/crm/deals/models/filter.rb +15 -15
  85. data/lib/hubspot/codegen/crm/deals/models/simple_public_object_batch_input.rb +18 -18
  86. data/lib/hubspot/codegen/crm/extensions/cards/configuration.rb +7 -0
  87. data/lib/hubspot/codegen/crm/imports/api/core_api.rb +41 -41
  88. data/lib/hubspot/codegen/crm/imports/configuration.rb +7 -0
  89. data/lib/hubspot/codegen/crm/line_items/api/associations_api.rb +2 -2
  90. data/lib/hubspot/codegen/crm/line_items/api/basic_api.rb +20 -12
  91. data/lib/hubspot/codegen/crm/line_items/api/batch_api.rb +40 -24
  92. data/lib/hubspot/codegen/crm/line_items/api/search_api.rb +10 -6
  93. data/lib/hubspot/codegen/crm/line_items/configuration.rb +7 -0
  94. data/lib/hubspot/codegen/crm/line_items/models/batch_read_input_simple_public_object_id.rb +20 -20
  95. data/lib/hubspot/codegen/crm/line_items/models/batch_response_simple_public_object.rb +29 -38
  96. data/lib/hubspot/codegen/crm/line_items/models/batch_response_simple_public_object_with_errors.rb +333 -0
  97. data/lib/hubspot/codegen/crm/line_items/models/filter.rb +15 -15
  98. data/lib/hubspot/codegen/crm/line_items/models/simple_public_object_batch_input.rb +18 -18
  99. data/lib/hubspot/codegen/crm/owners/api/default_api.rb +0 -2
  100. data/lib/hubspot/codegen/crm/owners/configuration.rb +7 -0
  101. data/lib/hubspot/codegen/crm/pipelines/configuration.rb +7 -0
  102. data/lib/hubspot/codegen/crm/products/api/associations_api.rb +2 -2
  103. data/lib/hubspot/codegen/crm/products/api/basic_api.rb +20 -12
  104. data/lib/hubspot/codegen/crm/products/api/batch_api.rb +40 -24
  105. data/lib/hubspot/codegen/crm/products/api/search_api.rb +10 -6
  106. data/lib/hubspot/codegen/crm/products/configuration.rb +7 -0
  107. data/lib/hubspot/codegen/crm/products/models/batch_read_input_simple_public_object_id.rb +20 -20
  108. data/lib/hubspot/codegen/crm/products/models/batch_response_simple_public_object.rb +29 -38
  109. data/lib/hubspot/codegen/crm/products/models/batch_response_simple_public_object_with_errors.rb +333 -0
  110. data/lib/hubspot/codegen/crm/products/models/filter.rb +15 -15
  111. data/lib/hubspot/codegen/crm/products/models/simple_public_object_batch_input.rb +18 -18
  112. data/lib/hubspot/codegen/crm/properties/api/batch_api.rb +30 -18
  113. data/lib/hubspot/codegen/crm/properties/api/core_api.rb +20 -12
  114. data/lib/hubspot/codegen/crm/properties/api/groups_api.rb +20 -12
  115. data/lib/hubspot/codegen/crm/properties/configuration.rb +7 -0
  116. data/lib/hubspot/codegen/crm/properties/models/batch_read_input_property_name.rb +18 -18
  117. data/lib/hubspot/codegen/crm/properties/models/batch_response_property.rb +29 -23
  118. data/lib/hubspot/codegen/crm/properties/models/property_create.rb +14 -4
  119. data/lib/hubspot/codegen/crm/properties/models/property_update.rb +14 -4
  120. data/lib/hubspot/codegen/crm/quotes/api/associations_api.rb +1 -157
  121. data/lib/hubspot/codegen/crm/quotes/api/basic_api.rb +2 -190
  122. data/lib/hubspot/codegen/crm/quotes/api/batch_api.rb +11 -187
  123. data/lib/hubspot/codegen/crm/quotes/api/default_api.rb +426 -0
  124. data/lib/hubspot/codegen/crm/quotes/api/search_api.rb +11 -7
  125. data/lib/hubspot/codegen/crm/quotes/configuration.rb +7 -0
  126. data/lib/hubspot/codegen/crm/quotes/models/batch_read_input_simple_public_object_id.rb +20 -20
  127. data/lib/hubspot/codegen/crm/quotes/models/batch_response_simple_public_object.rb +29 -38
  128. data/lib/hubspot/codegen/crm/quotes/models/batch_response_simple_public_object_with_errors.rb +333 -0
  129. data/lib/hubspot/codegen/crm/quotes/models/filter.rb +15 -15
  130. data/lib/hubspot/codegen/crm/quotes/models/simple_public_object_batch_input.rb +18 -18
  131. data/lib/hubspot/codegen/crm/tickets/api/associations_api.rb +2 -2
  132. data/lib/hubspot/codegen/crm/tickets/api/basic_api.rb +20 -12
  133. data/lib/hubspot/codegen/crm/tickets/api/batch_api.rb +40 -24
  134. data/lib/hubspot/codegen/crm/tickets/api/search_api.rb +10 -6
  135. data/lib/hubspot/codegen/crm/tickets/configuration.rb +7 -0
  136. data/lib/hubspot/codegen/crm/tickets/models/batch_read_input_simple_public_object_id.rb +20 -20
  137. data/lib/hubspot/codegen/crm/tickets/models/batch_response_simple_public_object.rb +29 -38
  138. data/lib/hubspot/codegen/crm/tickets/models/batch_response_simple_public_object_with_errors.rb +333 -0
  139. data/lib/hubspot/codegen/crm/tickets/models/filter.rb +15 -15
  140. data/lib/hubspot/codegen/crm/tickets/models/simple_public_object_batch_input.rb +18 -18
  141. data/lib/hubspot/codegen/crm/timeline/configuration.rb +7 -0
  142. data/lib/hubspot/codegen/oauth/configuration.rb +7 -0
  143. data/lib/hubspot/codegen/webhooks/api/subscriptions_api.rb +70 -0
  144. data/lib/hubspot/codegen/webhooks/configuration.rb +7 -0
  145. data/lib/hubspot/codegen/webhooks/models/batch_input_subscription_batch_update_request.rb +215 -0
  146. data/lib/hubspot/codegen/webhooks/models/batch_response_subscription_response.rb +331 -0
  147. data/lib/hubspot/codegen/webhooks/models/subscription_batch_update_request.rb +227 -0
  148. data/lib/hubspot/exceptions.rb +11 -0
  149. data/lib/hubspot/helpers/webhooks_helper.rb +31 -0
  150. data/lib/hubspot/version.rb +1 -1
  151. data/sample-apps/imports-contacts-app/.env.template +2 -0
  152. data/sample-apps/imports-contacts-app/.env.test.template +3 -0
  153. data/sample-apps/imports-contacts-app/.gitignore +37 -0
  154. data/sample-apps/imports-contacts-app/.rspec +1 -0
  155. data/sample-apps/imports-contacts-app/.ruby-version +1 -0
  156. data/sample-apps/imports-contacts-app/Dockerfile +22 -0
  157. data/sample-apps/imports-contacts-app/Gemfile +33 -0
  158. data/sample-apps/imports-contacts-app/Gemfile.lock +271 -0
  159. data/sample-apps/imports-contacts-app/README.md +27 -0
  160. data/sample-apps/imports-contacts-app/Rakefile +6 -0
  161. data/sample-apps/imports-contacts-app/app/assets/config/manifest.js +3 -0
  162. data/sample-apps/imports-contacts-app/app/assets/images/.keep +0 -0
  163. data/sample-apps/imports-contacts-app/app/assets/javascripts/application.js +15 -0
  164. data/sample-apps/imports-contacts-app/app/assets/javascripts/cable.js +13 -0
  165. data/sample-apps/imports-contacts-app/app/assets/javascripts/channels/.keep +0 -0
  166. data/sample-apps/imports-contacts-app/app/assets/stylesheets/application.css +87 -0
  167. data/sample-apps/imports-contacts-app/app/controllers/application_controller.rb +12 -0
  168. data/sample-apps/imports-contacts-app/app/controllers/concerns/.keep +0 -0
  169. data/sample-apps/imports-contacts-app/app/controllers/concerns/exception_handler.rb +12 -0
  170. data/sample-apps/imports-contacts-app/app/controllers/imports_controller.rb +24 -0
  171. data/sample-apps/imports-contacts-app/app/controllers/oauth/authorization_controller.rb +19 -0
  172. data/sample-apps/imports-contacts-app/app/helpers/application_helper.rb +2 -0
  173. data/sample-apps/{webhooks-contacts-app → imports-contacts-app}/app/lib/services/authorization/authorize_hubspot.rb +0 -0
  174. data/sample-apps/{webhooks-contacts-app → imports-contacts-app}/app/lib/services/authorization/get_authorization_uri.rb +1 -1
  175. data/sample-apps/{webhooks-contacts-app → imports-contacts-app}/app/lib/services/authorization/tokens/base.rb +0 -0
  176. data/sample-apps/{webhooks-contacts-app → imports-contacts-app}/app/lib/services/authorization/tokens/generate.rb +2 -2
  177. data/sample-apps/{webhooks-contacts-app → imports-contacts-app}/app/lib/services/authorization/tokens/refresh.rb +3 -4
  178. data/sample-apps/imports-contacts-app/app/lib/services/hubspot/imports/create.rb +52 -0
  179. data/sample-apps/imports-contacts-app/app/models/application_record.rb +3 -0
  180. data/sample-apps/imports-contacts-app/app/models/concerns/.keep +0 -0
  181. data/sample-apps/imports-contacts-app/app/views/imports/index.html.erb +70 -0
  182. data/sample-apps/imports-contacts-app/app/views/layouts/application.html.erb +23 -0
  183. data/sample-apps/imports-contacts-app/app/views/oauth/authorization/login.html.erb +15 -0
  184. data/sample-apps/imports-contacts-app/app/views/shared/_header.html.erb +15 -0
  185. data/sample-apps/imports-contacts-app/bin/bundle +3 -0
  186. data/sample-apps/imports-contacts-app/bin/rails +9 -0
  187. data/sample-apps/imports-contacts-app/bin/rake +9 -0
  188. data/sample-apps/imports-contacts-app/bin/setup +36 -0
  189. data/sample-apps/imports-contacts-app/bin/spring +17 -0
  190. data/sample-apps/imports-contacts-app/bin/update +31 -0
  191. data/sample-apps/imports-contacts-app/bin/yarn +11 -0
  192. data/sample-apps/imports-contacts-app/config.ru +5 -0
  193. data/sample-apps/imports-contacts-app/config/application.rb +19 -0
  194. data/sample-apps/imports-contacts-app/config/boot.rb +3 -0
  195. data/sample-apps/imports-contacts-app/config/cable.yml +10 -0
  196. data/sample-apps/imports-contacts-app/config/database.yml +25 -0
  197. data/sample-apps/imports-contacts-app/config/environment.rb +5 -0
  198. data/sample-apps/imports-contacts-app/config/environments/development.rb +61 -0
  199. data/sample-apps/imports-contacts-app/config/environments/production.rb +94 -0
  200. data/sample-apps/imports-contacts-app/config/environments/test.rb +46 -0
  201. data/sample-apps/imports-contacts-app/config/initializers/assets.rb +14 -0
  202. data/sample-apps/imports-contacts-app/config/initializers/filter_parameter_logging.rb +4 -0
  203. data/sample-apps/imports-contacts-app/config/initializers/hubspot-api-client.rb +3 -0
  204. data/sample-apps/imports-contacts-app/config/initializers/mime_types.rb +1 -0
  205. data/sample-apps/imports-contacts-app/config/initializers/wrap_parameters.rb +14 -0
  206. data/sample-apps/imports-contacts-app/config/locales/en.yml +33 -0
  207. data/sample-apps/imports-contacts-app/config/puma.rb +34 -0
  208. data/sample-apps/imports-contacts-app/config/routes.rb +11 -0
  209. data/sample-apps/imports-contacts-app/config/spring.rb +6 -0
  210. data/sample-apps/imports-contacts-app/db/seeds.rb +7 -0
  211. data/sample-apps/imports-contacts-app/docker-compose.yml +11 -0
  212. data/sample-apps/imports-contacts-app/docker-entrypoint.sh +8 -0
  213. data/sample-apps/imports-contacts-app/lib/assets/.keep +0 -0
  214. data/sample-apps/imports-contacts-app/lib/tasks/.keep +0 -0
  215. data/sample-apps/imports-contacts-app/log/.keep +0 -0
  216. data/sample-apps/imports-contacts-app/package.json +5 -0
  217. data/sample-apps/imports-contacts-app/public/404.html +67 -0
  218. data/sample-apps/imports-contacts-app/public/422.html +67 -0
  219. data/sample-apps/imports-contacts-app/public/500.html +66 -0
  220. data/sample-apps/imports-contacts-app/public/apple-touch-icon-precomposed.png +0 -0
  221. data/sample-apps/imports-contacts-app/public/apple-touch-icon.png +0 -0
  222. data/sample-apps/imports-contacts-app/public/examples/example.csv +2 -0
  223. data/sample-apps/imports-contacts-app/public/favicon.ico +0 -0
  224. data/sample-apps/imports-contacts-app/public/robots.txt +1 -0
  225. data/sample-apps/imports-contacts-app/tmp/.keep +0 -0
  226. data/sample-apps/search-result-paging-app/.env.template +4 -0
  227. data/sample-apps/search-result-paging-app/.gitignore +35 -0
  228. data/sample-apps/search-result-paging-app/.rspec +1 -0
  229. data/sample-apps/search-result-paging-app/.ruby-version +1 -0
  230. data/sample-apps/search-result-paging-app/Dockerfile +22 -0
  231. data/sample-apps/search-result-paging-app/Gemfile +35 -0
  232. data/sample-apps/search-result-paging-app/Gemfile.lock +279 -0
  233. data/sample-apps/search-result-paging-app/README.md +0 -0
  234. data/sample-apps/search-result-paging-app/Rakefile +6 -0
  235. data/sample-apps/search-result-paging-app/app/assets/config/manifest.js +3 -0
  236. data/sample-apps/search-result-paging-app/app/assets/images/.keep +0 -0
  237. data/sample-apps/search-result-paging-app/app/assets/javascripts/application.js +25 -0
  238. data/sample-apps/search-result-paging-app/app/assets/javascripts/cable.js +13 -0
  239. data/sample-apps/search-result-paging-app/app/assets/javascripts/channels/.keep +0 -0
  240. data/sample-apps/search-result-paging-app/app/assets/stylesheets/application.css +77 -0
  241. data/sample-apps/search-result-paging-app/app/controllers/application_controller.rb +12 -0
  242. data/sample-apps/search-result-paging-app/app/controllers/concerns/.keep +0 -0
  243. data/sample-apps/search-result-paging-app/app/controllers/concerns/exception_handler.rb +12 -0
  244. data/sample-apps/search-result-paging-app/app/controllers/home_controller.rb +14 -0
  245. data/sample-apps/search-result-paging-app/app/controllers/oauth/authorization_controller.rb +19 -0
  246. data/sample-apps/search-result-paging-app/app/helpers/application_helper.rb +2 -0
  247. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/authorization/authorize.rb +17 -0
  248. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/authorization/get_authorization_uri.rb +35 -0
  249. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/authorization/tokens/base.rb +21 -0
  250. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/authorization/tokens/generate.rb +28 -0
  251. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/authorization/tokens/refresh.rb +35 -0
  252. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/contacts/get_page.rb +26 -0
  253. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/contacts/search.rb +35 -0
  254. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/properties/create.rb +23 -0
  255. data/sample-apps/search-result-paging-app/app/lib/services/hubspot/properties/destroy.rb +16 -0
  256. data/sample-apps/search-result-paging-app/app/models/application_record.rb +3 -0
  257. data/sample-apps/search-result-paging-app/app/models/concerns/.keep +0 -0
  258. data/sample-apps/search-result-paging-app/app/views/home/index.html.erb +13 -0
  259. data/sample-apps/search-result-paging-app/app/views/layouts/application.html.erb +23 -0
  260. data/sample-apps/search-result-paging-app/app/views/oauth/authorization/login.html.erb +15 -0
  261. data/sample-apps/search-result-paging-app/app/views/shared/_header.html.erb +18 -0
  262. data/sample-apps/search-result-paging-app/bin/bundle +3 -0
  263. data/sample-apps/search-result-paging-app/bin/rails +9 -0
  264. data/sample-apps/search-result-paging-app/bin/rake +9 -0
  265. data/sample-apps/search-result-paging-app/bin/setup +36 -0
  266. data/sample-apps/search-result-paging-app/bin/spring +17 -0
  267. data/sample-apps/search-result-paging-app/bin/update +31 -0
  268. data/sample-apps/search-result-paging-app/bin/yarn +11 -0
  269. data/sample-apps/search-result-paging-app/config.ru +5 -0
  270. data/sample-apps/search-result-paging-app/config/application.rb +19 -0
  271. data/sample-apps/search-result-paging-app/config/boot.rb +3 -0
  272. data/sample-apps/search-result-paging-app/config/cable.yml +10 -0
  273. data/sample-apps/search-result-paging-app/config/database.yml +25 -0
  274. data/sample-apps/search-result-paging-app/config/environment.rb +5 -0
  275. data/sample-apps/search-result-paging-app/config/environments/development.rb +61 -0
  276. data/sample-apps/search-result-paging-app/config/environments/production.rb +94 -0
  277. data/sample-apps/search-result-paging-app/config/environments/test.rb +46 -0
  278. data/sample-apps/search-result-paging-app/config/initializers/assets.rb +14 -0
  279. data/sample-apps/search-result-paging-app/config/initializers/filter_parameter_logging.rb +4 -0
  280. data/sample-apps/search-result-paging-app/config/initializers/hubspot-api-client.rb +3 -0
  281. data/sample-apps/search-result-paging-app/config/initializers/mime_types.rb +1 -0
  282. data/sample-apps/search-result-paging-app/config/initializers/wrap_parameters.rb +14 -0
  283. data/sample-apps/search-result-paging-app/config/locales/en.yml +33 -0
  284. data/sample-apps/search-result-paging-app/config/puma.rb +34 -0
  285. data/sample-apps/search-result-paging-app/config/routes.rb +7 -0
  286. data/sample-apps/search-result-paging-app/config/spring.rb +6 -0
  287. data/sample-apps/search-result-paging-app/db/seeds.rb +7 -0
  288. data/sample-apps/search-result-paging-app/docker-compose.yml +11 -0
  289. data/sample-apps/search-result-paging-app/docker-entrypoint.sh +8 -0
  290. data/sample-apps/search-result-paging-app/lib/assets/.keep +0 -0
  291. data/sample-apps/search-result-paging-app/lib/tasks/.keep +0 -0
  292. data/sample-apps/search-result-paging-app/lib/tasks/search_contacts.rake +36 -0
  293. data/sample-apps/search-result-paging-app/log/.keep +0 -0
  294. data/sample-apps/search-result-paging-app/package.json +5 -0
  295. data/sample-apps/search-result-paging-app/public/404.html +67 -0
  296. data/sample-apps/search-result-paging-app/public/422.html +67 -0
  297. data/sample-apps/search-result-paging-app/public/500.html +66 -0
  298. data/sample-apps/search-result-paging-app/public/apple-touch-icon-precomposed.png +0 -0
  299. data/sample-apps/search-result-paging-app/public/apple-touch-icon.png +0 -0
  300. data/sample-apps/search-result-paging-app/public/favicon.ico +0 -0
  301. data/sample-apps/search-result-paging-app/public/robots.txt +1 -0
  302. data/sample-apps/search-result-paging-app/tmp/.keep +0 -0
  303. data/sample-apps/trello-integration-app/.env +13 -0
  304. data/sample-apps/webhooks-contacts-app/.env.template +3 -1
  305. data/sample-apps/webhooks-contacts-app/Gemfile.lock +1 -1
  306. data/sample-apps/webhooks-contacts-app/README.md +24 -21
  307. data/sample-apps/webhooks-contacts-app/app/assets/stylesheets/application.css +7 -55
  308. data/sample-apps/webhooks-contacts-app/app/controllers/events_controller.rb +8 -10
  309. data/sample-apps/webhooks-contacts-app/app/controllers/home_controller.rb +44 -0
  310. data/sample-apps/webhooks-contacts-app/app/controllers/oauth/authorization_controller.rb +6 -6
  311. data/sample-apps/webhooks-contacts-app/app/controllers/webhooks_controller.rb +1 -1
  312. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/authorization/authorize.rb +17 -0
  313. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/authorization/get_authorization_uri.rb +35 -0
  314. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/authorization/tokens/base.rb +21 -0
  315. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/authorization/tokens/generate.rb +28 -0
  316. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/authorization/tokens/refresh.rb +35 -0
  317. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/webhooks/configure_target_url.rb +25 -0
  318. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/webhooks/create_or_activate_subscription.rb +44 -0
  319. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/webhooks/handle.rb +13 -1
  320. data/sample-apps/webhooks-contacts-app/app/lib/services/hubspot/webhooks/pause_active_subscriptions.rb +39 -0
  321. data/sample-apps/webhooks-contacts-app/app/models/event.rb +3 -0
  322. data/sample-apps/webhooks-contacts-app/app/views/events/index.html.erb +14 -16
  323. data/sample-apps/webhooks-contacts-app/app/views/home/index.html.erb +47 -0
  324. data/sample-apps/webhooks-contacts-app/app/views/oauth/authorization/login.html.erb +6 -6
  325. data/sample-apps/webhooks-contacts-app/app/views/shared/_header.html.erb +3 -0
  326. data/sample-apps/webhooks-contacts-app/config/database.yml +9 -9
  327. data/sample-apps/webhooks-contacts-app/config/routes.rb +2 -0
  328. data/sample-apps/webhooks-contacts-app/db/schema.rb +2 -5
  329. data/sample-apps/webhooks-contacts-app/docker-compose.yml +13 -10
  330. metadata +618 -7
@@ -16,12 +16,12 @@ module Hubspot
16
16
  module Crm
17
17
  module Tickets
18
18
  class Filter
19
+ attr_accessor :value
20
+
19
21
  attr_accessor :property_name
20
22
 
21
23
  attr_accessor :operator
22
24
 
23
- attr_accessor :value
24
-
25
25
  class EnumAttributeValidator
26
26
  attr_reader :datatype
27
27
  attr_reader :allowable_values
@@ -47,18 +47,18 @@ module Hubspot
47
47
  # Attribute mapping from ruby-style variable name to JSON key.
48
48
  def self.attribute_map
49
49
  {
50
+ :'value' => :'value',
50
51
  :'property_name' => :'propertyName',
51
- :'operator' => :'operator',
52
- :'value' => :'value'
52
+ :'operator' => :'operator'
53
53
  }
54
54
  end
55
55
 
56
56
  # Attribute type mapping.
57
57
  def self.openapi_types
58
58
  {
59
+ :'value' => :'String',
59
60
  :'property_name' => :'String',
60
- :'operator' => :'String',
61
- :'value' => :'String'
61
+ :'operator' => :'String'
62
62
  }
63
63
  end
64
64
 
@@ -83,6 +83,10 @@ module Hubspot
83
83
  h[k.to_sym] = v
84
84
  }
85
85
 
86
+ if attributes.key?(:'value')
87
+ self.value = attributes[:'value']
88
+ end
89
+
86
90
  if attributes.key?(:'property_name')
87
91
  self.property_name = attributes[:'property_name']
88
92
  end
@@ -90,10 +94,6 @@ module Hubspot
90
94
  if attributes.key?(:'operator')
91
95
  self.operator = attributes[:'operator']
92
96
  end
93
-
94
- if attributes.key?(:'value')
95
- self.value = attributes[:'value']
96
- end
97
97
  end
98
98
 
99
99
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -116,7 +116,7 @@ module Hubspot
116
116
  def valid?
117
117
  return false if @property_name.nil?
118
118
  return false if @operator.nil?
119
- operator_validator = EnumAttributeValidator.new('String', ["EQ", "NEQ", "LT", "LTE", "GT", "GTE", "BETWEEN", "IN", "NOT_IN", "HAS_PROPERTY", "NOT_HAS_PROPERTY", "CONTAINS_TOKEN", "NOT_CONTAINS_TOKEN"])
119
+ operator_validator = EnumAttributeValidator.new('String', ["EQ", "NEQ", "LT", "LTE", "GT", "GTE", "HAS_PROPERTY", "NOT_HAS_PROPERTY", "CONTAINS_TOKEN", "NOT_CONTAINS_TOKEN"])
120
120
  return false unless operator_validator.valid?(@operator)
121
121
  true
122
122
  end
@@ -124,7 +124,7 @@ module Hubspot
124
124
  # Custom attribute writer method checking allowed values (enum).
125
125
  # @param [Object] operator Object to be assigned
126
126
  def operator=(operator)
127
- validator = EnumAttributeValidator.new('String', ["EQ", "NEQ", "LT", "LTE", "GT", "GTE", "BETWEEN", "IN", "NOT_IN", "HAS_PROPERTY", "NOT_HAS_PROPERTY", "CONTAINS_TOKEN", "NOT_CONTAINS_TOKEN"])
127
+ validator = EnumAttributeValidator.new('String', ["EQ", "NEQ", "LT", "LTE", "GT", "GTE", "HAS_PROPERTY", "NOT_HAS_PROPERTY", "CONTAINS_TOKEN", "NOT_CONTAINS_TOKEN"])
128
128
  unless validator.valid?(operator)
129
129
  fail ArgumentError, "invalid value for \"operator\", must be one of #{validator.allowable_values}."
130
130
  end
@@ -136,9 +136,9 @@ module Hubspot
136
136
  def ==(o)
137
137
  return true if self.equal?(o)
138
138
  self.class == o.class &&
139
+ value == o.value &&
139
140
  property_name == o.property_name &&
140
- operator == o.operator &&
141
- value == o.value
141
+ operator == o.operator
142
142
  end
143
143
 
144
144
  # @see the `==` method
@@ -150,7 +150,7 @@ module Hubspot
150
150
  # Calculates hash code according to all attributes.
151
151
  # @return [Integer] Hash code
152
152
  def hash
153
- [property_name, operator, value].hash
153
+ [value, property_name, operator].hash
154
154
  end
155
155
 
156
156
  # Builds the object from hash
@@ -16,23 +16,23 @@ module Hubspot
16
16
  module Crm
17
17
  module Tickets
18
18
  class SimplePublicObjectBatchInput
19
- attr_accessor :id
20
-
21
19
  attr_accessor :properties
22
20
 
21
+ attr_accessor :id
22
+
23
23
  # Attribute mapping from ruby-style variable name to JSON key.
24
24
  def self.attribute_map
25
25
  {
26
- :'id' => :'id',
27
- :'properties' => :'properties'
26
+ :'properties' => :'properties',
27
+ :'id' => :'id'
28
28
  }
29
29
  end
30
30
 
31
31
  # Attribute type mapping.
32
32
  def self.openapi_types
33
33
  {
34
- :'id' => :'String',
35
- :'properties' => :'Hash<String, String>'
34
+ :'properties' => :'Hash<String, String>',
35
+ :'id' => :'String'
36
36
  }
37
37
  end
38
38
 
@@ -57,37 +57,37 @@ module Hubspot
57
57
  h[k.to_sym] = v
58
58
  }
59
59
 
60
- if attributes.key?(:'id')
61
- self.id = attributes[:'id']
62
- end
63
-
64
60
  if attributes.key?(:'properties')
65
61
  if (value = attributes[:'properties']).is_a?(Hash)
66
62
  self.properties = value
67
63
  end
68
64
  end
65
+
66
+ if attributes.key?(:'id')
67
+ self.id = attributes[:'id']
68
+ end
69
69
  end
70
70
 
71
71
  # Show invalid properties with the reasons. Usually used together with valid?
72
72
  # @return Array for valid properties with the reasons
73
73
  def list_invalid_properties
74
74
  invalid_properties = Array.new
75
- if @id.nil?
76
- invalid_properties.push('invalid value for "id", id cannot be nil.')
77
- end
78
-
79
75
  if @properties.nil?
80
76
  invalid_properties.push('invalid value for "properties", properties cannot be nil.')
81
77
  end
82
78
 
79
+ if @id.nil?
80
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
81
+ end
82
+
83
83
  invalid_properties
84
84
  end
85
85
 
86
86
  # Check to see if the all the properties in the model are valid
87
87
  # @return true if the model is valid
88
88
  def valid?
89
- return false if @id.nil?
90
89
  return false if @properties.nil?
90
+ return false if @id.nil?
91
91
  true
92
92
  end
93
93
 
@@ -96,8 +96,8 @@ module Hubspot
96
96
  def ==(o)
97
97
  return true if self.equal?(o)
98
98
  self.class == o.class &&
99
- id == o.id &&
100
- properties == o.properties
99
+ properties == o.properties &&
100
+ id == o.id
101
101
  end
102
102
 
103
103
  # @see the `==` method
@@ -109,7 +109,7 @@ module Hubspot
109
109
  # Calculates hash code according to all attributes.
110
110
  # @return [Integer] Hash code
111
111
  def hash
112
- [id, properties].hash
112
+ [properties, id].hash
113
113
  end
114
114
 
115
115
  # Builds the object from hash
@@ -194,6 +194,13 @@ module Hubspot
194
194
  # Returns Auth Settings hash for api client.
195
195
  def auth_settings
196
196
  {
197
+ 'developer-hapikey' =>
198
+ {
199
+ type: 'api_key',
200
+ in: 'query',
201
+ key: 'hapikey',
202
+ value: api_key_with_prefix('hapikey')
203
+ },
197
204
  'hapikey' =>
198
205
  {
199
206
  type: 'api_key',
@@ -193,6 +193,13 @@ module Hubspot
193
193
  # Returns Auth Settings hash for api client.
194
194
  def auth_settings
195
195
  {
196
+ 'developer-hapikey' =>
197
+ {
198
+ type: 'api_key',
199
+ in: 'query',
200
+ key: 'hapikey',
201
+ value: api_key_with_prefix('hapikey')
202
+ },
196
203
  'hapikey' =>
197
204
  {
198
205
  type: 'api_key',
@@ -359,6 +359,76 @@ module Hubspot
359
359
  end
360
360
  return data, status_code, headers
361
361
  end
362
+
363
+ # Batch update subscriptions
364
+ # Activates or deactivates specified subscriptions for the given app.
365
+ # @param app_id [Integer] The ID of the target app.
366
+ # @param batch_input_subscription_batch_update_request [BatchInputSubscriptionBatchUpdateRequest] Collection of updated details for the specified subscription.
367
+ # @param [Hash] opts the optional parameters
368
+ # @return [BatchResponseSubscriptionResponse]
369
+ def update_batch(app_id, batch_input_subscription_batch_update_request, opts = {})
370
+ data, _status_code, _headers = update_batch_with_http_info(app_id, batch_input_subscription_batch_update_request, opts)
371
+ data
372
+ end
373
+
374
+ # Batch update subscriptions
375
+ # Activates or deactivates specified subscriptions for the given app.
376
+ # @param app_id [Integer] The ID of the target app.
377
+ # @param batch_input_subscription_batch_update_request [BatchInputSubscriptionBatchUpdateRequest] Collection of updated details for the specified subscription.
378
+ # @param [Hash] opts the optional parameters
379
+ # @return [Array<(BatchResponseSubscriptionResponse, Integer, Hash)>] BatchResponseSubscriptionResponse data, response status code and response headers
380
+ def update_batch_with_http_info(app_id, batch_input_subscription_batch_update_request, opts = {})
381
+ if @api_client.config.debugging
382
+ @api_client.config.logger.debug 'Calling API: SubscriptionsApi.update_batch ...'
383
+ end
384
+ # verify the required parameter 'app_id' is set
385
+ if @api_client.config.client_side_validation && app_id.nil?
386
+ fail ArgumentError, "Missing the required parameter 'app_id' when calling SubscriptionsApi.update_batch"
387
+ end
388
+ # verify the required parameter 'batch_input_subscription_batch_update_request' is set
389
+ if @api_client.config.client_side_validation && batch_input_subscription_batch_update_request.nil?
390
+ fail ArgumentError, "Missing the required parameter 'batch_input_subscription_batch_update_request' when calling SubscriptionsApi.update_batch"
391
+ end
392
+ # resource path
393
+ local_var_path = '/webhooks/v3/{appId}/subscriptions/batch/update'.sub('{' + 'appId' + '}', CGI.escape(app_id.to_s))
394
+
395
+ # query parameters
396
+ query_params = opts[:query_params] || {}
397
+
398
+ # header parameters
399
+ header_params = opts[:header_params] || {}
400
+ # HTTP header 'Accept' (if needed)
401
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', '*/*'])
402
+ # HTTP header 'Content-Type'
403
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
404
+
405
+ # form parameters
406
+ form_params = opts[:form_params] || {}
407
+
408
+ # http body (model)
409
+ post_body = opts[:body] || @api_client.object_to_http_body(batch_input_subscription_batch_update_request)
410
+
411
+ # return_type
412
+ return_type = opts[:return_type] || 'BatchResponseSubscriptionResponse'
413
+
414
+ # auth_names
415
+ auth_names = opts[:auth_names] || ['hapikey']
416
+
417
+ new_options = opts.merge(
418
+ :header_params => header_params,
419
+ :query_params => query_params,
420
+ :form_params => form_params,
421
+ :body => post_body,
422
+ :auth_names => auth_names,
423
+ :return_type => return_type
424
+ )
425
+
426
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
427
+ if @api_client.config.debugging
428
+ @api_client.config.logger.debug "API called: SubscriptionsApi#update_batch\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
429
+ end
430
+ return data, status_code, headers
431
+ end
362
432
  end
363
433
  end
364
434
  end
@@ -193,6 +193,13 @@ module Hubspot
193
193
  # Returns Auth Settings hash for api client.
194
194
  def auth_settings
195
195
  {
196
+ 'developer-hapikey' =>
197
+ {
198
+ type: 'api_key',
199
+ in: 'query',
200
+ key: 'hapikey',
201
+ value: api_key_with_prefix('hapikey')
202
+ },
196
203
  'hapikey' =>
197
204
  {
198
205
  type: 'api_key',
@@ -0,0 +1,215 @@
1
+ =begin
2
+ #Webhooks API
3
+
4
+ #Provides a way for apps to subscribe to certain change events in HubSpot. Once configured, apps will receive event payloads containing details about the changes at a specified target URL. There can only be one target URL for receiving event notifications per app.
5
+
6
+ The version of the OpenAPI document: v3
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.2.3
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module Hubspot
16
+ module Webhooks
17
+ class BatchInputSubscriptionBatchUpdateRequest
18
+ attr_accessor :inputs
19
+
20
+ # Attribute mapping from ruby-style variable name to JSON key.
21
+ def self.attribute_map
22
+ {
23
+ :'inputs' => :'inputs'
24
+ }
25
+ end
26
+
27
+ # Attribute type mapping.
28
+ def self.openapi_types
29
+ {
30
+ :'inputs' => :'Array<SubscriptionBatchUpdateRequest>'
31
+ }
32
+ end
33
+
34
+ # List of attributes with nullable: true
35
+ def self.openapi_nullable
36
+ Set.new([
37
+ ])
38
+ end
39
+
40
+ # Initializes the object
41
+ # @param [Hash] attributes Model attributes in the form of hash
42
+ def initialize(attributes = {})
43
+ if (!attributes.is_a?(Hash))
44
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Hubspot::Webhooks::BatchInputSubscriptionBatchUpdateRequest` initialize method"
45
+ end
46
+
47
+ # check to see if the attribute exists and convert string to symbol for hash key
48
+ attributes = attributes.each_with_object({}) { |(k, v), h|
49
+ if (!self.class.attribute_map.key?(k.to_sym))
50
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Hubspot::Webhooks::BatchInputSubscriptionBatchUpdateRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
51
+ end
52
+ h[k.to_sym] = v
53
+ }
54
+
55
+ if attributes.key?(:'inputs')
56
+ if (value = attributes[:'inputs']).is_a?(Array)
57
+ self.inputs = value
58
+ end
59
+ end
60
+ end
61
+
62
+ # Show invalid properties with the reasons. Usually used together with valid?
63
+ # @return Array for valid properties with the reasons
64
+ def list_invalid_properties
65
+ invalid_properties = Array.new
66
+ if @inputs.nil?
67
+ invalid_properties.push('invalid value for "inputs", inputs cannot be nil.')
68
+ end
69
+
70
+ invalid_properties
71
+ end
72
+
73
+ # Check to see if the all the properties in the model are valid
74
+ # @return true if the model is valid
75
+ def valid?
76
+ return false if @inputs.nil?
77
+ true
78
+ end
79
+
80
+ # Checks equality by comparing each attribute.
81
+ # @param [Object] Object to be compared
82
+ def ==(o)
83
+ return true if self.equal?(o)
84
+ self.class == o.class &&
85
+ inputs == o.inputs
86
+ end
87
+
88
+ # @see the `==` method
89
+ # @param [Object] Object to be compared
90
+ def eql?(o)
91
+ self == o
92
+ end
93
+
94
+ # Calculates hash code according to all attributes.
95
+ # @return [Integer] Hash code
96
+ def hash
97
+ [inputs].hash
98
+ end
99
+
100
+ # Builds the object from hash
101
+ # @param [Hash] attributes Model attributes in the form of hash
102
+ # @return [Object] Returns the model itself
103
+ def self.build_from_hash(attributes)
104
+ new.build_from_hash(attributes)
105
+ end
106
+
107
+ # Builds the object from hash
108
+ # @param [Hash] attributes Model attributes in the form of hash
109
+ # @return [Object] Returns the model itself
110
+ def build_from_hash(attributes)
111
+ return nil unless attributes.is_a?(Hash)
112
+ self.class.openapi_types.each_pair do |key, type|
113
+ if type =~ /\AArray<(.*)>/i
114
+ # check to ensure the input is an array given that the attribute
115
+ # is documented as an array but the input is not
116
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
117
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
118
+ end
119
+ elsif !attributes[self.class.attribute_map[key]].nil?
120
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
121
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
122
+ end
123
+
124
+ self
125
+ end
126
+
127
+ # Deserializes the data based on type
128
+ # @param string type Data type
129
+ # @param string value Value to be deserialized
130
+ # @return [Object] Deserialized data
131
+ def _deserialize(type, value)
132
+ case type.to_sym
133
+ when :DateTime
134
+ DateTime.parse(value)
135
+ when :Date
136
+ Date.parse(value)
137
+ when :String
138
+ value.to_s
139
+ when :Integer
140
+ value.to_i
141
+ when :Float
142
+ value.to_f
143
+ when :Boolean
144
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
145
+ true
146
+ else
147
+ false
148
+ end
149
+ when :Object
150
+ # generic object (usually a Hash), return directly
151
+ value
152
+ when /\AArray<(?<inner_type>.+)>\z/
153
+ inner_type = Regexp.last_match[:inner_type]
154
+ value.map { |v| _deserialize(inner_type, v) }
155
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
156
+ k_type = Regexp.last_match[:k_type]
157
+ v_type = Regexp.last_match[:v_type]
158
+ {}.tap do |hash|
159
+ value.each do |k, v|
160
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
161
+ end
162
+ end
163
+ else # model
164
+ Hubspot::Webhooks.const_get(type).build_from_hash(value)
165
+ end
166
+ end
167
+
168
+ # Returns the string representation of the object
169
+ # @return [String] String presentation of the object
170
+ def to_s
171
+ to_hash.to_s
172
+ end
173
+
174
+ # to_body is an alias to to_hash (backward compatibility)
175
+ # @return [Hash] Returns the object in the form of hash
176
+ def to_body
177
+ to_hash
178
+ end
179
+
180
+ # Returns the object in the form of hash
181
+ # @return [Hash] Returns the object in the form of hash
182
+ def to_hash
183
+ hash = {}
184
+ self.class.attribute_map.each_pair do |attr, param|
185
+ value = self.send(attr)
186
+ if value.nil?
187
+ is_nullable = self.class.openapi_nullable.include?(attr)
188
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
189
+ end
190
+
191
+ hash[param] = _to_hash(value)
192
+ end
193
+ hash
194
+ end
195
+
196
+ # Outputs non-array value in the form of hash
197
+ # For object, use to_hash. Otherwise, just return the value
198
+ # @param [Object] value Any valid value
199
+ # @return [Hash] Returns the value in the form of hash
200
+ def _to_hash(value)
201
+ if value.is_a?(Array)
202
+ value.compact.map { |v| _to_hash(v) }
203
+ elsif value.is_a?(Hash)
204
+ {}.tap do |hash|
205
+ value.each { |k, v| hash[k] = _to_hash(v) }
206
+ end
207
+ elsif value.respond_to? :to_hash
208
+ value.to_hash
209
+ else
210
+ value
211
+ end
212
+ end
213
+ end
214
+ end
215
+ end