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
@@ -23,23 +23,27 @@ module Hubspot
23
23
  end
24
24
  # Filter, Sort, and Search CRM Objects
25
25
  # Filter, Sort, and Search CRM Objects
26
+ # @param public_object_search_request [PublicObjectSearchRequest]
26
27
  # @param [Hash] opts the optional parameters
27
- # @option opts [PublicObjectSearchRequest] :public_object_search_request
28
28
  # @return [CollectionResponseWithTotalSimplePublicObject]
29
- def do_search(opts = {})
30
- data, _status_code, _headers = do_search_with_http_info(opts)
29
+ def do_search(public_object_search_request, opts = {})
30
+ data, _status_code, _headers = do_search_with_http_info(public_object_search_request, opts)
31
31
  data
32
32
  end
33
33
 
34
34
  # Filter, Sort, and Search CRM Objects
35
35
  # Filter, Sort, and Search CRM Objects
36
+ # @param public_object_search_request [PublicObjectSearchRequest]
36
37
  # @param [Hash] opts the optional parameters
37
- # @option opts [PublicObjectSearchRequest] :public_object_search_request
38
38
  # @return [Array<(CollectionResponseWithTotalSimplePublicObject, Integer, Hash)>] CollectionResponseWithTotalSimplePublicObject data, response status code and response headers
39
- def do_search_with_http_info(opts = {})
39
+ def do_search_with_http_info(public_object_search_request, opts = {})
40
40
  if @api_client.config.debugging
41
41
  @api_client.config.logger.debug 'Calling API: SearchApi.do_search ...'
42
42
  end
43
+ # verify the required parameter 'public_object_search_request' is set
44
+ if @api_client.config.client_side_validation && public_object_search_request.nil?
45
+ fail ArgumentError, "Missing the required parameter 'public_object_search_request' when calling SearchApi.do_search"
46
+ end
43
47
  # resource path
44
48
  local_var_path = '/crm/v3/objects/contacts/search'
45
49
 
@@ -57,7 +61,7 @@ module Hubspot
57
61
  form_params = opts[:form_params] || {}
58
62
 
59
63
  # http body (model)
60
- post_body = opts[:body] || @api_client.object_to_http_body(opts[:'public_object_search_request'])
64
+ post_body = opts[:body] || @api_client.object_to_http_body(public_object_search_request)
61
65
 
62
66
  # return_type
63
67
  return_type = opts[:return_type] || 'CollectionResponseWithTotalSimplePublicObject'
@@ -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',
@@ -16,27 +16,27 @@ module Hubspot
16
16
  module Crm
17
17
  module Contacts
18
18
  class BatchReadInputSimplePublicObjectId
19
+ attr_accessor :inputs
20
+
19
21
  attr_accessor :properties
20
22
 
21
23
  attr_accessor :id_property
22
24
 
23
- attr_accessor :inputs
24
-
25
25
  # Attribute mapping from ruby-style variable name to JSON key.
26
26
  def self.attribute_map
27
27
  {
28
+ :'inputs' => :'inputs',
28
29
  :'properties' => :'properties',
29
- :'id_property' => :'idProperty',
30
- :'inputs' => :'inputs'
30
+ :'id_property' => :'idProperty'
31
31
  }
32
32
  end
33
33
 
34
34
  # Attribute type mapping.
35
35
  def self.openapi_types
36
36
  {
37
+ :'inputs' => :'Array<SimplePublicObjectId>',
37
38
  :'properties' => :'Array<String>',
38
- :'id_property' => :'String',
39
- :'inputs' => :'Array<SimplePublicObjectId>'
39
+ :'id_property' => :'String'
40
40
  }
41
41
  end
42
42
 
@@ -61,6 +61,12 @@ module Hubspot
61
61
  h[k.to_sym] = v
62
62
  }
63
63
 
64
+ if attributes.key?(:'inputs')
65
+ if (value = attributes[:'inputs']).is_a?(Array)
66
+ self.inputs = value
67
+ end
68
+ end
69
+
64
70
  if attributes.key?(:'properties')
65
71
  if (value = attributes[:'properties']).is_a?(Array)
66
72
  self.properties = value
@@ -70,34 +76,28 @@ module Hubspot
70
76
  if attributes.key?(:'id_property')
71
77
  self.id_property = attributes[:'id_property']
72
78
  end
73
-
74
- if attributes.key?(:'inputs')
75
- if (value = attributes[:'inputs']).is_a?(Array)
76
- self.inputs = value
77
- end
78
- end
79
79
  end
80
80
 
