reacon-sdk 0.1.0.beta.4

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 (645) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +202 -0
  4. data/README.md +910 -0
  5. data/Rakefile +10 -0
  6. data/lib/reacon-sdk/api/companies_api.rb +120 -0
  7. data/lib/reacon-sdk/api/domains_api.rb +211 -0
  8. data/lib/reacon-sdk/api/emails_api.rb +463 -0
  9. data/lib/reacon-sdk/api/identity_api.rb +79 -0
  10. data/lib/reacon-sdk/api/insights_api.rb +85 -0
  11. data/lib/reacon-sdk/api/integrations_api.rb +3193 -0
  12. data/lib/reacon-sdk/api/leads_api.rb +499 -0
  13. data/lib/reacon-sdk/api/mail_api.rb +6680 -0
  14. data/lib/reacon-sdk/api/names_api.rb +176 -0
  15. data/lib/reacon-sdk/api/product_tools_api.rb +101 -0
  16. data/lib/reacon-sdk/api/stats_api.rb +79 -0
  17. data/lib/reacon-sdk/api/verification_api.rb +168 -0
  18. data/lib/reacon-sdk/api/webhooks_api.rb +300 -0
  19. data/lib/reacon-sdk/api_client.rb +444 -0
  20. data/lib/reacon-sdk/api_error.rb +58 -0
  21. data/lib/reacon-sdk/api_model_base.rb +88 -0
  22. data/lib/reacon-sdk/configuration.rb +399 -0
  23. data/lib/reacon-sdk/http_policy.rb +157 -0
  24. data/lib/reacon-sdk/models/airtable_mapping_options_response.rb +164 -0
  25. data/lib/reacon-sdk/models/airtable_mapping_options_response_options.rb +220 -0
  26. data/lib/reacon-sdk/models/airtable_mapping_options_response_options_bases_inner.rb +190 -0
  27. data/lib/reacon-sdk/models/airtable_mapping_options_response_options_tables_inner.rb +218 -0
  28. data/lib/reacon-sdk/models/airtable_mapping_options_response_options_tables_inner_fields_inner.rb +190 -0
  29. data/lib/reacon-sdk/models/api_key_identity.rb +190 -0
  30. data/lib/reacon-sdk/models/automation_hook_created.rb +269 -0
  31. data/lib/reacon-sdk/models/batch_verification_error.rb +225 -0
  32. data/lib/reacon-sdk/models/batch_verification_item.rb +211 -0
  33. data/lib/reacon-sdk/models/batch_verification_request.rb +227 -0
  34. data/lib/reacon-sdk/models/batch_verification_request_only_if_free.rb +103 -0
  35. data/lib/reacon-sdk/models/batch_verification_response.rb +192 -0
  36. data/lib/reacon-sdk/models/bind_typeform_form_request.rb +341 -0
  37. data/lib/reacon-sdk/models/bind_webflow_form_request.rb +304 -0
  38. data/lib/reacon-sdk/models/capability_domain_search.rb +227 -0
  39. data/lib/reacon-sdk/models/capability_domain_search_contacts_inner.rb +217 -0
  40. data/lib/reacon-sdk/models/capability_email_found.rb +242 -0
  41. data/lib/reacon-sdk/models/capability_email_verified.rb +294 -0
  42. data/lib/reacon-sdk/models/capability_email_verified_details.rb +268 -0
  43. data/lib/reacon-sdk/models/coda_table_inspection_response.rb +164 -0
  44. data/lib/reacon-sdk/models/coda_table_inspection_response_inspection.rb +192 -0
  45. data/lib/reacon-sdk/models/company_context_address.rb +201 -0
  46. data/lib/reacon-sdk/models/company_context_job.rb +290 -0
  47. data/lib/reacon-sdk/models/company_context_source.rb +200 -0
  48. data/lib/reacon-sdk/models/company_list.rb +166 -0
  49. data/lib/reacon-sdk/models/company_list_results_inner.rb +357 -0
  50. data/lib/reacon-sdk/models/company_list_results_inner_addresses_inner.rb +198 -0
  51. data/lib/reacon-sdk/models/configure_airtable_mapping_request.rb +164 -0
  52. data/lib/reacon-sdk/models/configure_coda_request.rb +405 -0
  53. data/lib/reacon-sdk/models/configure_coda_request_mapping.rb +370 -0
  54. data/lib/reacon-sdk/models/configure_crm_mapping_request.rb +164 -0
  55. data/lib/reacon-sdk/models/configure_crm_sync_request.rb +164 -0
  56. data/lib/reacon-sdk/models/configure_crm_sync_request_configuration.rb +176 -0
  57. data/lib/reacon-sdk/models/configure_crm_sync_request_configuration_hubspot.rb +176 -0
  58. data/lib/reacon-sdk/models/configure_crm_sync_request_configuration_hubspot_deal.rb +200 -0
  59. data/lib/reacon-sdk/models/configure_crm_sync_request_configuration_policy.rb +261 -0
  60. data/lib/reacon-sdk/models/configure_freshsales_request.rb +313 -0
  61. data/lib/reacon-sdk/models/configure_notification_routes_request.rb +183 -0
  62. data/lib/reacon-sdk/models/configure_slack_destination_request.rb +175 -0
  63. data/lib/reacon-sdk/models/configure_teams_workflow_request.rb +269 -0
  64. data/lib/reacon-sdk/models/configure_typeform_form_request.rb +424 -0
  65. data/lib/reacon-sdk/models/configure_warehouse_request.rb +345 -0
  66. data/lib/reacon-sdk/models/configure_webflow_form_request.rb +431 -0
  67. data/lib/reacon-sdk/models/create_automation_hook_request.rb +232 -0
  68. data/lib/reacon-sdk/models/create_lead_request.rb +193 -0
  69. data/lib/reacon-sdk/models/create_lead_request_company.rb +251 -0
  70. data/lib/reacon-sdk/models/create_lead_request_person.rb +208 -0
  71. data/lib/reacon-sdk/models/create_lead_response.rb +164 -0
  72. data/lib/reacon-sdk/models/create_lead_response_lead.rb +216 -0
  73. data/lib/reacon-sdk/models/create_segment_installation_request.rb +182 -0
  74. data/lib/reacon-sdk/models/crm_mapping_options_response.rb +164 -0
  75. data/lib/reacon-sdk/models/crm_mapping_options_response_options.rb +192 -0
  76. data/lib/reacon-sdk/models/crm_mapping_options_response_options_objects_inner.rb +219 -0
  77. data/lib/reacon-sdk/models/crm_remote_field.rb +294 -0
  78. data/lib/reacon-sdk/models/crm_sync_configuration.rb +176 -0
  79. data/lib/reacon-sdk/models/crm_sync_configuration_hubspot.rb +176 -0
  80. data/lib/reacon-sdk/models/crm_sync_configuration_hubspot_deal.rb +200 -0
  81. data/lib/reacon-sdk/models/crm_sync_configuration_policy.rb +244 -0
  82. data/lib/reacon-sdk/models/crm_sync_configuration_response.rb +190 -0
  83. data/lib/reacon-sdk/models/delete_email_response.rb +164 -0
  84. data/lib/reacon-sdk/models/delete_lead_response.rb +164 -0
  85. data/lib/reacon-sdk/models/domain_catch_all.rb +150 -0
  86. data/lib/reacon-sdk/models/domain_company_context.rb +176 -0
  87. data/lib/reacon-sdk/models/domain_company_context_company.rb +465 -0
  88. data/lib/reacon-sdk/models/domain_counts.rb +216 -0
  89. data/lib/reacon-sdk/models/email_mention.rb +294 -0
  90. data/lib/reacon-sdk/models/email_mentions_page.rb +178 -0
  91. data/lib/reacon-sdk/models/email_not_found_error.rb +164 -0
  92. data/lib/reacon-sdk/models/email_not_found_error_error.rb +190 -0
  93. data/lib/reacon-sdk/models/email_page.rb +178 -0
  94. data/lib/reacon-sdk/models/email_page_results_inner.rb +464 -0
  95. data/lib/reacon-sdk/models/email_page_results_inner_sources_inner.rb +294 -0
  96. data/lib/reacon-sdk/models/email_reveal_response.rb +192 -0
  97. data/lib/reacon-sdk/models/email_reveal_response_profile.rb +399 -0
  98. data/lib/reacon-sdk/models/error_response.rb +238 -0
  99. data/lib/reacon-sdk/models/excel_workbook_inspection_response.rb +164 -0
  100. data/lib/reacon-sdk/models/excel_workbook_inspection_response_inspection.rb +324 -0
  101. data/lib/reacon-sdk/models/execute_integration_capability_request.rb +262 -0
  102. data/lib/reacon-sdk/models/export_leads_request.rb +240 -0
  103. data/lib/reacon-sdk/models/export_leads_request_selection_scopes_inner.rb +236 -0
  104. data/lib/reacon-sdk/models/get_lead_response.rb +164 -0
  105. data/lib/reacon-sdk/models/get_lead_response_lead.rb +357 -0
  106. data/lib/reacon-sdk/models/get_lead_response_lead_company.rb +251 -0
  107. data/lib/reacon-sdk/models/get_lead_response_lead_sync.rb +162 -0
  108. data/lib/reacon-sdk/models/get_lead_response_lead_verification.rb +162 -0
  109. data/lib/reacon-sdk/models/google_sheet_inspection_response.rb +164 -0
  110. data/lib/reacon-sdk/models/google_sheet_inspection_response_inspection.rb +298 -0
  111. data/lib/reacon-sdk/models/hub_spot_configuration_options_response.rb +164 -0
  112. data/lib/reacon-sdk/models/hub_spot_configuration_options_response_options.rb +194 -0
  113. data/lib/reacon-sdk/models/hub_spot_configuration_options_response_options_owners_inner.rb +202 -0
  114. data/lib/reacon-sdk/models/hub_spot_configuration_options_response_options_pipelines_inner.rb +218 -0
  115. data/lib/reacon-sdk/models/hub_spot_configuration_options_response_options_pipelines_inner_stages_inner.rb +225 -0
  116. data/lib/reacon-sdk/models/insight_address.rb +230 -0
  117. data/lib/reacon-sdk/models/insight_address_entry.rb +200 -0
  118. data/lib/reacon-sdk/models/insight_attribute.rb +199 -0
  119. data/lib/reacon-sdk/models/insight_error_event.rb +217 -0
  120. data/lib/reacon-sdk/models/insight_evidence.rb +208 -0
  121. data/lib/reacon-sdk/models/insight_final_event.rb +217 -0
  122. data/lib/reacon-sdk/models/insight_geo.rb +156 -0
  123. data/lib/reacon-sdk/models/insight_identifier.rb +273 -0
  124. data/lib/reacon-sdk/models/insight_jurisdiction.rb +165 -0
  125. data/lib/reacon-sdk/models/insight_mention.rb +312 -0
  126. data/lib/reacon-sdk/models/insight_mention_error_event.rb +243 -0
  127. data/lib/reacon-sdk/models/insight_mention_extracted_event.rb +347 -0
  128. data/lib/reacon-sdk/models/insight_mention_insight_event.rb +243 -0
  129. data/lib/reacon-sdk/models/insight_office.rb +236 -0
  130. data/lib/reacon-sdk/models/insight_organization.rb +176 -0
  131. data/lib/reacon-sdk/models/insight_phone.rb +192 -0
  132. data/lib/reacon-sdk/models/insight_platform_detected_event.rb +217 -0
  133. data/lib/reacon-sdk/models/insight_platform_progress_event.rb +217 -0
  134. data/lib/reacon-sdk/models/insight_platform_scan.rb +226 -0
  135. data/lib/reacon-sdk/models/insight_platform_scan_event.rb +217 -0
  136. data/lib/reacon-sdk/models/insight_role.rb +192 -0
  137. data/lib/reacon-sdk/models/insight_social_profile.rb +165 -0
  138. data/lib/reacon-sdk/models/insight_source.rb +176 -0
  139. data/lib/reacon-sdk/models/insight_started_event.rb +217 -0
  140. data/lib/reacon-sdk/models/insights_response.rb +246 -0
  141. data/lib/reacon-sdk/models/inspect_coda_table_request.rb +292 -0
  142. data/lib/reacon-sdk/models/inspect_excel_workbook_request.rb +281 -0
  143. data/lib/reacon-sdk/models/inspect_google_sheet_request.rb +288 -0
  144. data/lib/reacon-sdk/models/integration_capability_response.rb +374 -0
  145. data/lib/reacon-sdk/models/integration_capability_response_output.rb +107 -0
  146. data/lib/reacon-sdk/models/integration_connection.rb +456 -0
  147. data/lib/reacon-sdk/models/integration_connection_health.rb +213 -0
  148. data/lib/reacon-sdk/models/integration_connection_list.rb +166 -0
  149. data/lib/reacon-sdk/models/integration_connection_response.rb +164 -0
  150. data/lib/reacon-sdk/models/integration_connection_state_response.rb +199 -0
  151. data/lib/reacon-sdk/models/integration_connection_test.rb +226 -0
  152. data/lib/reacon-sdk/models/integration_connection_test_response.rb +190 -0
  153. data/lib/reacon-sdk/models/integration_form_connection_response.rb +190 -0
  154. data/lib/reacon-sdk/models/integration_job.rb +518 -0
  155. data/lib/reacon-sdk/models/integration_job_cancellation.rb +191 -0
  156. data/lib/reacon-sdk/models/integration_job_counters.rb +278 -0
  157. data/lib/reacon-sdk/models/integration_job_page.rb +178 -0
  158. data/lib/reacon-sdk/models/integration_job_response.rb +164 -0
  159. data/lib/reacon-sdk/models/integration_lead_export_response.rb +199 -0
  160. data/lib/reacon-sdk/models/integration_o_auth_start_response.rb +190 -0
  161. data/lib/reacon-sdk/models/integration_provider_list.rb +166 -0
  162. data/lib/reacon-sdk/models/integration_provider_list_providers_inner.rb +320 -0
  163. data/lib/reacon-sdk/models/integration_provider_list_providers_inner_connectability.rb +191 -0
  164. data/lib/reacon-sdk/models/integration_provider_list_providers_inner_readiness.rb +273 -0
  165. data/lib/reacon-sdk/models/lead_export_inner.rb +347 -0
  166. data/lib/reacon-sdk/models/lead_export_inner_company.rb +174 -0
  167. data/lib/reacon-sdk/models/lead_export_inner_person.rb +208 -0
  168. data/lib/reacon-sdk/models/lead_export_too_large_error.rb +216 -0
  169. data/lib/reacon-sdk/models/lead_page.rb +237 -0
  170. data/lib/reacon-sdk/models/lead_page_results_inner.rb +357 -0
  171. data/lib/reacon-sdk/models/lead_page_results_inner_company.rb +251 -0
  172. data/lib/reacon-sdk/models/link_mcp_identity_request.rb +181 -0
  173. data/lib/reacon-sdk/models/mail_cadence_campaign_record.rb +773 -0
  174. data/lib/reacon-sdk/models/mail_cadence_definition.rb +357 -0
  175. data/lib/reacon-sdk/models/mail_cadence_enrollment_variable_gap.rb +190 -0
  176. data/lib/reacon-sdk/models/mail_cadence_experiment_context.rb +294 -0
  177. data/lib/reacon-sdk/models/mail_cadence_message_experiment.rb +324 -0
  178. data/lib/reacon-sdk/models/mail_cadence_message_experiment_variant.rb +268 -0
  179. data/lib/reacon-sdk/models/mail_cadence_node.rb +108 -0
  180. data/lib/reacon-sdk/models/mail_cadence_node_any_of.rb +273 -0
  181. data/lib/reacon-sdk/models/mail_cadence_node_any_of1.rb +360 -0
  182. data/lib/reacon-sdk/models/mail_cadence_node_any_of2.rb +299 -0
  183. data/lib/reacon-sdk/models/mail_cadence_node_any_of3.rb +325 -0
  184. data/lib/reacon-sdk/models/mail_cadence_node_any_of4.rb +325 -0
  185. data/lib/reacon-sdk/models/mail_cadence_node_any_of4_all_of_condition.rb +216 -0
  186. data/lib/reacon-sdk/models/mail_cadence_node_any_of5.rb +273 -0
  187. data/lib/reacon-sdk/models/mail_cadence_node_any_of6.rb +273 -0
  188. data/lib/reacon-sdk/models/mail_cadence_node_base.rb +190 -0
  189. data/lib/reacon-sdk/models/mail_cadence_run_record.rb +638 -0
  190. data/lib/reacon-sdk/models/mail_cadence_stop_conditions.rb +268 -0
  191. data/lib/reacon-sdk/models/mail_cadence_workflow_experiment.rb +324 -0
  192. data/lib/reacon-sdk/models/mail_cadence_workflow_experiment_variant.rb +242 -0
  193. data/lib/reacon-sdk/models/mail_campaign_draft_record.rb +457 -0
  194. data/lib/reacon-sdk/models/mail_campaign_draft_step.rb +262 -0
  195. data/lib/reacon-sdk/models/mail_campaign_progress.rb +400 -0
  196. data/lib/reacon-sdk/models/mail_campaign_progress_message_counts.rb +255 -0
  197. data/lib/reacon-sdk/models/mail_contact_crm_state.rb +260 -0
  198. data/lib/reacon-sdk/models/mail_contact_list_summary_record.rb +294 -0
  199. data/lib/reacon-sdk/models/mail_contact_record.rb +303 -0
  200. data/lib/reacon-sdk/models/mail_conversation_entry.rb +464 -0
  201. data/lib/reacon-sdk/models/mail_conversation_entry_from.rb +173 -0
  202. data/lib/reacon-sdk/models/mail_conversation_entry_last_error.rb +104 -0
  203. data/lib/reacon-sdk/models/mail_conversation_entry_last_error_any_of.rb +249 -0
  204. data/lib/reacon-sdk/models/mail_conversation_entry_last_error_any_of1.rb +240 -0
  205. data/lib/reacon-sdk/models/mail_conversation_entry_last_error_any_of2.rb +240 -0
  206. data/lib/reacon-sdk/models/mail_conversation_thread.rb +376 -0
  207. data/lib/reacon-sdk/models/mail_crm_task.rb +416 -0
  208. data/lib/reacon-sdk/models/mail_crm_timeline_event.rb +303 -0
  209. data/lib/reacon-sdk/models/mail_delete_campaigns_by_campaign_id_request.rb +173 -0
  210. data/lib/reacon-sdk/models/mail_delete_campaigns_by_campaign_id_response200.rb +164 -0
  211. data/lib/reacon-sdk/models/mail_delete_deliverability_pools_by_pool_id_members_by_mailbox_id_response200.rb +164 -0
  212. data/lib/reacon-sdk/models/mail_delete_mailboxes_by_mailbox_id_response200.rb +164 -0
  213. data/lib/reacon-sdk/models/mail_delete_portfolio_teams_by_member_team_id_response200.rb +164 -0
  214. data/lib/reacon-sdk/models/mail_delete_reply_automations_by_automation_id_response200.rb +164 -0
  215. data/lib/reacon-sdk/models/mail_delete_tracking_domain_response200.rb +164 -0
  216. data/lib/reacon-sdk/models/mail_delete_webhooks_by_subscription_id_response200.rb +164 -0
  217. data/lib/reacon-sdk/models/mail_domain_health_check.rb +244 -0
  218. data/lib/reacon-sdk/models/mail_domain_health_report.rb +244 -0
  219. data/lib/reacon-sdk/models/mail_evidence_field.rb +294 -0
  220. data/lib/reacon-sdk/models/mail_experiment_decision_record.rb +398 -0
  221. data/lib/reacon-sdk/models/mail_experiment_definition_record.rb +580 -0
  222. data/lib/reacon-sdk/models/mail_experiment_outcome_record.rb +372 -0
  223. data/lib/reacon-sdk/models/mail_experiment_report.rb +544 -0
  224. data/lib/reacon-sdk/models/mail_experiment_report_decision.rb +103 -0
  225. data/lib/reacon-sdk/models/mail_experiment_revision_record.rb +463 -0
  226. data/lib/reacon-sdk/models/mail_experiment_variant.rb +103 -0
  227. data/lib/reacon-sdk/models/mail_experiment_variant_report.rb +490 -0
  228. data/lib/reacon-sdk/models/mail_experiment_variant_report_confidence_interval95.rb +190 -0
  229. data/lib/reacon-sdk/models/mail_experiment_variant_report_guardrails.rb +242 -0
  230. data/lib/reacon-sdk/models/mail_get_analytics_response200.rb +190 -0
  231. data/lib/reacon-sdk/models/mail_get_audience_lists_response200.rb +166 -0
  232. data/lib/reacon-sdk/models/mail_get_cadence_campaigns_response200.rb +166 -0
  233. data/lib/reacon-sdk/models/mail_get_cadence_runs_response200.rb +166 -0
  234. data/lib/reacon-sdk/models/mail_get_cadences_response200.rb +166 -0
  235. data/lib/reacon-sdk/models/mail_get_campaign_progress_response200.rb +166 -0
  236. data/lib/reacon-sdk/models/mail_get_campaigns_by_campaign_id_response200.rb +164 -0
  237. data/lib/reacon-sdk/models/mail_get_campaigns_response200.rb +166 -0
  238. data/lib/reacon-sdk/models/mail_get_channels_response200.rb +242 -0
  239. data/lib/reacon-sdk/models/mail_get_channels_response200_email.rb +268 -0
  240. data/lib/reacon-sdk/models/mail_get_channels_response200_execution.rb +216 -0
  241. data/lib/reacon-sdk/models/mail_get_channels_response200_sms.rb +268 -0
  242. data/lib/reacon-sdk/models/mail_get_channels_response200_whatsapp.rb +294 -0
  243. data/lib/reacon-sdk/models/mail_get_crm_states_response200.rb +166 -0
  244. data/lib/reacon-sdk/models/mail_get_crm_tasks_response200.rb +166 -0
  245. data/lib/reacon-sdk/models/mail_get_crm_timeline_response200.rb +166 -0
  246. data/lib/reacon-sdk/models/mail_get_deliverability_response200.rb +222 -0
  247. data/lib/reacon-sdk/models/mail_get_deliverability_response200_pools_inner.rb +322 -0
  248. data/lib/reacon-sdk/models/mail_get_experiments_by_experiment_key_report_response200.rb +164 -0
  249. data/lib/reacon-sdk/models/mail_get_experiments_overview_response200.rb +166 -0
  250. data/lib/reacon-sdk/models/mail_get_experiments_response200.rb +166 -0
  251. data/lib/reacon-sdk/models/mail_get_experiments_response200_results_inner.rb +192 -0
  252. data/lib/reacon-sdk/models/mail_get_inbox_response200.rb +166 -0
  253. data/lib/reacon-sdk/models/mail_get_inbox_threads_response200.rb +192 -0
  254. data/lib/reacon-sdk/models/mail_get_mailboxes_response200.rb +194 -0
  255. data/lib/reacon-sdk/models/mail_get_messages_response200.rb +175 -0
  256. data/lib/reacon-sdk/models/mail_get_overview_response200.rb +330 -0
  257. data/lib/reacon-sdk/models/mail_get_overview_response200_inbox.rb +218 -0
  258. data/lib/reacon-sdk/models/mail_get_portfolio_overview_response200.rb +218 -0
  259. data/lib/reacon-sdk/models/mail_get_portfolio_response200.rb +103 -0
  260. data/lib/reacon-sdk/models/mail_get_portfolio_response200_any_of.rb +242 -0
  261. data/lib/reacon-sdk/models/mail_get_portfolio_response200_any_of1.rb +220 -0
  262. data/lib/reacon-sdk/models/mail_get_queue_response200.rb +164 -0
  263. data/lib/reacon-sdk/models/mail_get_reply_automations_response200.rb +166 -0
  264. data/lib/reacon-sdk/models/mail_get_signatures_response200.rb +175 -0
  265. data/lib/reacon-sdk/models/mail_get_suppressions_response200.rb +166 -0
  266. data/lib/reacon-sdk/models/mail_get_templates_response200.rb +166 -0
  267. data/lib/reacon-sdk/models/mail_get_tracking_domain_response200.rb +162 -0
  268. data/lib/reacon-sdk/models/mail_get_tracking_domain_response200_domain.rb +103 -0
  269. data/lib/reacon-sdk/models/mail_get_webhooks_response200.rb +194 -0
  270. data/lib/reacon-sdk/models/mail_get_webhooks_response200_subscriptions_inner.rb +374 -0
  271. data/lib/reacon-sdk/models/mail_inbox_message_record.rb +520 -0
  272. data/lib/reacon-sdk/models/mail_mail_address.rb +173 -0
  273. data/lib/reacon-sdk/models/mail_mail_portfolio.rb +294 -0
  274. data/lib/reacon-sdk/models/mail_mail_portfolio_overview_row.rb +462 -0
  275. data/lib/reacon-sdk/models/mail_mail_portfolio_suppression.rb +320 -0
  276. data/lib/reacon-sdk/models/mail_mail_portfolio_team.rb +268 -0
  277. data/lib/reacon-sdk/models/mail_mailbox_connection_record.rb +452 -0
  278. data/lib/reacon-sdk/models/mail_mailbox_health_record.rb +676 -0
  279. data/lib/reacon-sdk/models/mail_mailbox_pool_member.rb +346 -0
  280. data/lib/reacon-sdk/models/mail_mailbox_provider_kind.rb +104 -0
  281. data/lib/reacon-sdk/models/mail_mailbox_record.rb +372 -0
  282. data/lib/reacon-sdk/models/mail_message_analytics_overview.rb +468 -0
  283. data/lib/reacon-sdk/models/mail_message_analytics_overview_daily_inner.rb +320 -0
  284. data/lib/reacon-sdk/models/mail_message_analytics_overview_mailboxes_inner.rb +294 -0
  285. data/lib/reacon-sdk/models/mail_message_analytics_overview_variants_inner.rb +330 -0
  286. data/lib/reacon-sdk/models/mail_message_policy.rb +313 -0
  287. data/lib/reacon-sdk/models/mail_message_policy_input.rb +211 -0
  288. data/lib/reacon-sdk/models/mail_message_record.rb +711 -0
  289. data/lib/reacon-sdk/models/mail_message_template_version.rb +418 -0
  290. data/lib/reacon-sdk/models/mail_message_template_version_whatsapp_approval.rb +242 -0
  291. data/lib/reacon-sdk/models/mail_message_variant_input.rb +260 -0
  292. data/lib/reacon-sdk/models/mail_operational_analytics_overview.rb +270 -0
  293. data/lib/reacon-sdk/models/mail_operational_analytics_overview_cadence_steps_inner.rb +242 -0
  294. data/lib/reacon-sdk/models/mail_patch_campaigns_by_campaign_id_request.rb +362 -0
  295. data/lib/reacon-sdk/models/mail_patch_campaigns_by_campaign_id_request_policy.rb +364 -0
  296. data/lib/reacon-sdk/models/mail_patch_campaigns_by_campaign_id_request_policy_domain_quotas_inner.rb +226 -0
  297. data/lib/reacon-sdk/models/mail_patch_campaigns_by_campaign_id_request_policy_sending_windows_inner.rb +277 -0
  298. data/lib/reacon-sdk/models/mail_patch_campaigns_by_campaign_id_request_steps_inner.rb +374 -0
  299. data/lib/reacon-sdk/models/mail_patch_campaigns_by_campaign_id_request_steps_inner_variants_inner.rb +342 -0
  300. data/lib/reacon-sdk/models/mail_patch_campaigns_by_campaign_id_response200.rb +164 -0
  301. data/lib/reacon-sdk/models/mail_patch_webhooks_by_subscription_id_request.rb +205 -0
  302. data/lib/reacon-sdk/models/mail_patch_webhooks_by_subscription_id_response200.rb +164 -0
  303. data/lib/reacon-sdk/models/mail_phone_number_value.rb +199 -0
  304. data/lib/reacon-sdk/models/mail_post_analytics_export_request.rb +238 -0
  305. data/lib/reacon-sdk/models/mail_post_analytics_export_request_after.rb +208 -0
  306. data/lib/reacon-sdk/models/mail_post_analytics_export_response200.rb +292 -0
  307. data/lib/reacon-sdk/models/mail_post_analytics_export_response200_next_cursor.rb +103 -0
  308. data/lib/reacon-sdk/models/mail_post_analytics_export_response200_next_cursor_any_of.rb +190 -0
  309. data/lib/reacon-sdk/models/mail_post_cadence_campaigns_by_campaign_id_state_request.rb +188 -0
  310. data/lib/reacon-sdk/models/mail_post_cadence_campaigns_by_campaign_id_state_response200.rb +103 -0
  311. data/lib/reacon-sdk/models/mail_post_cadence_campaigns_by_campaign_id_state_response200_any_of.rb +270 -0
  312. data/lib/reacon-sdk/models/mail_post_cadence_campaigns_by_campaign_id_state_response200_any_of1.rb +296 -0
  313. data/lib/reacon-sdk/models/mail_post_cadence_campaigns_request.rb +471 -0
  314. data/lib/reacon-sdk/models/mail_post_cadence_campaigns_response202.rb +164 -0
  315. data/lib/reacon-sdk/models/mail_post_cadence_runs_by_run_id_state_request.rb +188 -0
  316. data/lib/reacon-sdk/models/mail_post_cadence_runs_by_run_id_state_response200.rb +164 -0
  317. data/lib/reacon-sdk/models/mail_post_cadence_runs_preflight_request.rb +361 -0
  318. data/lib/reacon-sdk/models/mail_post_cadence_runs_preflight_response200.rb +324 -0
  319. data/lib/reacon-sdk/models/mail_post_cadence_runs_request.rb +533 -0
  320. data/lib/reacon-sdk/models/mail_post_cadence_runs_response200.rb +166 -0
  321. data/lib/reacon-sdk/models/mail_post_cadences_by_cadence_id_copy_request.rb +226 -0
  322. data/lib/reacon-sdk/models/mail_post_cadences_by_cadence_id_copy_response200.rb +218 -0
  323. data/lib/reacon-sdk/models/mail_post_cadences_request.rb +324 -0
  324. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner.rb +109 -0
  325. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of.rb +306 -0
  326. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of1.rb +422 -0
  327. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of1_experiment.rb +501 -0
  328. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of1_experiment_variants_inner.rb +342 -0
  329. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of2.rb +350 -0
  330. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of3.rb +378 -0
  331. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of4.rb +369 -0
  332. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of4_condition.rb +251 -0
  333. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of5.rb +295 -0
  334. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of5_experiment.rb +501 -0
  335. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of5_experiment_variants_inner.rb +300 -0
  336. data/lib/reacon-sdk/models/mail_post_cadences_request_nodes_inner_any_of6.rb +313 -0
  337. data/lib/reacon-sdk/models/mail_post_cadences_request_stop_conditions.rb +300 -0
  338. data/lib/reacon-sdk/models/mail_post_cadences_response200.rb +164 -0
  339. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_duplicate_response201.rb +164 -0
  340. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_launch_request.rb +173 -0
  341. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_launch_response200.rb +103 -0
  342. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_launch_response200_any_of.rb +236 -0
  343. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_launch_response200_any_of1.rb +218 -0
  344. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_launch_response200_any_of_campaign.rb +103 -0
  345. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_state_request.rb +188 -0
  346. data/lib/reacon-sdk/models/mail_post_campaigns_by_campaign_id_state_response200.rb +164 -0
  347. data/lib/reacon-sdk/models/mail_post_campaigns_request.rb +327 -0
  348. data/lib/reacon-sdk/models/mail_post_campaigns_response201.rb +164 -0
  349. data/lib/reacon-sdk/models/mail_post_crm_classify_reply_request.rb +247 -0
  350. data/lib/reacon-sdk/models/mail_post_crm_classify_reply_response200.rb +164 -0
  351. data/lib/reacon-sdk/models/mail_post_crm_contacts_batch_request.rb +184 -0
  352. data/lib/reacon-sdk/models/mail_post_crm_contacts_batch_response200.rb +166 -0
  353. data/lib/reacon-sdk/models/mail_post_crm_notes_request.rb +226 -0
  354. data/lib/reacon-sdk/models/mail_post_crm_notes_response200.rb +164 -0
  355. data/lib/reacon-sdk/models/mail_post_crm_notes_response200_event.rb +320 -0
  356. data/lib/reacon-sdk/models/mail_post_crm_notes_response200_event_payload.rb +164 -0
  357. data/lib/reacon-sdk/models/mail_post_crm_states_batch_request.rb +184 -0
  358. data/lib/reacon-sdk/models/mail_post_crm_states_batch_response200.rb +166 -0
  359. data/lib/reacon-sdk/models/mail_post_crm_tasks_by_task_id_complete_request.rb +177 -0
  360. data/lib/reacon-sdk/models/mail_post_crm_tasks_by_task_id_complete_response200.rb +192 -0
  361. data/lib/reacon-sdk/models/mail_post_crm_tasks_request.rb +346 -0
  362. data/lib/reacon-sdk/models/mail_post_crm_tasks_response201.rb +164 -0
  363. data/lib/reacon-sdk/models/mail_post_deliverability_domain_health_request.rb +212 -0
  364. data/lib/reacon-sdk/models/mail_post_deliverability_domain_health_response200.rb +164 -0
  365. data/lib/reacon-sdk/models/mail_post_deliverability_mailboxes_by_mailbox_id_pause_request.rb +175 -0
  366. data/lib/reacon-sdk/models/mail_post_deliverability_mailboxes_by_mailbox_id_pause_response200.rb +164 -0
  367. data/lib/reacon-sdk/models/mail_post_deliverability_mailboxes_by_mailbox_id_reconcile_response200.rb +164 -0
  368. data/lib/reacon-sdk/models/mail_post_deliverability_mailboxes_by_mailbox_id_request.rb +341 -0
  369. data/lib/reacon-sdk/models/mail_post_deliverability_mailboxes_by_mailbox_id_response200.rb +164 -0
  370. data/lib/reacon-sdk/models/mail_post_deliverability_mailboxes_by_mailbox_id_resume_response200.rb +164 -0
  371. data/lib/reacon-sdk/models/mail_post_deliverability_pools_request.rb +232 -0
  372. data/lib/reacon-sdk/models/mail_post_deliverability_pools_response201.rb +164 -0
  373. data/lib/reacon-sdk/models/mail_post_deliverability_pools_response201_pool.rb +340 -0
  374. data/lib/reacon-sdk/models/mail_post_experiments_by_experiment_key_archive_response200.rb +164 -0
  375. data/lib/reacon-sdk/models/mail_post_experiments_by_experiment_key_conversions_request.rb +320 -0
  376. data/lib/reacon-sdk/models/mail_post_experiments_by_experiment_key_conversions_response200.rb +164 -0
  377. data/lib/reacon-sdk/models/mail_post_experiments_by_experiment_key_decide_request.rb +310 -0
  378. data/lib/reacon-sdk/models/mail_post_experiments_by_experiment_key_decide_response200.rb +164 -0
  379. data/lib/reacon-sdk/models/mail_post_experiments_by_experiment_key_pause_response200.rb +164 -0
  380. data/lib/reacon-sdk/models/mail_post_experiments_by_experiment_key_resume_response200.rb +164 -0
  381. data/lib/reacon-sdk/models/mail_post_inbox_by_message_id_reply_request.rb +226 -0
  382. data/lib/reacon-sdk/models/mail_post_inbox_by_message_id_reply_response200.rb +164 -0
  383. data/lib/reacon-sdk/models/mail_post_inbox_by_message_id_request.rb +216 -0
  384. data/lib/reacon-sdk/models/mail_post_inbox_by_message_id_response200.rb +162 -0
  385. data/lib/reacon-sdk/models/mail_post_inbox_by_message_id_response200_message.rb +103 -0
  386. data/lib/reacon-sdk/models/mail_post_mailboxes_manual_request.rb +451 -0
  387. data/lib/reacon-sdk/models/mail_post_mailboxes_manual_request_imap.rb +469 -0
  388. data/lib/reacon-sdk/models/mail_post_mailboxes_manual_request_smtp.rb +476 -0
  389. data/lib/reacon-sdk/models/mail_post_mailboxes_manual_response200.rb +190 -0
  390. data/lib/reacon-sdk/models/mail_post_messages_by_message_id_cancel_response200.rb +164 -0
  391. data/lib/reacon-sdk/models/mail_post_messages_by_message_id_retry_response200.rb +164 -0
  392. data/lib/reacon-sdk/models/mail_post_messages_request.rb +407 -0
  393. data/lib/reacon-sdk/models/mail_post_messages_request_to.rb +210 -0
  394. data/lib/reacon-sdk/models/mail_post_messages_response201.rb +164 -0
  395. data/lib/reacon-sdk/models/mail_post_oauth_begin_request.rb +262 -0
  396. data/lib/reacon-sdk/models/mail_post_oauth_begin_response200.rb +190 -0
  397. data/lib/reacon-sdk/models/mail_post_portfolio_export_response200.rb +240 -0
  398. data/lib/reacon-sdk/models/mail_post_portfolio_request.rb +182 -0
  399. data/lib/reacon-sdk/models/mail_post_portfolio_response200.rb +238 -0
  400. data/lib/reacon-sdk/models/mail_post_portfolio_suppressions_request.rb +103 -0
  401. data/lib/reacon-sdk/models/mail_post_portfolio_suppressions_request_any_of.rb +262 -0
  402. data/lib/reacon-sdk/models/mail_post_portfolio_suppressions_request_any_of1.rb +282 -0
  403. data/lib/reacon-sdk/models/mail_post_portfolio_suppressions_response200.rb +192 -0
  404. data/lib/reacon-sdk/models/mail_post_portfolio_teams_request.rb +182 -0
  405. data/lib/reacon-sdk/models/mail_post_portfolio_teams_response200.rb +164 -0
  406. data/lib/reacon-sdk/models/mail_post_reply_automations_request.rb +345 -0
  407. data/lib/reacon-sdk/models/mail_post_reply_automations_request_actions.rb +238 -0
  408. data/lib/reacon-sdk/models/mail_post_reply_automations_request_actions_task.rb +226 -0
  409. data/lib/reacon-sdk/models/mail_post_reply_automations_response200.rb +164 -0
  410. data/lib/reacon-sdk/models/mail_post_suppressions_request.rb +103 -0
  411. data/lib/reacon-sdk/models/mail_post_suppressions_request_any_of.rb +223 -0
  412. data/lib/reacon-sdk/models/mail_post_suppressions_request_any_of1.rb +243 -0
  413. data/lib/reacon-sdk/models/mail_post_suppressions_response200.rb +164 -0
  414. data/lib/reacon-sdk/models/mail_post_templates_by_template_id_copy_request.rb +182 -0
  415. data/lib/reacon-sdk/models/mail_post_templates_by_template_id_copy_response200.rb +164 -0
  416. data/lib/reacon-sdk/models/mail_post_templates_request.rb +387 -0
  417. data/lib/reacon-sdk/models/mail_post_templates_request_whatsapp_approval.rb +296 -0
  418. data/lib/reacon-sdk/models/mail_post_templates_response200.rb +164 -0
  419. data/lib/reacon-sdk/models/mail_post_tracking_domain_request.rb +182 -0
  420. data/lib/reacon-sdk/models/mail_post_tracking_domain_response200.rb +164 -0
  421. data/lib/reacon-sdk/models/mail_post_tracking_domain_verify_response200.rb +242 -0
  422. data/lib/reacon-sdk/models/mail_post_webhooks_by_subscription_id_reconcile_response200.rb +242 -0
  423. data/lib/reacon-sdk/models/mail_post_webhooks_by_subscription_id_rotate_secret_response200.rb +190 -0
  424. data/lib/reacon-sdk/models/mail_post_webhooks_by_subscription_id_status_request.rb +188 -0
  425. data/lib/reacon-sdk/models/mail_post_webhooks_by_subscription_id_status_response200.rb +164 -0
  426. data/lib/reacon-sdk/models/mail_post_webhooks_deliveries_by_delivery_id_replay_response200.rb +164 -0
  427. data/lib/reacon-sdk/models/mail_post_webhooks_request.rb +211 -0
  428. data/lib/reacon-sdk/models/mail_post_webhooks_response201.rb +190 -0
  429. data/lib/reacon-sdk/models/mail_provider_failure.rb +104 -0
  430. data/lib/reacon-sdk/models/mail_put_crm_states_request.rb +306 -0
  431. data/lib/reacon-sdk/models/mail_put_crm_states_response200.rb +164 -0
  432. data/lib/reacon-sdk/models/mail_put_deliverability_pools_by_pool_id_members_by_mailbox_id_request.rb +227 -0
  433. data/lib/reacon-sdk/models/mail_put_deliverability_pools_by_pool_id_members_by_mailbox_id_response200.rb +164 -0
  434. data/lib/reacon-sdk/models/mail_queue_snapshot.rb +260 -0
  435. data/lib/reacon-sdk/models/mail_quota_rule.rb +190 -0
  436. data/lib/reacon-sdk/models/mail_rendered_message.rb +199 -0
  437. data/lib/reacon-sdk/models/mail_reply_automation_rule.rb +374 -0
  438. data/lib/reacon-sdk/models/mail_reply_automation_rule_actions.rb +191 -0
  439. data/lib/reacon-sdk/models/mail_reply_automation_rule_actions_task.rb +190 -0
  440. data/lib/reacon-sdk/models/mail_reply_classification_result.rb +270 -0
  441. data/lib/reacon-sdk/models/mail_sending_window.rb +218 -0
  442. data/lib/reacon-sdk/models/mail_sequence_run_record.rb +366 -0
  443. data/lib/reacon-sdk/models/mail_signature_candidate.rb +424 -0
  444. data/lib/reacon-sdk/models/mail_signature_candidate_fields.rb +286 -0
  445. data/lib/reacon-sdk/models/mail_signature_candidate_fields_phones_inner.rb +294 -0
  446. data/lib/reacon-sdk/models/mail_stored_imap_settings.rb +288 -0
  447. data/lib/reacon-sdk/models/mail_stored_smtp_settings.rb +286 -0
  448. data/lib/reacon-sdk/models/mail_suppression_record.rb +277 -0
  449. data/lib/reacon-sdk/models/mail_tracking_domain_record.rb +303 -0
  450. data/lib/reacon-sdk/models/mail_webhook_delivery.rb +496 -0
  451. data/lib/reacon-sdk/models/mail_webhook_event_snapshot.rb +268 -0
  452. data/lib/reacon-sdk/models/mcp_identity.rb +360 -0
  453. data/lib/reacon-sdk/models/mcp_identity_list.rb +166 -0
  454. data/lib/reacon-sdk/models/mcp_identity_response.rb +164 -0
  455. data/lib/reacon-sdk/models/name_pattern.rb +190 -0
  456. data/lib/reacon-sdk/models/name_patterns_response.rb +166 -0
  457. data/lib/reacon-sdk/models/name_verification_empty_final.rb +190 -0
  458. data/lib/reacon-sdk/models/name_verification_item.rb +226 -0
  459. data/lib/reacon-sdk/models/name_verification_response.rb +222 -0
  460. data/lib/reacon-sdk/models/person_insight.rb +374 -0
  461. data/lib/reacon-sdk/models/preview_sheet_workflow_request.rb +175 -0
  462. data/lib/reacon-sdk/models/product_account_info_execution.rb +252 -0
  463. data/lib/reacon-sdk/models/product_account_info_output.rb +254 -0
  464. data/lib/reacon-sdk/models/product_combined_enrich_execution.rb +252 -0
  465. data/lib/reacon-sdk/models/product_combined_enrich_input.rb +184 -0
  466. data/lib/reacon-sdk/models/product_combined_enrich_output.rb +190 -0
  467. data/lib/reacon-sdk/models/product_companies_list_execution.rb +252 -0
  468. data/lib/reacon-sdk/models/product_companies_list_input.rb +216 -0
  469. data/lib/reacon-sdk/models/product_companies_list_output.rb +244 -0
  470. data/lib/reacon-sdk/models/product_company.rb +297 -0
  471. data/lib/reacon-sdk/models/product_company_delete_execution.rb +266 -0
  472. data/lib/reacon-sdk/models/product_company_delete_input.rb +219 -0
  473. data/lib/reacon-sdk/models/product_company_delete_output.rb +190 -0
  474. data/lib/reacon-sdk/models/product_company_enrich_execution.rb +252 -0
  475. data/lib/reacon-sdk/models/product_company_enrich_input.rb +165 -0
  476. data/lib/reacon-sdk/models/product_company_list.rb +268 -0
  477. data/lib/reacon-sdk/models/product_company_list_add_execution.rb +266 -0
  478. data/lib/reacon-sdk/models/product_company_list_add_input.rb +256 -0
  479. data/lib/reacon-sdk/models/product_company_list_add_output.rb +216 -0
  480. data/lib/reacon-sdk/models/product_company_list_create_execution.rb +266 -0
  481. data/lib/reacon-sdk/models/product_company_list_create_input.rb +209 -0
  482. data/lib/reacon-sdk/models/product_company_list_remove_execution.rb +266 -0
  483. data/lib/reacon-sdk/models/product_company_list_remove_input.rb +256 -0
  484. data/lib/reacon-sdk/models/product_company_list_remove_output.rb +216 -0
  485. data/lib/reacon-sdk/models/product_company_lists_list_execution.rb +252 -0
  486. data/lib/reacon-sdk/models/product_company_lists_list_output.rb +166 -0
  487. data/lib/reacon-sdk/models/product_company_summary.rb +236 -0
  488. data/lib/reacon-sdk/models/product_company_track_execution.rb +266 -0
  489. data/lib/reacon-sdk/models/product_company_track_input.rb +239 -0
  490. data/lib/reacon-sdk/models/product_company_track_output.rb +216 -0
  491. data/lib/reacon-sdk/models/product_company_update_execution.rb +266 -0
  492. data/lib/reacon-sdk/models/product_company_update_input.rb +303 -0
  493. data/lib/reacon-sdk/models/product_company_update_output.rb +200 -0
  494. data/lib/reacon-sdk/models/product_connected_app.rb +294 -0
  495. data/lib/reacon-sdk/models/product_connected_app_push_execution.rb +266 -0
  496. data/lib/reacon-sdk/models/product_connected_app_push_input.rb +265 -0
  497. data/lib/reacon-sdk/models/product_connected_app_push_output.rb +216 -0
  498. data/lib/reacon-sdk/models/product_connected_apps_execution.rb +252 -0
  499. data/lib/reacon-sdk/models/product_connected_apps_output.rb +166 -0
  500. data/lib/reacon-sdk/models/product_custom_attribute.rb +268 -0
  501. data/lib/reacon-sdk/models/product_custom_attribute_create_execution.rb +266 -0
  502. data/lib/reacon-sdk/models/product_custom_attribute_create_input.rb +246 -0
  503. data/lib/reacon-sdk/models/product_custom_attributes_list_execution.rb +252 -0
  504. data/lib/reacon-sdk/models/product_custom_attributes_list_output.rb +166 -0
  505. data/lib/reacon-sdk/models/product_dated_recipient.rb +306 -0
  506. data/lib/reacon-sdk/models/product_discover_companies_execution.rb +252 -0
  507. data/lib/reacon-sdk/models/product_discover_companies_input.rb +263 -0
  508. data/lib/reacon-sdk/models/product_discover_companies_output.rb +166 -0
  509. data/lib/reacon-sdk/models/product_discover_people_execution.rb +252 -0
  510. data/lib/reacon-sdk/models/product_discover_people_input.rb +245 -0
  511. data/lib/reacon-sdk/models/product_discover_people_output.rb +166 -0
  512. data/lib/reacon-sdk/models/product_domain_finder_execution.rb +252 -0
  513. data/lib/reacon-sdk/models/product_domain_finder_input.rb +165 -0
  514. data/lib/reacon-sdk/models/product_domain_finder_output.rb +227 -0
  515. data/lib/reacon-sdk/models/product_email_count_execution.rb +252 -0
  516. data/lib/reacon-sdk/models/product_email_count_input.rb +165 -0
  517. data/lib/reacon-sdk/models/product_email_count_output.rb +242 -0
  518. data/lib/reacon-sdk/models/product_lead.rb +317 -0
  519. data/lib/reacon-sdk/models/product_lead_bulk_delete_execution.rb +266 -0
  520. data/lib/reacon-sdk/models/product_lead_bulk_delete_input.rb +228 -0
  521. data/lib/reacon-sdk/models/product_lead_bulk_delete_output.rb +192 -0
  522. data/lib/reacon-sdk/models/product_lead_create_execution.rb +266 -0
  523. data/lib/reacon-sdk/models/product_lead_create_input.rb +360 -0
  524. data/lib/reacon-sdk/models/product_lead_delete_execution.rb +266 -0
  525. data/lib/reacon-sdk/models/product_lead_delete_input.rb +219 -0
  526. data/lib/reacon-sdk/models/product_lead_delete_output.rb +190 -0
  527. data/lib/reacon-sdk/models/product_lead_enrich_execution.rb +266 -0
  528. data/lib/reacon-sdk/models/product_lead_enrich_input.rb +219 -0
  529. data/lib/reacon-sdk/models/product_lead_get_execution.rb +252 -0
  530. data/lib/reacon-sdk/models/product_lead_get_input.rb +175 -0
  531. data/lib/reacon-sdk/models/product_lead_list.rb +268 -0
  532. data/lib/reacon-sdk/models/product_lead_list_add_lead_execution.rb +266 -0
  533. data/lib/reacon-sdk/models/product_lead_list_add_lead_input.rb +256 -0
  534. data/lib/reacon-sdk/models/product_lead_list_add_lead_output.rb +216 -0
  535. data/lib/reacon-sdk/models/product_lead_list_create_execution.rb +266 -0
  536. data/lib/reacon-sdk/models/product_lead_list_create_input.rb +209 -0
  537. data/lib/reacon-sdk/models/product_lead_list_delete_execution.rb +266 -0
  538. data/lib/reacon-sdk/models/product_lead_list_delete_input.rb +219 -0
  539. data/lib/reacon-sdk/models/product_lead_list_delete_output.rb +190 -0
  540. data/lib/reacon-sdk/models/product_lead_list_remove_lead_execution.rb +266 -0
  541. data/lib/reacon-sdk/models/product_lead_list_remove_lead_input.rb +256 -0
  542. data/lib/reacon-sdk/models/product_lead_list_remove_lead_output.rb +216 -0
  543. data/lib/reacon-sdk/models/product_lead_list_update_execution.rb +266 -0
  544. data/lib/reacon-sdk/models/product_lead_list_update_input.rb +246 -0
  545. data/lib/reacon-sdk/models/product_lead_lists_list_execution.rb +252 -0
  546. data/lib/reacon-sdk/models/product_lead_lists_list_output.rb +166 -0
  547. data/lib/reacon-sdk/models/product_lead_tag_assign_execution.rb +266 -0
  548. data/lib/reacon-sdk/models/product_lead_tag_assign_input.rb +256 -0
  549. data/lib/reacon-sdk/models/product_lead_tag_assign_output.rb +216 -0
  550. data/lib/reacon-sdk/models/product_lead_tag_create_execution.rb +266 -0
  551. data/lib/reacon-sdk/models/product_lead_tag_create_input.rb +209 -0
  552. data/lib/reacon-sdk/models/product_lead_tag_remove_execution.rb +266 -0
  553. data/lib/reacon-sdk/models/product_lead_tag_remove_input.rb +256 -0
  554. data/lib/reacon-sdk/models/product_lead_tag_remove_output.rb +216 -0
  555. data/lib/reacon-sdk/models/product_lead_tags_list_execution.rb +252 -0
  556. data/lib/reacon-sdk/models/product_lead_tags_list_output.rb +166 -0
  557. data/lib/reacon-sdk/models/product_lead_update_execution.rb +266 -0
  558. data/lib/reacon-sdk/models/product_lead_update_input.rb +343 -0
  559. data/lib/reacon-sdk/models/product_lead_upsert_execution.rb +266 -0
  560. data/lib/reacon-sdk/models/product_lead_upsert_input.rb +360 -0
  561. data/lib/reacon-sdk/models/product_lead_with_attributes.rb +345 -0
  562. data/lib/reacon-sdk/models/product_leads_list_execution.rb +252 -0
  563. data/lib/reacon-sdk/models/product_leads_list_input.rb +246 -0
  564. data/lib/reacon-sdk/models/product_leads_list_output.rb +244 -0
  565. data/lib/reacon-sdk/models/product_named_resource.rb +242 -0
  566. data/lib/reacon-sdk/models/product_person.rb +286 -0
  567. data/lib/reacon-sdk/models/product_person_enrich_execution.rb +252 -0
  568. data/lib/reacon-sdk/models/product_person_enrich_input.rb +184 -0
  569. data/lib/reacon-sdk/models/product_person_summary.rb +264 -0
  570. data/lib/reacon-sdk/models/product_recipient.rb +254 -0
  571. data/lib/reacon-sdk/models/product_saved_searches_list_execution.rb +252 -0
  572. data/lib/reacon-sdk/models/product_saved_searches_list_output.rb +176 -0
  573. data/lib/reacon-sdk/models/product_sequence.rb +294 -0
  574. data/lib/reacon-sdk/models/product_sequence_recipient_add_execution.rb +266 -0
  575. data/lib/reacon-sdk/models/product_sequence_recipient_add_input.rb +295 -0
  576. data/lib/reacon-sdk/models/product_sequence_recipient_add_output.rb +192 -0
  577. data/lib/reacon-sdk/models/product_sequence_recipient_cancel_execution.rb +266 -0
  578. data/lib/reacon-sdk/models/product_sequence_recipient_cancel_input.rb +219 -0
  579. data/lib/reacon-sdk/models/product_sequence_recipients_add_execution.rb +266 -0
  580. data/lib/reacon-sdk/models/product_sequence_recipients_add_input.rb +265 -0
  581. data/lib/reacon-sdk/models/product_sequence_recipients_add_input_recipients_inner.rb +214 -0
  582. data/lib/reacon-sdk/models/product_sequence_recipients_add_output.rb +192 -0
  583. data/lib/reacon-sdk/models/product_sequence_recipients_list_execution.rb +252 -0
  584. data/lib/reacon-sdk/models/product_sequence_recipients_list_input.rb +175 -0
  585. data/lib/reacon-sdk/models/product_sequence_recipients_list_output.rb +166 -0
  586. data/lib/reacon-sdk/models/product_sequence_start_execution.rb +266 -0
  587. data/lib/reacon-sdk/models/product_sequence_start_input.rb +219 -0
  588. data/lib/reacon-sdk/models/product_sequence_start_output.rb +216 -0
  589. data/lib/reacon-sdk/models/product_sequences_list_execution.rb +252 -0
  590. data/lib/reacon-sdk/models/product_sequences_list_output.rb +166 -0
  591. data/lib/reacon-sdk/models/product_team_member.rb +216 -0
  592. data/lib/reacon-sdk/models/product_team_members_execution.rb +252 -0
  593. data/lib/reacon-sdk/models/product_team_members_output.rb +166 -0
  594. data/lib/reacon-sdk/models/product_tool_execution.rb +147 -0
  595. data/lib/reacon-sdk/models/product_tool_request.rb +164 -0
  596. data/lib/reacon-sdk/models/product_tool_request_input.rb +131 -0
  597. data/lib/reacon-sdk/models/product_tracked_company.rb +262 -0
  598. data/lib/reacon-sdk/models/product_usage_execution.rb +252 -0
  599. data/lib/reacon-sdk/models/product_usage_history_execution.rb +252 -0
  600. data/lib/reacon-sdk/models/product_usage_history_input.rb +216 -0
  601. data/lib/reacon-sdk/models/product_usage_history_output.rb +244 -0
  602. data/lib/reacon-sdk/models/product_usage_output.rb +228 -0
  603. data/lib/reacon-sdk/models/product_usage_transaction.rb +254 -0
  604. data/lib/reacon-sdk/models/public_stats.rb +216 -0
  605. data/lib/reacon-sdk/models/queue_integration_lead_export_request.rb +274 -0
  606. data/lib/reacon-sdk/models/queue_integration_lead_export_request_selection_scopes_inner.rb +274 -0
  607. data/lib/reacon-sdk/models/queue_notification_test_request.rb +175 -0
  608. data/lib/reacon-sdk/models/queued_integration_job.rb +677 -0
  609. data/lib/reacon-sdk/models/queued_integration_job_response.rb +164 -0
  610. data/lib/reacon-sdk/models/queued_integration_job_stream_position.rb +105 -0
  611. data/lib/reacon-sdk/models/rotate_coda_credential_request.rb +182 -0
  612. data/lib/reacon-sdk/models/rotate_freshsales_credential_request.rb +182 -0
  613. data/lib/reacon-sdk/models/run_sheet_workflow_request.rb +175 -0
  614. data/lib/reacon-sdk/models/save_sheet_workflow_request.rb +289 -0
  615. data/lib/reacon-sdk/models/segment_installation_created.rb +269 -0
  616. data/lib/reacon-sdk/models/sheet_workflow.rb +429 -0
  617. data/lib/reacon-sdk/models/sheet_workflow_deleted.rb +190 -0
  618. data/lib/reacon-sdk/models/sheet_workflow_list.rb +166 -0
  619. data/lib/reacon-sdk/models/sheet_workflow_preview.rb +305 -0
  620. data/lib/reacon-sdk/models/sheet_workflow_preview_rows_inner.rb +193 -0
  621. data/lib/reacon-sdk/models/sheet_workflow_response.rb +164 -0
  622. data/lib/reacon-sdk/models/sheet_workflow_state_response.rb +104 -0
  623. data/lib/reacon-sdk/models/sheet_workflow_validation.rb +162 -0
  624. data/lib/reacon-sdk/models/start_attio_o_auth_request.rb +175 -0
  625. data/lib/reacon-sdk/models/start_google_sheets_o_auth_request.rb +175 -0
  626. data/lib/reacon-sdk/models/start_integration_o_auth_request.rb +249 -0
  627. data/lib/reacon-sdk/models/update_integration_connection_state_request.rb +188 -0
  628. data/lib/reacon-sdk/models/update_lead_request.rb +352 -0
  629. data/lib/reacon-sdk/models/update_lead_request_company.rb +251 -0
  630. data/lib/reacon-sdk/models/update_lead_request_person.rb +208 -0
  631. data/lib/reacon-sdk/models/update_lead_response.rb +164 -0
  632. data/lib/reacon-sdk/models/update_lead_response_lead.rb +357 -0
  633. data/lib/reacon-sdk/models/update_sheet_workflow_state_request.rb +188 -0
  634. data/lib/reacon-sdk/models/verification_final.rb +190 -0
  635. data/lib/reacon-sdk/models/verification_progress.rb +290 -0
  636. data/lib/reacon-sdk/models/verification_response.rb +218 -0
  637. data/lib/reacon-sdk/models/verification_result.rb +275 -0
  638. data/lib/reacon-sdk/models/verification_stage.rb +220 -0
  639. data/lib/reacon-sdk/models/verification_stream_error.rb +234 -0
  640. data/lib/reacon-sdk/verification_stream.rb +177 -0
  641. data/lib/reacon-sdk/version.rb +15 -0
  642. data/lib/reacon-sdk.rb +673 -0
  643. data/reacon-sdk.gemspec +44 -0
  644. data/spec/spec_helper.rb +111 -0
  645. metadata +809 -0
