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,501 @@
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
+ # Additional server validation applies; this structural schema does not express every contextual or cross-field rule.
18
+ class MailPostCadencesRequestNodesInnerAnyOf5Experiment < ApiModelBase
19
+ attr_accessor :assignment_unit
20
+
21
+ attr_accessor :attribution_window_ms
22
+
23
+ attr_accessor :guardrail_metrics
24
+
25
+ attr_accessor :hypothesis
26
+
27
+ attr_accessor :id
28
+
29
+ attr_accessor :minimum_runtime_ms
30
+
31
+ attr_accessor :minimum_sample_size
32
+
33
+ attr_accessor :name
34
+
35
+ attr_accessor :primary_metric
36
+
37
+ attr_accessor :variants
38
+
39
+ class EnumAttributeValidator
40
+ attr_reader :datatype
41
+ attr_reader :allowable_values
42
+
43
+ def initialize(datatype, allowable_values)
44
+ @allowable_values = allowable_values.map do |value|
45
+ case datatype.to_s
46
+ when /Integer/i
47
+ value.to_i
48
+ when /Float/i
49
+ value.to_f
50
+ else
51
+ value
52
+ end
53
+ end
54
+ end
55
+
56
+ def valid?(value)
57
+ !value || allowable_values.include?(value)
58
+ end
59
+ end
60
+
61
+ # Attribute mapping from ruby-style variable name to JSON key.
62
+ def self.attribute_map
63
+ {
64
+ :'assignment_unit' => :'assignmentUnit',
65
+ :'attribution_window_ms' => :'attributionWindowMs',
66
+ :'guardrail_metrics' => :'guardrailMetrics',
67
+ :'hypothesis' => :'hypothesis',
68
+ :'id' => :'id',
69
+ :'minimum_runtime_ms' => :'minimumRuntimeMs',
70
+ :'minimum_sample_size' => :'minimumSampleSize',
71
+ :'name' => :'name',
72
+ :'primary_metric' => :'primaryMetric',
73
+ :'variants' => :'variants'
74
+ }
75
+ end
76
+
77
+ # Returns attribute mapping this model knows about
78
+ def self.acceptable_attribute_map
79
+ attribute_map
80
+ end
81
+
82
+ # Returns all the JSON keys this model knows about
83
+ def self.acceptable_attributes
84
+ acceptable_attribute_map.values
85
+ end
86
+
87
+ # Attribute type mapping.
88
+ def self.openapi_types
89
+ {
90
+ :'assignment_unit' => :'String',
91
+ :'attribution_window_ms' => :'Integer',
92
+ :'guardrail_metrics' => :'Array<String>',
93
+ :'hypothesis' => :'String',
94
+ :'id' => :'String',
95
+ :'minimum_runtime_ms' => :'Integer',
96
+ :'minimum_sample_size' => :'Integer',
97
+ :'name' => :'String',
98
+ :'primary_metric' => :'String',
99
+ :'variants' => :'Array<MailPostCadencesRequestNodesInnerAnyOf5ExperimentVariantsInner>'
100
+ }
101
+ end
102
+
103
+ # List of attributes with nullable: true
104
+ def self.openapi_nullable
105
+ Set.new([
106
+ ])
107
+ end
108
+
109
+ # Initializes the object
110
+ # @param [Hash] attributes Model attributes in the form of hash
111
+ def initialize(attributes = {})
112
+ if (!attributes.is_a?(Hash))
113
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Reacon::MailPostCadencesRequestNodesInnerAnyOf5Experiment` initialize method"
114
+ end
115
+
116
+ # check to see if the attribute exists and convert string to symbol for hash key
117
+ acceptable_attribute_map = self.class.acceptable_attribute_map
118
+ attributes = attributes.each_with_object({}) { |(k, v), h|
119
+ if (!acceptable_attribute_map.key?(k.to_sym))
120
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Reacon::MailPostCadencesRequestNodesInnerAnyOf5Experiment`. Please check the name to make sure it's valid. List of attributes: " + acceptable_attribute_map.keys.inspect
121
+ end
122
+ h[k.to_sym] = v
123
+ }
124
+
125
+ if attributes.key?(:'assignment_unit')
126
+ self.assignment_unit = attributes[:'assignment_unit']
127
+ else
128
+ self.assignment_unit = nil
129
+ end
130
+
131
+ if attributes.key?(:'attribution_window_ms')
132
+ self.attribution_window_ms = attributes[:'attribution_window_ms']
133
+ end
134
+
135
+ if attributes.key?(:'guardrail_metrics')
136
+ if (value = attributes[:'guardrail_metrics']).is_a?(Array)
137
+ self.guardrail_metrics = value
138
+ end
139
+ end
140
+
141
+ if attributes.key?(:'hypothesis')
142
+ self.hypothesis = attributes[:'hypothesis']
143
+ end
144
+
145
+ if attributes.key?(:'id')
146
+ self.id = attributes[:'id']
147
+ else
148
+ self.id = nil
149
+ end
150
+
151
+ if attributes.key?(:'minimum_runtime_ms')
152
+ self.minimum_runtime_ms = attributes[:'minimum_runtime_ms']
153
+ end
154
+
155
+ if attributes.key?(:'minimum_sample_size')
156
+ self.minimum_sample_size = attributes[:'minimum_sample_size']
157
+ end
158
+
159
+ if attributes.key?(:'name')
160
+ self.name = attributes[:'name']
161
+ else
162
+ self.name = nil
163
+ end
164
+
165
+ if attributes.key?(:'primary_metric')
166
+ self.primary_metric = attributes[:'primary_metric']
167
+ end
168
+
169
+ if attributes.key?(:'variants')
170
+ if (value = attributes[:'variants']).is_a?(Array)
171
+ self.variants = value
172
+ end
173
+ else
174
+ self.variants = nil
175
+ end
176
+ end
177
+
178
+ # Show invalid properties with the reasons. Usually used together with valid?
179
+ # @return Array for valid properties with the reasons
180
+ def list_invalid_properties
181
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
182
+ invalid_properties = Array.new
183
+ if @assignment_unit.nil?
184
+ invalid_properties.push('invalid value for "assignment_unit", assignment_unit cannot be nil.')
185
+ end
186
+
187
+ if !@attribution_window_ms.nil? && @attribution_window_ms > 31536000000
188
+ invalid_properties.push('invalid value for "attribution_window_ms", must be smaller than or equal to 31536000000.')
189
+ end
190
+
191
+ if !@attribution_window_ms.nil? && @attribution_window_ms < 60000
192
+ invalid_properties.push('invalid value for "attribution_window_ms", must be greater than or equal to 60000.')
193
+ end
194
+
195
+ if !@guardrail_metrics.nil? && @guardrail_metrics.length > 4
196
+ invalid_properties.push('invalid value for "guardrail_metrics", number of items must be less than or equal to 4.')
197
+ end
198
+
199
+ if !@hypothesis.nil? && @hypothesis.to_s.length > 2000
200
+ invalid_properties.push('invalid value for "hypothesis", the character length must be smaller than or equal to 2000.')
201
+ end
202
+
203
+ if !@hypothesis.nil? && @hypothesis.to_s.length < 3
204
+ invalid_properties.push('invalid value for "hypothesis", the character length must be greater than or equal to 3.')
205
+ end
206
+
207
+ if @id.nil?
208
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
209
+ end
210
+
211
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]{1,100}$/)
212
+ if @id !~ pattern
213
+ invalid_properties.push("invalid value for \"id\", must conform to the pattern #{pattern}.")
214
+ end
215
+
216
+ if !@minimum_runtime_ms.nil? && @minimum_runtime_ms > 31536000000
217
+ invalid_properties.push('invalid value for "minimum_runtime_ms", must be smaller than or equal to 31536000000.')
218
+ end
219
+
220
+ if !@minimum_runtime_ms.nil? && @minimum_runtime_ms < 60000
221
+ invalid_properties.push('invalid value for "minimum_runtime_ms", must be greater than or equal to 60000.')
222
+ end
223
+
224
+ if !@minimum_sample_size.nil? && @minimum_sample_size > 100000000
225
+ invalid_properties.push('invalid value for "minimum_sample_size", must be smaller than or equal to 100000000.')
226
+ end
227
+
228
+ if !@minimum_sample_size.nil? && @minimum_sample_size < 2
229
+ invalid_properties.push('invalid value for "minimum_sample_size", must be greater than or equal to 2.')
230
+ end
231
+
232
+ if @name.nil?
233
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
234
+ end
235
+
236
+ if @name.to_s.length > 160
237
+ invalid_properties.push('invalid value for "name", the character length must be smaller than or equal to 160.')
238
+ end
239
+
240
+ if @name.to_s.length < 1
241
+ invalid_properties.push('invalid value for "name", the character length must be greater than or equal to 1.')
242
+ end
243
+
244
+ if @variants.nil?
245
+ invalid_properties.push('invalid value for "variants", variants cannot be nil.')
246
+ end
247
+
248
+ if @variants.length > 10
249
+ invalid_properties.push('invalid value for "variants", number of items must be less than or equal to 10.')
250
+ end
251
+
252
+ if @variants.length < 2
253
+ invalid_properties.push('invalid value for "variants", number of items must be greater than or equal to 2.')
254
+ end
255
+
256
+ invalid_properties
257
+ end
258
+
259
+ # Check to see if the all the properties in the model are valid
260
+ # @return true if the model is valid
261
+ def valid?
262
+ warn '[DEPRECATED] the `valid?` method is obsolete'
263
+ return false if @assignment_unit.nil?
264
+ assignment_unit_validator = EnumAttributeValidator.new('String', ["contact"])
265
+ return false unless assignment_unit_validator.valid?(@assignment_unit)
266
+ return false if !@attribution_window_ms.nil? && @attribution_window_ms > 31536000000
267
+ return false if !@attribution_window_ms.nil? && @attribution_window_ms < 60000
268
+ return false if !@guardrail_metrics.nil? && @guardrail_metrics.length > 4
269
+ return false if !@hypothesis.nil? && @hypothesis.to_s.length > 2000
270
+ return false if !@hypothesis.nil? && @hypothesis.to_s.length < 3
271
+ return false if @id.nil?
272
+ return false if @id !~ Regexp.new(/^[a-zA-Z0-9_-]{1,100}$/)
273
+ return false if !@minimum_runtime_ms.nil? && @minimum_runtime_ms > 31536000000
274
+ return false if !@minimum_runtime_ms.nil? && @minimum_runtime_ms < 60000
275
+ return false if !@minimum_sample_size.nil? && @minimum_sample_size > 100000000
276
+ return false if !@minimum_sample_size.nil? && @minimum_sample_size < 2
277
+ return false if @name.nil?
278
+ return false if @name.to_s.length > 160
279
+ return false if @name.to_s.length < 1
280
+ primary_metric_validator = EnumAttributeValidator.new('String', ["positive_reply", "meeting_booked", "human_reply", "click", "open", "custom"])
281
+ return false unless primary_metric_validator.valid?(@primary_metric)
282
+ return false if @variants.nil?
283
+ return false if @variants.length > 10
284
+ return false if @variants.length < 2
285
+ true
286
+ end
287
+
288
+ # Custom attribute writer method checking allowed values (enum).
289
+ # @param [Object] assignment_unit Object to be assigned
290
+ def assignment_unit=(assignment_unit)
291
+ validator = EnumAttributeValidator.new('String', ["contact"])
292
+ unless validator.valid?(assignment_unit)
293
+ fail ArgumentError, "invalid value for \"assignment_unit\", must be one of #{validator.allowable_values}."
294
+ end
295
+ @assignment_unit = assignment_unit
296
+ end
297
+
298
+ # Custom attribute writer method with validation
299
+ # @param [Object] attribution_window_ms Value to be assigned
300
+ def attribution_window_ms=(attribution_window_ms)
301
+ if attribution_window_ms.nil?
302
+ fail ArgumentError, 'attribution_window_ms cannot be nil'
303
+ end
304
+
305
+ if attribution_window_ms > 31536000000
306
+ fail ArgumentError, 'invalid value for "attribution_window_ms", must be smaller than or equal to 31536000000.'
307
+ end
308
+
309
+ if attribution_window_ms < 60000
310
+ fail ArgumentError, 'invalid value for "attribution_window_ms", must be greater than or equal to 60000.'
311
+ end
312
+
313
+ @attribution_window_ms = attribution_window_ms
314
+ end
315
+
316
+ # Custom attribute writer method with validation
317
+ # @param [Object] hypothesis Value to be assigned
318
+ def hypothesis=(hypothesis)
319
+ if hypothesis.nil?
320
+ fail ArgumentError, 'hypothesis cannot be nil'
321
+ end
322
+
323
+ if hypothesis.to_s.length > 2000
324
+ fail ArgumentError, 'invalid value for "hypothesis", the character length must be smaller than or equal to 2000.'
325
+ end
326
+
327
+ if hypothesis.to_s.length < 3
328
+ fail ArgumentError, 'invalid value for "hypothesis", the character length must be greater than or equal to 3.'
329
+ end
330
+
331
+ @hypothesis = hypothesis
332
+ end
333
+
334
+ # Custom attribute writer method with validation
335
+ # @param [Object] id Value to be assigned
336
+ def id=(id)
337
+ if id.nil?
338
+ fail ArgumentError, 'id cannot be nil'
339
+ end
340
+
341
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]{1,100}$/)
342
+ if id !~ pattern
343
+ fail ArgumentError, "invalid value for \"id\", must conform to the pattern #{pattern}."
344
+ end
345
+
346
+ @id = id
347
+ end
348
+
349
+ # Custom attribute writer method with validation
350
+ # @param [Object] minimum_runtime_ms Value to be assigned
351
+ def minimum_runtime_ms=(minimum_runtime_ms)
352
+ if minimum_runtime_ms.nil?
353
+ fail ArgumentError, 'minimum_runtime_ms cannot be nil'
354
+ end
355
+
356
+ if minimum_runtime_ms > 31536000000
357
+ fail ArgumentError, 'invalid value for "minimum_runtime_ms", must be smaller than or equal to 31536000000.'
358
+ end
359
+
360
+ if minimum_runtime_ms < 60000
361
+ fail ArgumentError, 'invalid value for "minimum_runtime_ms", must be greater than or equal to 60000.'
362
+ end
363
+
364
+ @minimum_runtime_ms = minimum_runtime_ms
365
+ end
366
+
367
+ # Custom attribute writer method with validation
368
+ # @param [Object] minimum_sample_size Value to be assigned
369
+ def minimum_sample_size=(minimum_sample_size)
370
+ if minimum_sample_size.nil?
371
+ fail ArgumentError, 'minimum_sample_size cannot be nil'
372
+ end
373
+
374
+ if minimum_sample_size > 100000000
375
+ fail ArgumentError, 'invalid value for "minimum_sample_size", must be smaller than or equal to 100000000.'
376
+ end
377
+
378
+ if minimum_sample_size < 2
379
+ fail ArgumentError, 'invalid value for "minimum_sample_size", must be greater than or equal to 2.'
380
+ end
381
+
382
+ @minimum_sample_size = minimum_sample_size
383
+ end
384
+
385
+ # Custom attribute writer method with validation
386
+ # @param [Object] name Value to be assigned
387
+ def name=(name)
388
+ if name.nil?
389
+ fail ArgumentError, 'name cannot be nil'
390
+ end
391
+
392
+ if name.to_s.length > 160
393
+ fail ArgumentError, 'invalid value for "name", the character length must be smaller than or equal to 160.'
394
+ end
395
+
396
+ if name.to_s.length < 1
397
+ fail ArgumentError, 'invalid value for "name", the character length must be greater than or equal to 1.'
398
+ end
399
+
400
+ @name = name
401
+ end
402
+
403
+ # Custom attribute writer method checking allowed values (enum).
404
+ # @param [Object] primary_metric Object to be assigned
405
+ def primary_metric=(primary_metric)
406
+ validator = EnumAttributeValidator.new('String', ["positive_reply", "meeting_booked", "human_reply", "click", "open", "custom"])
407
+ unless validator.valid?(primary_metric)
408
+ fail ArgumentError, "invalid value for \"primary_metric\", must be one of #{validator.allowable_values}."
409
+ end
410
+ @primary_metric = primary_metric
411
+ end
412
+
413
+ # Custom attribute writer method with validation
414
+ # @param [Object] variants Value to be assigned
415
+ def variants=(variants)
416
+ if variants.nil?
417
+ fail ArgumentError, 'variants cannot be nil'
418
+ end
419
+
420
+ if variants.length > 10
421
+ fail ArgumentError, 'invalid value for "variants", number of items must be less than or equal to 10.'
422
+ end
423
+
424
+ if variants.length < 2
425
+ fail ArgumentError, 'invalid value for "variants", number of items must be greater than or equal to 2.'
426
+ end
427
+
428
+ @variants = variants
429
+ end
430
+
431
+ # Checks equality by comparing each attribute.
432
+ # @param [Object] Object to be compared
433
+ def ==(o)
434
+ return true if self.equal?(o)
435
+ self.class == o.class &&
436
+ assignment_unit == o.assignment_unit &&
437
+ attribution_window_ms == o.attribution_window_ms &&
438
+ guardrail_metrics == o.guardrail_metrics &&
439
+ hypothesis == o.hypothesis &&
440
+ id == o.id &&
441
+ minimum_runtime_ms == o.minimum_runtime_ms &&
442
+ minimum_sample_size == o.minimum_sample_size &&
443
+ name == o.name &&
444
+ primary_metric == o.primary_metric &&
445
+ variants == o.variants
446
+ end
447
+
448
+ # @see the `==` method
449
+ # @param [Object] Object to be compared
450
+ def eql?(o)
451
+ self == o
452
+ end
453
+
454
+ # Calculates hash code according to all attributes.
455
+ # @return [Integer] Hash code
456
+ def hash
457
+ [assignment_unit, attribution_window_ms, guardrail_metrics, hypothesis, id, minimum_runtime_ms, minimum_sample_size, name, primary_metric, variants].hash
458
+ end
459
+
460
+ # Builds the object from hash
461
+ # @param [Hash] attributes Model attributes in the form of hash
462
+ # @return [Object] Returns the model itself
463
+ def self.build_from_hash(attributes)
464
+ return nil unless attributes.is_a?(Hash)
465
+ attributes = attributes.transform_keys(&:to_sym)
466
+ transformed_hash = {}
467
+ openapi_types.each_pair do |key, type|
468
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
469
+ transformed_hash["#{key}"] = nil
470
+ elsif type =~ /\AArray<(.*)>/i
471
+ # check to ensure the input is an array given that the attribute
472
+ # is documented as an array but the input is not
473
+ if attributes[attribute_map[key]].is_a?(Array)
474
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
475
+ end
476
+ elsif !attributes[attribute_map[key]].nil?
477
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
478
+ end
479
+ end
480
+ new(transformed_hash)
481
+ end
482
+
483
+ # Returns the object in the form of hash
484
+ # @return [Hash] Returns the object in the form of hash
485
+ def to_hash
486
+ hash = {}
487
+ self.class.attribute_map.each_pair do |attr, param|
488
+ value = self.send(attr)
489
+ if value.nil?
490
+ is_nullable = self.class.openapi_nullable.include?(attr)
491
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
492
+ end
493
+
494
+ hash[param] = _to_hash(value)
495
+ end
496
+ hash
497
+ end
498
+
499
+ end
500
+
501
+ end