81
81
  # Show invalid properties with the reasons. Usually used together with valid?
82
82
  # @return Array for valid properties with the reasons
83
83
  def list_invalid_properties
84
84
  invalid_properties = Array.new
85
- if @properties.nil?
86
- invalid_properties.push('invalid value for "properties", properties cannot be nil.')
87
- end
88
-
89
85
  if @inputs.nil?
90
86
  invalid_properties.push('invalid value for "inputs", inputs cannot be nil.')
91
87
  end
92
88
 
89
+ if @properties.nil?
90
+ invalid_properties.push('invalid value for "properties", properties cannot be nil.')
91
+ end
92
+
93
93
  invalid_properties
94
94
  end
95
95
 
96
96
  # Check to see if the all the properties in the model are valid
97
97
  # @return true if the model is valid
98
98
  def valid?
99
- return false if @properties.nil?
100
99
  return false if @inputs.nil?
100
+ return false if @properties.nil?
101
101
  true
102
102
  end
103
103
 
@@ -106,9 +106,9 @@ module Hubspot
106
106
  def ==(o)
107
107
  return true if self.equal?(o)
108
108
  self.class == o.class &&
109
+ inputs == o.inputs &&
109
110
  properties == o.properties &&
110
- id_property == o.id_property &&
111
- inputs == o.inputs
111
+ id_property == o.id_property
112
112
  end
113
113
 
114
114
  # @see the `==` method
@@ -120,7 +120,7 @@ module Hubspot
120
120
  # Calculates hash code according to all attributes.
121
121
  # @return [Integer] Hash code
122
122
  def hash
123
- [properties, id_property, inputs].hash
123
+ [inputs, properties, id_property].hash
124
124
  end
125
125
 
126
126
  # Builds the object from hash
@@ -16,20 +16,18 @@ module Hubspot
16
16
  module Crm
17
17
  module Contacts
18
18
  class BatchResponseSimplePublicObject
19
- attr_accessor :results
20
-
21
- attr_accessor :num_errors
22
-
23
- attr_accessor :errors
24
-
25
19
  attr_accessor :status
26
20
 
21
+ attr_accessor :results
22
+
27
23
  attr_accessor :requested_at
28
24
 
29
25
  attr_accessor :started_at
30
26
 
31
27
  attr_accessor :completed_at
32
28
 
29
+ attr_accessor :links
30
+
33
31
  class EnumAttributeValidator
34
32
  attr_reader :datatype
35
33
  attr_reader :allowable_values
@@ -55,26 +53,24 @@ module Hubspot
55
53
  # Attribute mapping from ruby-style variable name to JSON key.
56
54
  def self.attribute_map
57
55
  {
58
- :'results' => :'results',
59
- :'num_errors' => :'numErrors',
60
- :'errors' => :'errors',
61
56
  :'status' => :'status',
57
+ :'results' => :'results',
62
58
  :'requested_at' => :'requestedAt',
63
59
  :'started_at' => :'startedAt',
64
- :'completed_at' => :'completedAt'
60
+ :'completed_at' => :'completedAt',
61
+ :'links' => :'links'
65
62
  }
66
63
  end
67
64
 
68
65
  # Attribute type mapping.
69
66
  def self.openapi_types
70
67
  {
71
- :'results' => :'Array<SimplePublicObject>',
72
- :'num_errors' => :'Integer',
73
- :'errors' => :'Array<Error>',
74
68
  :'status' => :'String',
69
+ :'results' => :'Array<SimplePublicObject>',
75
70
  :'requested_at' => :'DateTime',
76
71
  :'started_at' => :'DateTime',
77
- :'completed_at' => :'DateTime'
72
+ :'completed_at' => :'DateTime',
73
+ :'links' => :'Hash<String, String>'
78
74
  }
79
75
  end
80
76
 
@@ -99,26 +95,16 @@ module Hubspot
99
95
  h[k.to_sym] = v
100
96
  }
101
97
 
98
+ if attributes.key?(:'status')
99
+ self.status = attributes[:'status']
100
+ end
101
+
102
102
  if attributes.key?(:'results')
103
103
  if (value = attributes[:'results']).is_a?(Array)
104
104
  self.results = value
105
105
  end
106
106
  end
107
107
 
108
- if attributes.key?(:'num_errors')
109
- self.num_errors = attributes[:'num_errors']
110
- end
111
-
112
- if attributes.key?(:'errors')
113
- if (value = attributes[:'errors']).is_a?(Array)
114
- self.errors = value
115
- end
116
- end
117
-
118
- if attributes.key?(:'status')
119
- self.status = attributes[:'status']
120
- end
121
-
122
108
  if attributes.key?(:'requested_at')