@@ -0,0 +1,103 @@
1
+ =begin
2
+ #Reacon API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.25.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Reacon
17
+ module MailPostPortfolioSuppressionsRequest
18
+ class << self
19
+ # List of class defined in anyOf (OpenAPI v3)
20
+ def openapi_any_of
21
+ [
22
+ :'MailPostPortfolioSuppressionsRequestAnyOf',
23
+ :'MailPostPortfolioSuppressionsRequestAnyOf1'
24
+ ]
25
+ end
26
+
27
+ # Builds the object
28
+ # @param [Mixed] Data to be matched against the list of anyOf items
29
+ # @return [Object] Returns the model or the data itself
30
+ def build(data)
31
+ # Go through the list of anyOf items and attempt to identify the appropriate one.
32
+ # Note:
33
+ # - No advanced validation of types in some cases (e.g. "x: { type: string }" will happily match { x: 123 })
34
+ # due to the way the deserialization is made in the base_object template (it just casts without verifying).
35
+ # - TODO: scalar values are de facto behaving as if they were nullable.
36
+ # - TODO: logging when debugging is set.
37
+ openapi_any_of.each do |klass|
38
+ begin
39
+ next if klass == :AnyType # "nullable: true"
40
+ return find_and_cast_into_type(klass, data)
41
+ rescue # rescue all errors so we keep iterating even if the current item lookup raises
42
+ end
43
+ end
44
+
45
+ openapi_any_of.include?(:AnyType) ? data : nil
46
+ end
47
+
48
+ private
49
+
50
+ SchemaMismatchError = Class.new(StandardError)
51
+
52
+ # Note: 'File' is missing here because in the regular case we get the data _after_ a call to JSON.parse.
53
+ def find_and_cast_into_type(klass, data)
54
+ return if data.nil?
55
+
56
+ case klass.to_s
57
+ when 'Boolean'
58
+ return data if data.instance_of?(TrueClass) || data.instance_of?(FalseClass)
59
+ when 'Float'
60
+ return data if data.instance_of?(Float)
61
+ when 'Integer'
62
+ return data if data.instance_of?(Integer)
63
+ when 'Time'
64
+ return Time.parse(data)
65
+ when 'Date'
66
+ return Date.iso8601(data)
67
+ when 'String'
68
+ return data if data.instance_of?(String)
69
+ when 'Object' # "type: object"
70
+ return data if data.instance_of?(Hash)
71
+ when /\AArray<(?<sub_type>.+)>\z/ # "type: array"
72
+ if data.instance_of?(Array)
73
+ sub_type = Regexp.last_match[:sub_type]
74
+ return data.map { |item| find_and_cast_into_type(sub_type, item) }
75
+ end
76
+ when /\AHash<String, (?<sub_type>.+)>\z/ # "type: object" with "additionalProperties: { ... }"
77
+ if data.instance_of?(Hash) && data.keys.all? { |k| k.instance_of?(Symbol) || k.instance_of?(String) }
78
+ sub_type = Regexp.last_match[:sub_type]
79
+ return data.each_with_object({}) { |(k, v), hsh| hsh[k] = find_and_cast_into_type(sub_type, v) }
80
+ end
81
+ else # model
82
+ const = Reacon.const_get(klass)
83
+ if const
84
+ if const.respond_to?(:openapi_any_of) # nested anyOf model
85
+ model = const.build(data)
86
+ return model if model
87
+ else
88
+ # raise if data contains keys that are not known to the model
89
+ raise if const.respond_to?(:acceptable_attributes) && !(data.keys - const.acceptable_attributes).empty?
90
+ model = const.build_from_hash(data)
91
+ return model if model
92
+ end
93
+ end
94
+ end
95
+
96
+ raise # if no match by now, raise
97
+ rescue
98
+ raise SchemaMismatchError, "#{data} doesn't match the #{klass} type"
99
+ end
100
+ end
101
+ end
102
+
103
+ end
@@ -0,0 +1,262 @@
1
+ =begin
2
+ #Reacon API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.25.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Reacon
17
+ class MailPostPortfolioSuppressionsRequestAnyOf < ApiModelBase
18
+ attr_accessor :reason
19
+
20
+ attr_accessor :scope
21
+
22
+ attr_accessor :value
23
+
24
+ class EnumAttributeValidator
25
+ attr_reader :datatype
26
+ attr_reader :allowable_values
27
+
28
+ def initialize(datatype, allowable_values)
29
+ @allowable_values = allowable_values.map do |value|
30
+ case datatype.to_s
31
+ when /Integer/i
32
+ value.to_i
33
+ when /Float/i
34
+ value.to_f
35
+ else
36
+ value
37
+ end
38
+ end
39
+ end
40
+
41
+ def valid?(value)
42
+ !value || allowable_values.include?(value)
43
+ end
44
+ end
45
+
46
+ # Attribute mapping from ruby-style variable name to JSON key.
47
+ def self.attribute_map
48
+ {
49
+ :'reason' => :'reason',
50
+ :'scope' => :'scope',
51
+ :'value' => :'value'
52
+ }
53
+ end
54
+
55
+ # Returns attribute mapping this model knows about
56
+ def self.acceptable_attribute_map
57
+ attribute_map
58
+ end
59
+
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ acceptable_attribute_map.values
63
+ end
64
+
65
+ # Attribute type mapping.
66
+ def self.openapi_types
67
+ {
68
+ :'reason' => :'String',
69
+ :'scope' => :'String',
70
+ :'value' => :'String'
71
+ }
72
+ end
73
+
74
+ # List of attributes with nullable: true
75
+ def self.openapi_nullable
76
+ Set.new([
77
+ ])
78
+ end
79
+
80
+ # Initializes the object
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ def initialize(attributes = {})
83
+ if (!attributes.is_a?(Hash))
84
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Reacon::MailPostPortfolioSuppressionsRequestAnyOf` initialize method"
85
+ end
86
+
87
+ # check to see if the attribute exists and convert string to symbol for hash key
88
+ acceptable_attribute_map = self.class.acceptable_attribute_map
89
+ attributes = attributes.each_with_object({}) { |(k, v), h|
90
+ if (!acceptable_attribute_map.key?(k.to_sym))
91
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Reacon::MailPostPortfolioSuppressionsRequestAnyOf`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
92
+ end
93
+ h[k.to_sym] = v
94
+ }
95
+
96
+ if attributes.key?(:'reason')
97
+ self.reason = attributes[:'reason']
98
+ else
99
+ self.reason = 'agency policy'
100
+ end
101
+
102
+ if attributes.key?(:'scope')
103
+ self.scope = attributes[:'scope']
104
+ else
105
+ self.scope = nil
106
+ end
107
+
108
+ if attributes.key?(:'value')
109
+ self.value = attributes[:'value']
110
+ else
111
+ self.value = nil
112
+ end
113
+ end
114
+
115
+ # Show invalid properties with the reasons. Usually used together with valid?
116
+ # @return Array for valid properties with the reasons
117
+ def list_invalid_properties
118
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
119
+ invalid_properties = Array.new
120
+ if !@reason.nil? && @reason.to_s.length > 500
121
+ invalid_properties.push('invalid value for "reason", the character length must be smaller than or equal to 500.')
122
+ end
123
+
124
+ if !@reason.nil? && @reason.to_s.length < 1
125
+ invalid_properties.push('invalid value for "reason", the character length must be greater than or equal to 1.')
126
+ end
127
+
128
+ if @scope.nil?
129
+ invalid_properties.push('invalid value for "scope", scope cannot be nil.')
130
+ end
131
+
132
+ if @value.nil?
133
+ invalid_properties.push('invalid value for "value", value cannot be nil.')
134
+ end
135
+
136
+ if @value.to_s.length > 320
137
+ invalid_properties.push('invalid value for "value", the character length must be smaller than or equal to 320.')
138
+ end
139
+
140
+ invalid_properties
141
+ end
142
+
143
+ # Check to see if the all the properties in the model are valid
144
+ # @return true if the model is valid
145
+ def valid?
146
+ warn '[DEPRECATED] the `valid?` method is obsolete'
147
+ return false if !@reason.nil? && @reason.to_s.length > 500
148
+ return false if !@reason.nil? && @reason.to_s.length < 1
149
+ return false if @scope.nil?
150
+ scope_validator = EnumAttributeValidator.new('String', ["email"])
151
+ return false unless scope_validator.valid?(@scope)
152
+ return false if @value.nil?
153
+ return false if @value.to_s.length > 320
154
+ true
155
+ end
156
+
157
+ # Custom attribute writer method with validation
158
+ # @param [Object] reason Value to be assigned
159
+ def reason=(reason)
160
+ if reason.nil?
161
+ fail ArgumentError, 'reason cannot be nil'
162
+ end
163
+
164
+ if reason.to_s.length > 500
165
+ fail ArgumentError, 'invalid value for "reason", the character length must be smaller than or equal to 500.'
166
+ end
167
+
168
+ if reason.to_s.length < 1
169
+ fail ArgumentError, 'invalid value for "reason", the character length must be greater than or equal to 1.'
170
+ end
171
+
172
+ @reason = reason
173
+ end
174
+
175
+ # Custom attribute writer method checking allowed values (enum).
176
+ # @param [Object] scope Object to be assigned
177
+ def scope=(scope)
178
+ validator = EnumAttributeValidator.new('String', ["email"])
179
+ unless validator.valid?(scope)
180
+ fail ArgumentError, "invalid value for \"scope\", must be one of #{validator.allowable_values}."
181
+ end
182
+ @scope = scope
183
+ end
184
+
185
+ # Custom attribute writer method with validation
186
+ # @param [Object] value Value to be assigned
187
+ def value=(value)
188
+ if value.nil?
189
+ fail ArgumentError, 'value cannot be nil'
190
+ end
191
+
192
+ if value.to_s.length > 320
193
+ fail ArgumentError, 'invalid value for "value", the character length must be smaller than or equal to 320.'
194
+ end
195
+
196
+ @value = value
197
+ end
198
+
199
+ # Checks equality by comparing each attribute.
200
+ # @param [Object] Object to be compared
201
+ def ==(o)
202
+ return true if self.equal?(o)
203
+ self.class == o.class &&
204
+ reason == o.reason &&
205
+ scope == o.scope &&
206
+ value == o.value
207
+ end
208
+
209
+ # @see the `==` method
210
+ # @param [Object] Object to be compared
211
+ def eql?(o)
212
+ self == o
213
+ end
214
+
215
+ # Calculates hash code according to all attributes.
216
+ # @return [Integer] Hash code
217
+ def hash
218
+ [reason, scope, value].hash
219
+ end
220
+
221
+ # Builds the object from hash
222
+ # @param [Hash] attributes Model attributes in the form of hash
223
+ # @return [Object] Returns the model itself
224
+ def self.build_from_hash(attributes)
225
+ return nil unless attributes.is_a?(Hash)
226
+ attributes = attributes.transform_keys(&:to_sym)
227
+ transformed_hash = {}
228
+ openapi_types.each_pair do |key, type|
229
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
230
+ transformed_hash["#{key}"] = nil
231
+ elsif type =~ /\AArray<(.*)>/i
232
+ # check to ensure the input is an array given that the attribute
233
+ # is documented as an array but the input is not
234
+ if attributes[attribute_map[key]].is_a?(Array)
235
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
236
+ end
237
+ elsif !attributes[attribute_map[key]].nil?
238
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
239
+ end
240
+ end
241
+ new(transformed_hash)
242
+ end
243
+
244
+ # Returns the object in the form of hash
245
+ # @return [Hash] Returns the object in the form of hash
246
+ def to_hash
247
+ hash = {}
248
+ self.class.attribute_map.each_pair do |attr, param|
249
+ value = self.send(attr)
250
+ if value.nil?
251
+ is_nullable = self.class.openapi_nullable.include?(attr)
252
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
253
+ end
254
+
255
+ hash[param] = _to_hash(value)
256
+ end
257
+ hash
258
+ end
259
+
260
+ end
261
+
262
+ end
@@ -0,0 +1,282 @@
1
+ =begin
2
+ #Reacon API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 0.1.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.25.0
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module Reacon
17
+ class MailPostPortfolioSuppressionsRequestAnyOf1 < ApiModelBase
18
+ attr_accessor :reason
19
+
20
+ attr_accessor :scope
21
+
22
+ attr_accessor :value
23
+
24
+ class EnumAttributeValidator
25
+ attr_reader :datatype
26
+ attr_reader :allowable_values
27
+
28
+ def initialize(datatype, allowable_values)
29
+ @allowable_values = allowable_values.map do |value|
30
+ case datatype.to_s
31
+ when /Integer/i
32
+ value.to_i
33
+ when /Float/i
34
+ value.to_f
35
+ else
36
+ value
37
+ end
38
+ end
39
+ end
40
+
41
+ def valid?(value)
42
+ !value || allowable_values.include?(value)
43
+ end
44
+ end
45
+
46
+ # Attribute mapping from ruby-style variable name to JSON key.
47
+ def self.attribute_map
48
+ {
49
+ :'reason' => :'reason',
50
+ :'scope' => :'scope',
51
+ :'value' => :'value'
52
+ }
53
+ end
54
+
55
+ # Returns attribute mapping this model knows about
56
+ def self.acceptable_attribute_map
57
+ attribute_map
58
+ end
59
+
60
+ # Returns all the JSON keys this model knows about
61
+ def self.acceptable_attributes
62
+ acceptable_attribute_map.values
63
+ end
64
+
65
+ # Attribute type mapping.
66
+ def self.openapi_types
67
+ {
68
+ :'reason' => :'String',
69
+ :'scope' => :'String',
70
+ :'value' => :'String'
71
+ }
72
+ end
73
+
74
+ # List of attributes with nullable: true
75
+ def self.openapi_nullable
76
+ Set.new([
77
+ ])
78
+ end
79
+
80
+ # Initializes the object
81
+ # @param [Hash] attributes Model attributes in the form of hash
82
+ def initialize(attributes = {})
83
+ if (!attributes.is_a?(Hash))
84
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Reacon::MailPostPortfolioSuppressionsRequestAnyOf1` initialize method"
85
+ end
86
+
87
+ # check to see if the attribute exists and convert string to symbol for hash key
88
+ acceptable_attribute_map = self.class.acceptable_attribute_map
89
+ attributes = attributes.each_with_object({}) { |(k, v), h|
90
+ if (!acceptable_attribute_map.key?(k.to_sym))
91
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Reacon::MailPostPortfolioSuppressionsRequestAnyOf1`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
92
+ end
93
+ h[k.to_sym] = v
94
+ }
95
+
96
+ if attributes.key?(:'reason')
97
+ self.reason = attributes[:'reason']
98
+ else
99
+ self.reason = 'agency policy'
100
+ end
101
+
102
+ if attributes.key?(:'scope')
103
+ self.scope = attributes[:'scope']
104
+ else
105
+ self.scope = nil
106
+ end
107
+
108
+ if attributes.key?(:'value')
109
+ self.value = attributes[:'value']
110
+ else
111
+ self.value = nil
112
+ end
113
+ end
114
+
115
+ # Show invalid properties with the reasons. Usually used together with valid?
116
+ # @return Array for valid properties with the reasons
117
+ def list_invalid_properties
118
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
119
+ invalid_properties = Array.new
120
+ if !@reason.nil? && @reason.to_s.length > 500
121
+ invalid_properties.push('invalid value for "reason", the character length must be smaller than or equal to 500.')
122
+ end
123
+
124
+ if !@reason.nil? && @reason.to_s.length < 1
125
+ invalid_properties.push('invalid value for "reason", the character length must be greater than or equal to 1.')
126
+ end
127
+
128
+ if @scope.nil?
129
+ invalid_properties.push('invalid value for "scope", scope cannot be nil.')
130
+ end
131
+
132
+ if @value.nil?
133
+ invalid_properties.push('invalid value for "value", value cannot be nil.')
134
+ end
135
+
136
+ if @value.to_s.length > 253
137
+ invalid_properties.push('invalid value for "value", the character length must be smaller than or equal to 253.')
138
+ end
139
+
140
+ if @value.to_s.length < 1
141
+ invalid_properties.push('invalid value for "value", the character length must be greater than or equal to 1.')
142
+ end
143
+
144
+ pattern = Regexp.new(/^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?$/)
145
+ if @value !~ pattern
146
+ invalid_properties.push("invalid value for \"value\", must conform to the pattern #{pattern}.")
147
+ end
148
+
149
+ invalid_properties
150
+ end
151
+
152
+ # Check to see if the all the properties in the model are valid
153
+ # @return true if the model is valid
154
+ def valid?
155
+ warn '[DEPRECATED] the `valid?` method is obsolete'
156
+ return false if !@reason.nil? && @reason.to_s.length > 500
157
+ return false if !@reason.nil? && @reason.to_s.length < 1
158
+ return false if @scope.nil?
159
+ scope_validator = EnumAttributeValidator.new('String', ["domain"])
160
+ return false unless scope_validator.valid?(@scope)
161
+ return false if @value.nil?
162
+ return false if @value.to_s.length > 253
163
+ return false if @value.to_s.length < 1
164
+ return false if @value !~ Regexp.new(/^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?$/)
165
+ true
166
+ end
167
+
168
+ # Custom attribute writer method with validation
169
+ # @param [Object] reason Value to be assigned
170
+ def reason=(reason)
171
+ if reason.nil?
172
+ fail ArgumentError, 'reason cannot be nil'
173
+ end
174
+
175
+ if reason.to_s.length > 500
176
+ fail ArgumentError, 'invalid value for "reason", the character length must be smaller than or equal to 500.'
177
+ end
178
+
179
+ if reason.to_s.length < 1
180
+ fail ArgumentError, 'invalid value for "reason", the character length must be greater than or equal to 1.'
181
+ end
182
+
183
+ @reason = reason
184
+ end
185
+
186
+ # Custom attribute writer method checking allowed values (enum).
187
+ # @param [Object] scope Object to be assigned
188
+ def scope=(scope)
189
+ validator = EnumAttributeValidator.new('String', ["domain"])
190
+ unless validator.valid?(scope)
191
+ fail ArgumentError, "invalid value for \"scope\", must be one of #{validator.allowable_values}."
192
+ end
193
+ @scope = scope
194
+ end
195
+
196
+ # Custom attribute writer method with validation
197
+ # @param [Object] value Value to be assigned
198
+ def value=(value)
199
+ if value.nil?
200
+ fail ArgumentError, 'value cannot be nil'
201
+ end
202
+
203
+ if value.to_s.length > 253
204
+ fail ArgumentError, 'invalid value for "value", the character length must be smaller than or equal to 253.'
205
+ end
206
+
207
+ if value.to_s.length < 1
208
+ fail ArgumentError, 'invalid value for "value", the character length must be greater than or equal to 1.'
209
+ end
210
+
211
+ pattern = Regexp.new(/^(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?$/)
212
+ if value !~ pattern
213
+ fail ArgumentError, "invalid value for \"value\", must conform to the pattern #{pattern}."
214
+ end
215
+
216
+ @value = value
217
+ end
218
+
219
+ # Checks equality by comparing each attribute.
220
+ # @param [Object] Object to be compared
221
+ def ==(o)
222
+ return true if self.equal?(o)
223
+ self.class == o.class &&
224
+ reason == o.reason &&
225
+ scope == o.scope &&
226
+ value == o.value
227
+ end
228
+
229
+ # @see the `==` method
230
+ # @param [Object] Object to be compared
231
+ def eql?(o)
232
+ self == o
233
+ end
234
+
235
+ # Calculates hash code according to all attributes.
236
+ # @return [Integer] Hash code
237
+ def hash
238
+ [reason, scope, value].hash
239
+ end
240
+
241
+ # Builds the object from hash
242
+ # @param [Hash] attributes Model attributes in the form of hash
243
+ # @return [Object] Returns the model itself
244
+ def self.build_from_hash(attributes)
245
+ return nil unless attributes.is_a?(Hash)
246
+ attributes = attributes.transform_keys(&:to_sym)
247
+ transformed_hash = {}
248
+ openapi_types.each_pair do |key, type|
249
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
250
+ transformed_hash["#{key}"] = nil
251
+ elsif type =~ /\AArray<(.*)>/i
252
+ # check to ensure the input is an array given that the attribute
253
+ # is documented as an array but the input is not
254
+ if attributes[attribute_map[key]].is_a?(Array)
255
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
256
+ end
257
+ elsif !attributes[attribute_map[key]].nil?
258
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
259
+ end
260
+ end
261
+ new(transformed_hash)
262
+ end
263
+
264
+ # Returns the object in the form of hash
265
+ # @return [Hash] Returns the object in the form of hash
266
+ def to_hash
267
+ hash = {}
268
+ self.class.attribute_map.each_pair do |attr, param|
269
+ value = self.send(attr)
270
+ if value.nil?
271
+ is_nullable = self.class.openapi_nullable.include?(attr)
272
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
273
+ end
274
+
275
+ hash[param] = _to_hash(value)
276
+ end
277
+ hash
278
+ end
279
+
280
+ end
281
+
282
+ end