123
109
  self.requested_at = attributes[:'requested_at']
124
110
  end
@@ -130,20 +116,26 @@ module Hubspot
130
116
  if attributes.key?(:'completed_at')
131
117
  self.completed_at = attributes[:'completed_at']
132
118
  end
119
+
120
+ if attributes.key?(:'links')
121
+ if (value = attributes[:'links']).is_a?(Hash)
122
+ self.links = value
123
+ end
124
+ end
133
125
  end
134
126
 
135
127
  # Show invalid properties with the reasons. Usually used together with valid?
136
128
  # @return Array for valid properties with the reasons
137
129
  def list_invalid_properties
138
130
  invalid_properties = Array.new
139
- if @results.nil?
140
- invalid_properties.push('invalid value for "results", results cannot be nil.')
141
- end
142
-
143
131
  if @status.nil?
144
132
  invalid_properties.push('invalid value for "status", status cannot be nil.')
145
133
  end
146
134
 
135
+ if @results.nil?
136
+ invalid_properties.push('invalid value for "results", results cannot be nil.')
137
+ end
138
+
147
139
  if @started_at.nil?
148
140
  invalid_properties.push('invalid value for "started_at", started_at cannot be nil.')
149
141
  end
@@ -158,10 +150,10 @@ module Hubspot
158
150
  # Check to see if the all the properties in the model are valid
159
151
  # @return true if the model is valid
160
152
  def valid?
161
- return false if @results.nil?
162
153
  return false if @status.nil?
163
154
  status_validator = EnumAttributeValidator.new('String', ["PENDING", "PROCESSING", "CANCELED", "COMPLETE"])
164
155
  return false unless status_validator.valid?(@status)
156
+ return false if @results.nil?
165
157
  return false if @started_at.nil?
166
158
  return false if @completed_at.nil?
167
159
  true
@@ -182,13 +174,12 @@ module Hubspot
182
174
  def ==(o)
183
175
  return true if self.equal?(o)
184
176
  self.class == o.class &&
185
- results == o.results &&
186
- num_errors == o.num_errors &&
187
- errors == o.errors &&
188
177
  status == o.status &&
178
+ results == o.results &&
189
179
  requested_at == o.requested_at &&
190
180
  started_at == o.started_at &&
191
- completed_at == o.completed_at
181
+ completed_at == o.completed_at &&
182
+ links == o.links
192
183
  end
193
184
 
194
185
  # @see the `==` method
@@ -200,7 +191,7 @@ module Hubspot
200
191
  # Calculates hash code according to all attributes.
201
192
  # @return [Integer] Hash code
202
193
  def hash
203
- [results, num_errors, errors, status, requested_at, started_at, completed_at].hash
194
+ [status, results, requested_at, started_at, completed_at, links].hash
204
195
  end
205
196
 
206
197
  # Builds the object from hash
@@ -0,0 +1,333 @@
1
+ =begin
2
+ #Contacts
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
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 Crm
17
+ module Contacts
18
+ class BatchResponseSimplePublicObjectWithErrors
19
+ attr_accessor :status
20
+
21
+ attr_accessor :results
22
+
23
+ attr_accessor :num_errors
24
+
25
+ attr_accessor :errors
26
+
27
+ attr_accessor :requested_at
28
+
29
+ attr_accessor :started_at
30
+
31
+ attr_accessor :completed_at
32
+
33
+ attr_accessor :links
34
+
35
+ class EnumAttributeValidator
36
+ attr_reader :datatype
37
+ attr_reader :allowable_values
38
+
39
+ def initialize(datatype, allowable_values)
40
+ @allowable_values = allowable_values.map do |value|
41
+ case datatype.to_s
42
+ when /Integer/i
43
+ value.to_i
44
+ when /Float/i
45
+ value.to_f
46
+ else
47
+ value
48
+ end
49
+ end
50
+ end
51
+
52
+ def valid?(value)
53
+ !value || allowable_values.include?(value)
54
+ end
55
+ end
56
+
57
+ # Attribute mapping from ruby-style variable name to JSON key.
58
+ def self.attribute_map
59
+ {
60
+ :'status' => :'status',
61
+ :'results' => :'results',
62
+ :'num_errors' => :'numErrors',
63
+ :'errors' => :'errors',
64
+ :'requested_at' => :'requestedAt',
65
+ :'started_at' => :'startedAt',
66
+ :'completed_at' => :'completedAt',
67
+ :'links' => :'links'
68
+ }
69
+ end
70
+
71
+ # Attribute type mapping.
72
+ def self.openapi_types
73
+ {
74
+ :'status' => :'String',
75
+ :'results' => :'Array<SimplePublicObject>',
76
+ :'num_errors' => :'Integer',
77
+ :'errors' => :'Array<Error>',
78
+ :'requested_at' => :'DateTime',
79
+ :'started_at' => :'DateTime',
80
+ :'completed_at' => :'DateTime',
81
+ :'links' => :'Hash<String, String>'
82
+ }
83
+ end
84
+
85
+ # List of attributes with nullable: true
86
+ def self.openapi_nullable
87
+ Set.new([
88
+ ])
89
+ end
90
+
91
+ # Initializes the object
92
+ # @param [Hash] attributes Model attributes in the form of hash
93
+ def initialize(attributes = {})
94
+ if (!attributes.is_a?(Hash))
95
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Hubspot::Crm::Contacts::BatchResponseSimplePublicObjectWithErrors` initialize method"
96
+ end
97
+
98
+ # check to see if the attribute exists and convert string to symbol for hash key
99
+ attributes = attributes.each_with_object({}) { |(k, v), h|
100
+ if (!self.class.attribute_map.key?(k.to_sym))
101
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Hubspot::Crm::Contacts::BatchResponseSimplePublicObjectWithErrors`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
102
+ end
103
+ h[k.to_sym] = v
104
+ }
105
+
106
+ if attributes.key?(:'status')
107
+ self.status = attributes[:'status']
108
+ end
109
+
110
+ if attributes.key?(:'results')
111
+ if (value = attributes[:'results']).is_a?(Array)
112
+ self.results = value
113
+ end
114
+ end
115
+
116
+ if attributes.key?(:'num_errors')
117
+ self.num_errors = attributes[:'num_errors']
118
+ end
119
+
120
+ if attributes.key?(:'errors')
121
+ if (value = attributes[:'errors']).is_a?(Array)
122
+ self.errors = value
123
+ end
124
+ end
125
+
126
+ if attributes.key?(:'requested_at')
127
+ self.requested_at = attributes[:'requested_at']
128
+ end
129
+
130
+ if attributes.key?(:'started_at')
131
+ self.started_at = attributes[:'started_at']
132
+ end
133
+
134
+ if attributes.key?(:'completed_at')
135
+ self.completed_at = attributes[:'completed_at']
136
+ end
137
+
138
+ if attributes.key?(:'links')
139
+ if (value = attributes[:'links']).is_a?(Hash)
140
+ self.links = value
141
+ end
142
+ end
143
+ end
144
+
145
+ # Show invalid properties with the reasons. Usually used together with valid?
146
+ # @return Array for valid properties with the reasons
147
+ def list_invalid_properties
148
+ invalid_properties = Array.new
149
+ if @status.nil?
150
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
151
+ end
152
+
153
+ if @results.nil?
154
+ invalid_properties.push('invalid value for "results", results cannot be nil.')
155
+ end
156
+
157
+ if @started_at.nil?
158
+ invalid_properties.push('invalid value for "started_at", started_at cannot be nil.')
159
+ end
160
+
161
+ if @completed_at.nil?
162
+ invalid_properties.push('invalid value for "completed_at", completed_at cannot be nil.')
163
+ end
164
+
165
+ invalid_properties
166
+ end
167
+
168
+ # Check to see if the all the properties in the model are valid
169
+ # @return true if the model is valid
170
+ def valid?
171
+ return false if @status.nil?
172
+ status_validator = EnumAttributeValidator.new('String', ["PENDING", "PROCESSING", "CANCELED", "COMPLETE"])
173
+ return false unless status_validator.valid?(@status)
174
+ return false if @results.nil?
175
+ return false if @started_at.nil?
176
+ return false if @completed_at.nil?
177
+ true
178
+ end
179
+
180
+ # Custom attribute writer method checking allowed values (enum).
181
+ # @param [Object] status Object to be assigned
182
+ def status=(status)
183
+ validator = EnumAttributeValidator.new('String', ["PENDING", "PROCESSING", "CANCELED", "COMPLETE"])
184
+ unless validator.valid?(status)
185
+ fail ArgumentError, "invalid value for \"status\", must be one of #{validator.allowable_values}."
186
+ end
187
+ @status = status
188
+ end
189
+
190
+ # Checks equality by comparing each attribute.
191
+ # @param [Object] Object to be compared
192
+ def ==(o)
193
+ return true if self.equal?(o)
194
+ self.class == o.class &&
195
+ status == o.status &&
196
+ results == o.results &&
197
+ num_errors == o.num_errors &&
198
+ errors == o.errors &&
199
+ requested_at == o.requested_at &&
200
+ started_at == o.started_at &&
201
+ completed_at == o.completed_at &&
202
+ links == o.links
203
+ end
204
+
205
+ # @see the `==` method
206
+ # @param [Object] Object to be compared
207
+ def eql?(o)
208
+ self == o
209
+ end
210
+
211
+ # Calculates hash code according to all attributes.
212
+ # @return [Integer] Hash code
213
+ def hash
214
+ [status, results, num_errors, errors, requested_at, started_at, completed_at, links].hash
215
+ end
216
+
217
+ # Builds the object from hash
218
+ # @param [Hash] attributes Model attributes in the form of hash
219
+ # @return [Object] Returns the model itself
220
+ def self.build_from_hash(attributes)
221
+ new.build_from_hash(attributes)
222
+ end
223
+
224
+ # Builds the object from hash
225
+ # @param [Hash] attributes Model attributes in the form of hash
226
+ # @return [Object] Returns the model itself
227
+ def build_from_hash(attributes)
228
+ return nil unless attributes.is_a?(Hash)
229
+ self.class.openapi_types.each_pair do |key, type|
230
+ if type =~ /\AArray<(.*)>/i
231
+ # check to ensure the input is an array given that the attribute
232
+ # is documented as an array but the input is not
233
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
234
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
235
+ end
236
+ elsif !attributes[self.class.attribute_map[key]].nil?
237
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
238
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
239
+ end
240
+
241
+ self
242
+ end
243
+
244
+ # Deserializes the data based on type
245
+ # @param string type Data type
246
+ # @param string value Value to be deserialized
247
+ # @return [Object] Deserialized data
248
+ def _deserialize(type, value)
249
+ case type.to_sym
250
+ when :DateTime
251
+ DateTime.parse(value)
252
+ when :Date
253
+ Date.parse(value)
254
+ when :String
255
+ value.to_s
256
+ when :Integer
257
+ value.to_i
258
+ when :Float
259
+ value.to_f
260
+ when :Boolean
261
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
262
+ true
263
+ else
264
+ false
265
+ end
266
+ when :Object
267
+ # generic object (usually a Hash), return directly
268
+ value
269
+ when /\AArray<(?<inner_type>.+)>\z/
270
+ inner_type = Regexp.last_match[:inner_type]
271
+ value.map { |v| _deserialize(inner_type, v) }
272
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
273
+ k_type = Regexp.last_match[:k_type]
274
+ v_type = Regexp.last_match[:v_type]
275
+ {}.tap do |hash|
276
+ value.each do |k, v|
277
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
278
+ end
279
+ end
280
+ else # model
281
+ Hubspot::Crm::Contacts.const_get(type).build_from_hash(value)
282
+ end
283
+ end
284
+
285
+ # Returns the string representation of the object
286
+ # @return [String] String presentation of the object
287
+ def to_s
288
+ to_hash.to_s
289
+ end
290
+
291
+ # to_body is an alias to to_hash (backward compatibility)
292
+ # @return [Hash] Returns the object in the form of hash
293
+ def to_body
294
+ to_hash
295
+ end
296
+
297
+ # Returns the object in the form of hash
298
+ # @return [Hash] Returns the object in the form of hash
299
+ def to_hash
300
+ hash = {}
301
+ self.class.attribute_map.each_pair do |attr, param|
302
+ value = self.send(attr)
303
+ if value.nil?
304
+ is_nullable = self.class.openapi_nullable.include?(attr)
305
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
306
+ end
307
+
308
+ hash[param] = _to_hash(value)
309
+ end
310
+ hash
311
+ end
312
+
313
+ # Outputs non-array value in the form of hash
314
+ # For object, use to_hash. Otherwise, just return the value
315
+ # @param [Object] value Any valid value
316
+ # @return [Hash] Returns the value in the form of hash
317
+ def _to_hash(value)
318
+ if value.is_a?(Array)
319
+ value.compact.map { |v| _to_hash(v) }
320
+ elsif value.is_a?(Hash)
321
+ {}.tap do |hash|
322
+ value.each { |k, v| hash[k] = _to_hash(v) }
323
+ end
324
+ elsif value.respond_to? :to_hash
325
+ value.to_hash
326
+ else
327
+ value
328
+ end
329
+ end
330
+ end
331
+ end
332
+ end
333
+ end