crimson-falcon 1.1.0 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (419) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +293 -70
  3. data/lib/crimson-falcon/api/activity_monitor.rb +120 -0
  4. data/lib/crimson-falcon/api/alerts.rb +88 -0
  5. data/lib/crimson-falcon/api/aspm.rb +133 -3
  6. data/lib/crimson-falcon/api/cloud_azure_registration.rb +318 -0
  7. data/lib/crimson-falcon/api/cloud_oci_registration.rb +4 -4
  8. data/lib/crimson-falcon/api/cloud_security_assets.rb +2 -2
  9. data/lib/crimson-falcon/api/container_image_compliance.rb +22 -22
  10. data/lib/crimson-falcon/api/cspm_registration.rb +69 -0
  11. data/lib/crimson-falcon/api/default.rb +0 -62
  12. data/lib/crimson-falcon/api/exposure_management.rb +67 -0
  13. data/lib/crimson-falcon/api/falcon_complete_dashboard.rb +71 -4
  14. data/lib/crimson-falcon/api/falcon_container_image.rb +121 -0
  15. data/lib/crimson-falcon/api/identity_protection.rb +2 -2
  16. data/lib/crimson-falcon/api/integration_builder.rb +313 -0
  17. data/lib/crimson-falcon/api/intel.rb +73 -0
  18. data/lib/crimson-falcon/api/intelligence_indicator_graph.rb +23 -15
  19. data/lib/crimson-falcon/api/inventories.rb +186 -0
  20. data/lib/crimson-falcon/api/kubernetes_container_compliance.rb +62 -0
  21. data/lib/crimson-falcon/api/kubernetes_protection.rb +3 -0
  22. data/lib/crimson-falcon/api/message_center.rb +4 -70
  23. data/lib/crimson-falcon/api/real_time_response_admin.rb +62 -0
  24. data/lib/crimson-falcon/api/release_notes.rb +76 -0
  25. data/lib/crimson-falcon/api/saa_s.rb +156 -0
  26. data/lib/crimson-falcon/api/security_check.rb +484 -0
  27. data/lib/crimson-falcon/api/system.rb +168 -0
  28. data/lib/crimson-falcon/api/user_management.rb +4 -4
  29. data/lib/crimson-falcon/models/account_integration289680abbdb24ecc9e55e90a4c2f1770.rb +443 -0
  30. data/lib/crimson-falcon/models/{types_query_result.rb → activity251e72f10e9424e568d72ab0351a6fb1b.rb} +17 -19
  31. data/lib/crimson-falcon/models/affected_entity9f6cb0be3b91460090c751db2c883b7c.rb +392 -0
  32. data/lib/crimson-falcon/models/alert85f2306d175b4314b4d51d0096103dcc.rb +539 -0
  33. data/lib/crimson-falcon/models/api_patch_rule_search_v1.rb +5 -0
  34. data/lib/crimson-falcon/models/api_rule_search_v1.rb +5 -0
  35. data/lib/crimson-falcon/models/{aspm_data.rb → aspm_inventory_data.rb} +3 -3
  36. data/lib/crimson-falcon/models/azure_additional_feature.rb +269 -0
  37. data/lib/crimson-falcon/models/azure_azure_registration_create_input.rb +497 -0
  38. data/lib/crimson-falcon/models/azure_azure_registration_create_request_ext_v1.rb +239 -0
  39. data/lib/crimson-falcon/models/azure_azure_registration_response_ext_v1.rb +266 -0
  40. data/lib/crimson-falcon/models/azure_azure_registration_update_input.rb +492 -0
  41. data/lib/crimson-falcon/models/azure_azure_registration_update_request_ext_v1.rb +239 -0
  42. data/lib/crimson-falcon/models/azure_delete_registration_response_ext_v1.rb +266 -0
  43. data/lib/crimson-falcon/models/azure_deleted_registration.rb +383 -0
  44. data/lib/crimson-falcon/models/azure_deleted_subscription_info.rb +267 -0
  45. data/lib/crimson-falcon/models/azure_event_hub_settings.rb +295 -0
  46. data/lib/crimson-falcon/models/azure_tenant_registration.rb +578 -0
  47. data/lib/crimson-falcon/models/cdrioamanager_get_cloud_event_ids_response.rb +266 -0
  48. data/lib/crimson-falcon/models/costs.rb +4 -4
  49. data/lib/crimson-falcon/models/criteria301f5eeae5ba41edb767b27e749f6375.rb +274 -0
  50. data/lib/crimson-falcon/models/data_transaction_response_dto31852908d6f14d268312c3fcdb497315.rb +365 -0
  51. data/lib/crimson-falcon/models/data_transaction_response_dto614da2e1369e44e596d2935db3da0365.rb +365 -0
  52. data/lib/crimson-falcon/models/data_transaction_response_dto_cdc34dae7da648de941209e7e6a30770.rb +365 -0
  53. data/lib/crimson-falcon/models/detects_external_alert.rb +18 -1
  54. data/lib/crimson-falcon/models/device3550eb212db1414995c297cdbfe5cc16.rb +552 -0
  55. data/lib/crimson-falcon/models/dismiss_affected.rb +257 -0
  56. data/lib/crimson-falcon/models/dismiss_security_check.rb +257 -0
  57. data/lib/crimson-falcon/models/distribution_descriptor.rb +283 -0
  58. data/lib/crimson-falcon/models/domain_actor_document.rb +10 -1
  59. data/lib/crimson-falcon/models/domain_aggregates_response.rb +4 -2
  60. data/lib/crimson-falcon/models/domain_aggregation_result.rb +267 -0
  61. data/lib/crimson-falcon/models/domain_aggregation_result_item.rb +331 -0
  62. data/lib/crimson-falcon/models/domain_cloud_group.rb +270 -0
  63. data/lib/crimson-falcon/models/domain_discover_api_host.rb +30 -1
  64. data/lib/crimson-falcon/models/domain_discover_apiio_t_host.rb +30 -1
  65. data/lib/crimson-falcon/models/domain_feature_status.rb +32 -15
  66. data/lib/crimson-falcon/models/domain_iot_imported_host.rb +405 -0
  67. data/lib/crimson-falcon/models/domain_kestrel_data_export_header_computation_function.rb +269 -0
  68. data/lib/crimson-falcon/models/domain_kestrel_data_export_header_mapping.rb +255 -0
  69. data/lib/crimson-falcon/models/domain_kestrel_data_export_params.rb +278 -0
  70. data/lib/crimson-falcon/models/{quickscanpro_mitre_attack.rb → domain_mitre_attack.rb} +23 -5
  71. data/lib/crimson-falcon/models/{quickscanpro_mitre_attack_parent.rb → domain_mitre_attack_parent.rb} +3 -3
  72. data/lib/crimson-falcon/models/domain_msa_meta_info.rb +4 -18
  73. data/lib/crimson-falcon/models/domain_news_document.rb +2 -2
  74. data/lib/crimson-falcon/models/domain_notification_config.rb +32 -4
  75. data/lib/crimson-falcon/models/domain_query_response.rb +8 -1
  76. data/lib/crimson-falcon/models/domain_report_metadata.rb +10 -15
  77. data/lib/crimson-falcon/models/domain_rule.rb +69 -63
  78. data/lib/crimson-falcon/models/domain_scan.rb +10 -1
  79. data/lib/crimson-falcon/models/domain_scheduled_report_v1.rb +15 -1
  80. data/lib/crimson-falcon/models/domain_vulnerability.rb +135 -38
  81. data/lib/crimson-falcon/models/domain_vulnerability_actor.rb +255 -0
  82. data/lib/crimson-falcon/models/{restapi_indicators_aggregates_request.rb → domain_vulnerability_affected_product.rb} +21 -17
  83. data/lib/crimson-falcon/models/domain_vulnerability_cvss_v2.rb +303 -0
  84. data/lib/crimson-falcon/models/domain_vulnerability_cvss_v3.rb +325 -0
  85. data/lib/crimson-falcon/models/domain_vulnerability_related_threat.rb +247 -0
  86. data/lib/crimson-falcon/models/domain_vulnerability_report.rb +265 -0
  87. data/lib/crimson-falcon/models/domain_xdr_params.rb +12 -1
  88. data/lib/crimson-falcon/models/error02abad40db9c4a4baf68f01bea6071c4.rb +264 -0
  89. data/lib/crimson-falcon/models/error068cf337479748d6ac14b4a9c4043a93.rb +264 -0
  90. data/lib/crimson-falcon/models/error208252f00cf64de68d28810846b7dd26.rb +264 -0
  91. data/lib/crimson-falcon/models/error20dfebe4526641bd81749e954da7890e.rb +264 -0
  92. data/lib/crimson-falcon/models/error2a083e88c6764d16bbb98873ef1e9e15.rb +264 -0
  93. data/lib/crimson-falcon/models/error2c3c8d4e65c3447a8eae772de1b0e3ef.rb +264 -0
  94. data/lib/crimson-falcon/models/error35d6bd13358246f9ae9ffbe791550e06.rb +264 -0
  95. data/lib/crimson-falcon/models/error476679d881284bdc9a5192128d50d4b6.rb +264 -0
  96. data/lib/crimson-falcon/models/error479167a4d6534b6a85ec7857c5fb14ba.rb +264 -0
  97. data/lib/crimson-falcon/models/error4bee1dd3515c454f83249366486164d0.rb +264 -0
  98. data/lib/crimson-falcon/models/error7bbeca3b1c2440f19c0730f62b3b6ef4.rb +264 -0
  99. data/lib/crimson-falcon/models/error878b6eeb86ef40cdb1ec5f1207207e09.rb +264 -0
  100. data/lib/crimson-falcon/models/error9cad4d8f334c467daf30ed3a72664779.rb +264 -0
  101. data/lib/crimson-falcon/models/error_bc084ac4caa243b199e2307fb94184c3.rb +264 -0
  102. data/lib/crimson-falcon/models/error_d3d26008b8464eeb912ff06244246cf2.rb +264 -0
  103. data/lib/crimson-falcon/models/error_f2e2dae6d0e945279a68e68afaee2d54.rb +264 -0
  104. data/lib/crimson-falcon/models/error_fa972818e96245a89bcee1f18b40eb0a.rb +264 -0
  105. data/lib/crimson-falcon/models/exposure_da5345c68b174f978f19999c3e00cab9.rb +300 -0
  106. data/lib/crimson-falcon/models/figapi_lookup_indicator.rb +468 -0
  107. data/lib/crimson-falcon/models/flightcontrolapi_grant_input.rb +11 -1
  108. data/lib/crimson-falcon/models/fwmgr_api_json_diff.rb +3 -3
  109. data/lib/crimson-falcon/models/fwmgr_api_rule_group_modify_request_v1.rb +1 -1
  110. data/lib/crimson-falcon/models/get_activity_monitor.rb +258 -0
  111. data/lib/crimson-falcon/models/get_affected.rb +257 -0
  112. data/lib/crimson-falcon/models/get_alerts_response.rb +258 -0
  113. data/lib/crimson-falcon/models/get_device_inventory.rb +258 -0
  114. data/lib/crimson-falcon/models/get_end_transaction.rb +258 -0
  115. data/lib/crimson-falcon/models/get_integrations.rb +258 -0
  116. data/lib/crimson-falcon/models/get_metrics.rb +258 -0
  117. data/lib/crimson-falcon/models/get_security_checks.rb +258 -0
  118. data/lib/crimson-falcon/models/get_security_compliance.rb +257 -0
  119. data/lib/crimson-falcon/models/get_supported_saas.rb +258 -0
  120. data/lib/crimson-falcon/models/get_system_logs.rb +258 -0
  121. data/lib/crimson-falcon/models/get_system_users.rb +258 -0
  122. data/lib/crimson-falcon/models/get_transaction_status.rb +258 -0
  123. data/lib/crimson-falcon/models/get_user_inventory.rb +258 -0
  124. data/lib/crimson-falcon/models/integration_a9d173a3bf93430f84054286043aa8e5.rb +305 -0
  125. data/lib/crimson-falcon/models/integration_e95afa6fc5e04968b0e9d83e90042eca.rb +365 -0
  126. data/lib/crimson-falcon/models/issue9a61d8c8ccac45858497af4786b275c7.rb +291 -0
  127. data/lib/crimson-falcon/models/meta17335150dd1a4934a3a031a7b41e650b.rb +270 -0
  128. data/lib/crimson-falcon/models/meta23005461ac9a41fbb4620fe4aa0a3438.rb +270 -0
  129. data/lib/crimson-falcon/models/meta27c23ca116c1477bb85e765b5e09af69.rb +270 -0
  130. data/lib/crimson-falcon/models/meta37a0d574ca884a2f8641e122e47a3ce9.rb +270 -0
  131. data/lib/crimson-falcon/models/meta4f2b2e3bbfd74a7fb14e0ca86dd47d57.rb +270 -0
  132. data/lib/crimson-falcon/models/meta4fda3fb731c54f5480750a508fa0142d.rb +270 -0
  133. data/lib/crimson-falcon/models/meta536da5d66c054c69889a624cf1068900.rb +270 -0
  134. data/lib/crimson-falcon/models/meta6dbc34e4022d4b5c9fe5785caf9801e7.rb +270 -0
  135. data/lib/crimson-falcon/models/meta77f6bf58ba0045649e59a4655807a6ab.rb +270 -0
  136. data/lib/crimson-falcon/models/meta9b68681eb9464c4e9612730248f519d6.rb +270 -0
  137. data/lib/crimson-falcon/models/meta_c84ad721c6a841869874276dd0683cbb.rb +270 -0
  138. data/lib/crimson-falcon/models/meta_d1db20ce08ad45b3987ead9035c153a9.rb +270 -0
  139. data/lib/crimson-falcon/models/meta_d43679bfb5f448afa0899baa948533d1.rb +270 -0
  140. data/lib/crimson-falcon/models/meta_e1df370799c7419d805c0f95b5d1ae90.rb +270 -0
  141. data/lib/crimson-falcon/models/meta_e4ad714b314449299eca720f9d63b718.rb +270 -0
  142. data/lib/crimson-falcon/models/meta_fb2fed2c461a4af583e5b3b790c82df1.rb +270 -0
  143. data/lib/crimson-falcon/models/meta_fe9ab4e0124e4f0fb9946562895a2c78.rb +270 -0
  144. data/lib/crimson-falcon/models/models_api_image_combined_export.rb +45 -1
  145. data/lib/crimson-falcon/models/models_cluster.rb +15 -1
  146. data/lib/crimson-falcon/models/models_config_info_type.rb +363 -0
  147. data/lib/crimson-falcon/models/models_elf_binary_info_type.rb +327 -0
  148. data/lib/crimson-falcon/models/models_he_string_file_info_type.rb +273 -0
  149. data/lib/crimson-falcon/models/models_he_string_info_type.rb +262 -0
  150. data/lib/crimson-falcon/models/models_image_info_type.rb +353 -0
  151. data/lib/crimson-falcon/models/models_image_metadata_type.rb +279 -0
  152. data/lib/crimson-falcon/models/models_inventory_engine_info_type.rb +278 -0
  153. data/lib/crimson-falcon/models/models_inventory_scan_request_type.rb +458 -0
  154. data/lib/crimson-falcon/models/models_inventory_type.rb +419 -0
  155. data/lib/crimson-falcon/models/models_layer_info_type.rb +322 -0
  156. data/lib/crimson-falcon/models/models_ml_model_type.rb +332 -0
  157. data/lib/crimson-falcon/models/models_scan_info_type.rb +279 -0
  158. data/lib/crimson-falcon/models/models_scan_request_type.rb +385 -0
  159. data/lib/crimson-falcon/models/pagination033f3d78a056499b8f4877419a0ab636.rb +305 -0
  160. data/lib/crimson-falcon/models/pagination080eaa160ef24b9ea15b29a7376520d1.rb +305 -0
  161. data/lib/crimson-falcon/models/pagination10594326d99a4b3a8681178b13e58952.rb +305 -0
  162. data/lib/crimson-falcon/models/pagination13aeb546de8049e7b3a1c36f9c93266b.rb +305 -0
  163. data/lib/crimson-falcon/models/pagination210dcb9a1e7d4355aa68be7ec0fd01f5.rb +305 -0
  164. data/lib/crimson-falcon/models/pagination30037a29e9404616b03177274ec26e23.rb +305 -0
  165. data/lib/crimson-falcon/models/pagination3b8a127584ba4423a93eb7c8169b572b.rb +305 -0
  166. data/lib/crimson-falcon/models/pagination3f3e43ffd8e64379931bdcb29aebc087.rb +305 -0
  167. data/lib/crimson-falcon/models/pagination52f77164aafe4de6b6db6d957e7daa2d.rb +305 -0
  168. data/lib/crimson-falcon/models/pagination548073ea1b2b436ba88a22f20220668f.rb +305 -0
  169. data/lib/crimson-falcon/models/pagination5540128e40ad49718c1f4b4b5e4e558c.rb +305 -0
  170. data/lib/crimson-falcon/models/pagination6447d6d09066458cbbaa67ba2e2337cc.rb +305 -0
  171. data/lib/crimson-falcon/models/pagination9bacca2551f14ff5a7ca8bd9d42e3cd2.rb +305 -0
  172. data/lib/crimson-falcon/models/pagination_d97a43983ded4cd7b949b22c9365f3ac.rb +305 -0
  173. data/lib/crimson-falcon/models/pagination_f16542f2ce284253ae3ba96625cde422.rb +305 -0
  174. data/lib/crimson-falcon/models/pagination_f3897127524749a8977efcf98f6fca21.rb +305 -0
  175. data/lib/crimson-falcon/models/pagination_f6ab71b91d6246e0bd736cf3af5fad6e.rb +305 -0
  176. data/lib/crimson-falcon/models/quickscanpro_error.rb +253 -0
  177. data/lib/crimson-falcon/models/quickscanpro_file_upload_response.rb +1 -1
  178. data/lib/crimson-falcon/models/quickscanpro_launch_scan_response.rb +1 -1
  179. data/lib/crimson-falcon/models/quickscanpro_meta_info.rb +248 -0
  180. data/lib/crimson-falcon/models/quickscanpro_query_scan_results_response.rb +1 -1
  181. data/lib/crimson-falcon/models/quickscanpro_scan_metadata.rb +12 -1
  182. data/lib/crimson-falcon/models/quickscanpro_scan_result.rb +1 -1
  183. data/lib/crimson-falcon/models/rbac_cloud_group.rb +270 -0
  184. data/lib/crimson-falcon/models/reason_result53b5512288cb4a35afeb08fb3232bc9a.rb +258 -0
  185. data/lib/crimson-falcon/models/reason_result85bd120760ba447ea4ed7050227cea6d.rb +258 -0
  186. data/lib/crimson-falcon/models/registration_iom_event_v2.rb +12 -1
  187. data/lib/crimson-falcon/models/{domain_case_creation_request.rb → releasenotes_release_note_v2.rb} +56 -66
  188. data/lib/crimson-falcon/models/{restapi_indicators_aggregates_response.rb → releasenotes_release_note_wrapper_v2.rb} +4 -4
  189. data/lib/crimson-falcon/models/resources_cloud_context.rb +1 -1
  190. data/lib/crimson-falcon/models/resources_cloud_resource.rb +12 -1
  191. data/lib/crimson-falcon/models/resources_compliance_control.rb +37 -4
  192. data/lib/crimson-falcon/models/restapi_indicators_lookup_request.rb +242 -0
  193. data/lib/crimson-falcon/models/restapi_lookup_indicator_response.rb +271 -0
  194. data/lib/crimson-falcon/models/schema2_manifest.rb +278 -0
  195. data/lib/crimson-falcon/models/security_check_metrics4dc2138e50b94346aca29c17db424031.rb +309 -0
  196. data/lib/crimson-falcon/models/security_check_with_compliance_fabac54a5b434140a3258784ea52cedd.rb +780 -0
  197. data/lib/crimson-falcon/models/source1a19145b2d194d208fce893f033e7d77.rb +309 -0
  198. data/lib/crimson-falcon/models/source_acb91d86550f449aa4b1b5310bf5ae84.rb +309 -0
  199. data/lib/crimson-falcon/models/source_f8f9612cb66e48f38a21f3f6c9c90ce3.rb +309 -0
  200. data/lib/crimson-falcon/models/status_breakdown_c9f65dddc40c4ce591a60ab63a17ab21.rb +309 -0
  201. data/lib/crimson-falcon/models/supported_integration6399100b6064428e971df473366a4291.rb +286 -0
  202. data/lib/crimson-falcon/models/system_log35829c828fcc41f99005750f1c86b16b.rb +479 -0
  203. data/lib/crimson-falcon/models/system_user62e536308fad4c7f8f020fb76f162088.rb +485 -0
  204. data/lib/crimson-falcon/models/types_query_count_response.rb +0 -10
  205. data/lib/crimson-falcon/models/types_query_overtime_response_item.rb +0 -10
  206. data/lib/crimson-falcon/models/types_query_request.rb +10 -1
  207. data/lib/crimson-falcon/models/types_query_response.rb +0 -10
  208. data/lib/crimson-falcon/models/upload_data_request.rb +258 -0
  209. data/lib/crimson-falcon/models/upload_data_response.rb +258 -0
  210. data/lib/crimson-falcon/models/user_c59913813fcc4565a44e697480b8846b.rb +599 -0
  211. data/lib/crimson-falcon/models/v1_history.rb +270 -0
  212. data/lib/crimson-falcon/models/v1_image.rb +334 -0
  213. data/lib/crimson-falcon/models/v1_image_config.rb +327 -0
  214. data/lib/crimson-falcon/models/v1_platform.rb +282 -0
  215. data/lib/crimson-falcon/models/v1_root_fs.rb +255 -0
  216. data/lib/crimson-falcon/models/webhooktrigger_response_config.rb +1 -11
  217. data/lib/crimson-falcon/version.rb +2 -2
  218. data/lib/crimson-falcon.rb +156 -9
  219. data/spec/api/activity_monitor_spec.rb +71 -0
  220. data/spec/api/alerts_spec.rb +20 -0
  221. data/spec/api/aspm_spec.rb +25 -1
  222. data/spec/api/cloud_azure_registration_spec.rb +55 -0
  223. data/spec/api/cloud_oci_registration_spec.rb +2 -2
  224. data/spec/api/cloud_security_assets_spec.rb +1 -1
  225. data/spec/api/container_image_compliance_spec.rb +11 -11
  226. data/spec/api/cspm_registration_spec.rb +12 -0
  227. data/spec/api/default_spec.rb +0 -11
  228. data/spec/api/exposure_management_spec.rb +14 -0
  229. data/spec/api/falcon_complete_dashboard_spec.rb +16 -2
  230. data/spec/api/falcon_container_image_spec.rb +21 -0
  231. data/spec/api/integration_builder_spec.rb +102 -0
  232. data/spec/api/intel_spec.rb +16 -0
  233. data/spec/api/intelligence_indicator_graph_spec.rb +7 -4
  234. data/spec/api/{datascanner_spec.rb → inventories_spec.rb} +27 -27
  235. data/spec/api/kubernetes_container_compliance_spec.rb +11 -0
  236. data/spec/api/kubernetes_protection_spec.rb +1 -0
  237. data/spec/api/message_center_spec.rb +1 -12
  238. data/spec/api/real_time_response_admin_spec.rb +11 -0
  239. data/spec/api/release_notes_spec.rb +13 -0
  240. data/spec/api/saa_s_spec.rb +75 -0
  241. data/spec/api/security_check_spec.rb +139 -0
  242. data/spec/api/system_spec.rb +79 -0
  243. data/spec/api/user_management_spec.rb +1 -1
  244. data/spec/models/account_integration289680abbdb24ecc9e55e90a4c2f1770_spec.rb +105 -0
  245. data/spec/models/activity251e72f10e9424e568d72ab0351a6fb1b_spec.rb +51 -0
  246. data/spec/models/affected_entity9f6cb0be3b91460090c751db2c883b7c_spec.rb +99 -0
  247. data/spec/models/alert85f2306d175b4314b4d51d0096103dcc_spec.rb +129 -0
  248. data/spec/models/{aspm_data_spec.rb → aspm_inventory_data_spec.rb} +6 -6
  249. data/spec/models/azure_additional_feature_spec.rb +63 -0
  250. data/spec/models/azure_azure_registration_create_input_spec.rb +189 -0
  251. data/spec/models/azure_azure_registration_create_request_ext_v1_spec.rb +51 -0
  252. data/spec/models/azure_azure_registration_response_ext_v1_spec.rb +63 -0
  253. data/spec/models/azure_azure_registration_update_input_spec.rb +189 -0
  254. data/spec/models/azure_azure_registration_update_request_ext_v1_spec.rb +51 -0
  255. data/spec/models/azure_delete_registration_response_ext_v1_spec.rb +63 -0
  256. data/spec/models/azure_deleted_registration_spec.rb +111 -0
  257. data/spec/models/azure_deleted_subscription_info_spec.rb +63 -0
  258. data/spec/models/azure_event_hub_settings_spec.rb +75 -0
  259. data/spec/models/azure_tenant_registration_spec.rb +243 -0
  260. data/spec/models/cdrioamanager_get_cloud_event_ids_response_spec.rb +63 -0
  261. data/spec/models/criteria301f5eeae5ba41edb767b27e749f6375_spec.rb +57 -0
  262. data/spec/models/data_transaction_response_dto31852908d6f14d268312c3fcdb497315_spec.rb +79 -0
  263. data/spec/models/data_transaction_response_dto614da2e1369e44e596d2935db3da0365_spec.rb +79 -0
  264. data/spec/models/data_transaction_response_dto_cdc34dae7da648de941209e7e6a30770_spec.rb +79 -0
  265. data/spec/models/detects_external_alert_spec.rb +6 -0
  266. data/spec/models/device3550eb212db1414995c297cdbfe5cc16_spec.rb +147 -0
  267. data/spec/models/dismiss_affected_spec.rb +63 -0
  268. data/spec/models/dismiss_security_check_spec.rb +63 -0
  269. data/spec/models/distribution_descriptor_spec.rb +81 -0
  270. data/spec/models/domain_actor_document_spec.rb +6 -0
  271. data/spec/models/domain_aggregation_result_item_spec.rb +105 -0
  272. data/spec/models/domain_aggregation_result_spec.rb +63 -0
  273. data/spec/models/domain_cloud_group_spec.rb +75 -0
  274. data/spec/models/domain_discover_api_host_spec.rb +18 -0
  275. data/spec/models/domain_discover_apiio_t_host_spec.rb +18 -0
  276. data/spec/models/domain_feature_status_spec.rb +13 -1
  277. data/spec/models/domain_iot_imported_host_spec.rb +165 -0
  278. data/spec/models/domain_kestrel_data_export_header_computation_function_spec.rb +63 -0
  279. data/spec/models/domain_kestrel_data_export_header_mapping_spec.rb +57 -0
  280. data/spec/models/domain_kestrel_data_export_params_spec.rb +69 -0
  281. data/spec/models/{quickscanpro_mitre_attack_parent_spec.rb → domain_mitre_attack_parent_spec.rb} +6 -6
  282. data/spec/models/{quickscanpro_mitre_attack_spec.rb → domain_mitre_attack_spec.rb} +18 -6
  283. data/spec/models/domain_msa_meta_info_spec.rb +0 -6
  284. data/spec/models/domain_notification_config_spec.rb +12 -0
  285. data/spec/models/domain_report_metadata_spec.rb +4 -4
  286. data/spec/models/domain_rule_spec.rb +13 -7
  287. data/spec/models/domain_scan_spec.rb +6 -0
  288. data/spec/models/domain_scheduled_report_v1_spec.rb +6 -0
  289. data/spec/models/domain_vulnerability_actor_spec.rb +63 -0
  290. data/spec/models/domain_vulnerability_affected_product_spec.rb +57 -0
  291. data/spec/models/domain_vulnerability_cvss_v2_spec.rb +93 -0
  292. data/spec/models/domain_vulnerability_cvss_v3_spec.rb +105 -0
  293. data/spec/models/domain_vulnerability_related_threat_spec.rb +57 -0
  294. data/spec/models/domain_vulnerability_report_spec.rb +69 -0
  295. data/spec/models/domain_vulnerability_spec.rb +63 -3
  296. data/spec/models/domain_xdr_params_spec.rb +6 -0
  297. data/spec/models/error02abad40db9c4a4baf68f01bea6071c4_spec.rb +57 -0
  298. data/spec/models/error068cf337479748d6ac14b4a9c4043a93_spec.rb +57 -0
  299. data/spec/models/error208252f00cf64de68d28810846b7dd26_spec.rb +57 -0
  300. data/spec/models/error20dfebe4526641bd81749e954da7890e_spec.rb +57 -0
  301. data/spec/models/error2a083e88c6764d16bbb98873ef1e9e15_spec.rb +57 -0
  302. data/spec/models/error2c3c8d4e65c3447a8eae772de1b0e3ef_spec.rb +57 -0
  303. data/spec/models/error35d6bd13358246f9ae9ffbe791550e06_spec.rb +57 -0
  304. data/spec/models/error476679d881284bdc9a5192128d50d4b6_spec.rb +57 -0
  305. data/spec/models/error479167a4d6534b6a85ec7857c5fb14ba_spec.rb +57 -0
  306. data/spec/models/error4bee1dd3515c454f83249366486164d0_spec.rb +57 -0
  307. data/spec/models/error7bbeca3b1c2440f19c0730f62b3b6ef4_spec.rb +57 -0
  308. data/spec/models/error878b6eeb86ef40cdb1ec5f1207207e09_spec.rb +57 -0
  309. data/spec/models/error9cad4d8f334c467daf30ed3a72664779_spec.rb +57 -0
  310. data/spec/models/error_bc084ac4caa243b199e2307fb94184c3_spec.rb +57 -0
  311. data/spec/models/error_d3d26008b8464eeb912ff06244246cf2_spec.rb +57 -0
  312. data/spec/models/error_f2e2dae6d0e945279a68e68afaee2d54_spec.rb +57 -0
  313. data/spec/models/error_fa972818e96245a89bcee1f18b40eb0a_spec.rb +57 -0
  314. data/spec/models/exposure_da5345c68b174f978f19999c3e00cab9_spec.rb +69 -0
  315. data/spec/models/figapi_lookup_indicator_spec.rb +189 -0
  316. data/spec/models/flightcontrolapi_grant_input_spec.rb +6 -0
  317. data/spec/models/fwmgr_api_json_diff_spec.rb +6 -6
  318. data/spec/models/get_activity_monitor_spec.rb +63 -0
  319. data/spec/models/get_affected_spec.rb +63 -0
  320. data/spec/models/get_alerts_response_spec.rb +63 -0
  321. data/spec/models/get_device_inventory_spec.rb +63 -0
  322. data/spec/models/get_end_transaction_spec.rb +63 -0
  323. data/spec/models/get_integrations_spec.rb +63 -0
  324. data/spec/models/get_metrics_spec.rb +63 -0
  325. data/spec/models/get_security_checks_spec.rb +63 -0
  326. data/spec/models/get_security_compliance_spec.rb +63 -0
  327. data/spec/models/get_supported_saas_spec.rb +63 -0
  328. data/spec/models/get_system_logs_spec.rb +63 -0
  329. data/spec/models/get_system_users_spec.rb +63 -0
  330. data/spec/models/get_transaction_status_spec.rb +63 -0
  331. data/spec/models/get_user_inventory_spec.rb +63 -0
  332. data/spec/models/integration_a9d173a3bf93430f84054286043aa8e5_spec.rb +63 -0
  333. data/spec/models/integration_e95afa6fc5e04968b0e9d83e90042eca_spec.rb +87 -0
  334. data/spec/models/issue9a61d8c8ccac45858497af4786b275c7_spec.rb +57 -0
  335. data/spec/models/meta17335150dd1a4934a3a031a7b41e650b_spec.rb +63 -0
  336. data/spec/models/meta23005461ac9a41fbb4620fe4aa0a3438_spec.rb +63 -0
  337. data/spec/models/meta27c23ca116c1477bb85e765b5e09af69_spec.rb +63 -0
  338. data/spec/models/meta37a0d574ca884a2f8641e122e47a3ce9_spec.rb +63 -0
  339. data/spec/models/meta4f2b2e3bbfd74a7fb14e0ca86dd47d57_spec.rb +63 -0
  340. data/spec/models/meta4fda3fb731c54f5480750a508fa0142d_spec.rb +63 -0
  341. data/spec/models/meta536da5d66c054c69889a624cf1068900_spec.rb +63 -0
  342. data/spec/models/meta6dbc34e4022d4b5c9fe5785caf9801e7_spec.rb +63 -0
  343. data/spec/models/meta77f6bf58ba0045649e59a4655807a6ab_spec.rb +63 -0
  344. data/spec/models/meta9b68681eb9464c4e9612730248f519d6_spec.rb +63 -0
  345. data/spec/models/meta_c84ad721c6a841869874276dd0683cbb_spec.rb +63 -0
  346. data/spec/models/meta_d1db20ce08ad45b3987ead9035c153a9_spec.rb +63 -0
  347. data/spec/models/meta_d43679bfb5f448afa0899baa948533d1_spec.rb +63 -0
  348. data/spec/models/meta_e1df370799c7419d805c0f95b5d1ae90_spec.rb +63 -0
  349. data/spec/models/meta_e4ad714b314449299eca720f9d63b718_spec.rb +63 -0
  350. data/spec/models/meta_fb2fed2c461a4af583e5b3b790c82df1_spec.rb +63 -0
  351. data/spec/models/meta_fe9ab4e0124e4f0fb9946562895a2c78_spec.rb +63 -0
  352. data/spec/models/models_api_image_combined_export_spec.rb +24 -0
  353. data/spec/models/models_cluster_spec.rb +6 -0
  354. data/spec/models/models_config_info_type_spec.rb +99 -0
  355. data/spec/models/models_elf_binary_info_type_spec.rb +93 -0
  356. data/spec/models/models_he_string_file_info_type_spec.rb +69 -0
  357. data/spec/models/models_he_string_info_type_spec.rb +63 -0
  358. data/spec/models/models_image_info_type_spec.rb +117 -0
  359. data/spec/models/models_image_metadata_type_spec.rb +81 -0
  360. data/spec/models/models_inventory_engine_info_type_spec.rb +69 -0
  361. data/spec/models/models_inventory_scan_request_type_spec.rb +159 -0
  362. data/spec/models/models_inventory_type_spec.rb +135 -0
  363. data/spec/models/models_layer_info_type_spec.rb +93 -0
  364. data/spec/models/models_ml_model_type_spec.rb +93 -0
  365. data/spec/models/{domain_case_creation_request_spec.rb → models_scan_info_type_spec.rb} +12 -12
  366. data/spec/models/models_scan_request_type_spec.rb +117 -0
  367. data/spec/models/pagination033f3d78a056499b8f4877419a0ab636_spec.rb +75 -0
  368. data/spec/models/pagination080eaa160ef24b9ea15b29a7376520d1_spec.rb +75 -0
  369. data/spec/models/pagination10594326d99a4b3a8681178b13e58952_spec.rb +75 -0
  370. data/spec/models/pagination13aeb546de8049e7b3a1c36f9c93266b_spec.rb +75 -0
  371. data/spec/models/pagination210dcb9a1e7d4355aa68be7ec0fd01f5_spec.rb +75 -0
  372. data/spec/models/pagination30037a29e9404616b03177274ec26e23_spec.rb +75 -0
  373. data/spec/models/pagination3b8a127584ba4423a93eb7c8169b572b_spec.rb +75 -0
  374. data/spec/models/pagination3f3e43ffd8e64379931bdcb29aebc087_spec.rb +75 -0
  375. data/spec/models/pagination52f77164aafe4de6b6db6d957e7daa2d_spec.rb +75 -0
  376. data/spec/models/pagination548073ea1b2b436ba88a22f20220668f_spec.rb +75 -0
  377. data/spec/models/pagination5540128e40ad49718c1f4b4b5e4e558c_spec.rb +75 -0
  378. data/spec/models/pagination6447d6d09066458cbbaa67ba2e2337cc_spec.rb +75 -0
  379. data/spec/models/pagination9bacca2551f14ff5a7ca8bd9d42e3cd2_spec.rb +75 -0
  380. data/spec/models/pagination_d97a43983ded4cd7b949b22c9365f3ac_spec.rb +75 -0
  381. data/spec/models/pagination_f16542f2ce284253ae3ba96625cde422_spec.rb +75 -0
  382. data/spec/models/pagination_f3897127524749a8977efcf98f6fca21_spec.rb +75 -0
  383. data/spec/models/pagination_f6ab71b91d6246e0bd736cf3af5fad6e_spec.rb +75 -0
  384. data/spec/models/{types_query_result_spec.rb → quickscanpro_error_spec.rb} +8 -8
  385. data/spec/{api/handle_spec.rb → models/quickscanpro_meta_info_spec.rb} +12 -17
  386. data/spec/models/quickscanpro_scan_metadata_spec.rb +6 -0
  387. data/spec/models/rbac_cloud_group_spec.rb +75 -0
  388. data/spec/models/reason_result53b5512288cb4a35afeb08fb3232bc9a_spec.rb +51 -0
  389. data/spec/models/reason_result85bd120760ba447ea4ed7050227cea6d_spec.rb +51 -0
  390. data/spec/models/registration_iom_event_v2_spec.rb +6 -0
  391. data/spec/models/releasenotes_release_note_v2_spec.rb +81 -0
  392. data/spec/models/releasenotes_release_note_wrapper_v2_spec.rb +63 -0
  393. data/spec/models/resources_cloud_resource_spec.rb +6 -0
  394. data/spec/models/resources_compliance_control_spec.rb +18 -0
  395. data/spec/models/{restapi_indicators_aggregates_request_spec.rb → restapi_indicators_lookup_request_spec.rb} +7 -7
  396. data/spec/models/{restapi_indicators_aggregates_response_spec.rb → restapi_lookup_indicator_response_spec.rb} +6 -6
  397. data/spec/models/schema2_manifest_spec.rb +69 -0
  398. data/spec/models/security_check_metrics4dc2138e50b94346aca29c17db424031_spec.rb +81 -0
  399. data/spec/models/security_check_with_compliance_fabac54a5b434140a3258784ea52cedd_spec.rb +183 -0
  400. data/spec/models/source1a19145b2d194d208fce893f033e7d77_spec.rb +69 -0
  401. data/spec/models/source_acb91d86550f449aa4b1b5310bf5ae84_spec.rb +69 -0
  402. data/spec/models/source_f8f9612cb66e48f38a21f3f6c9c90ce3_spec.rb +69 -0
  403. data/spec/models/status_breakdown_c9f65dddc40c4ce591a60ab63a17ab21_spec.rb +81 -0
  404. data/spec/models/supported_integration6399100b6064428e971df473366a4291_spec.rb +63 -0
  405. data/spec/models/system_log35829c828fcc41f99005750f1c86b16b_spec.rb +105 -0
  406. data/spec/models/system_user62e536308fad4c7f8f020fb76f162088_spec.rb +123 -0
  407. data/spec/models/types_query_request_spec.rb +6 -0
  408. data/spec/models/upload_data_request_spec.rb +51 -0
  409. data/spec/models/upload_data_response_spec.rb +63 -0
  410. data/spec/models/user_c59913813fcc4565a44e697480b8846b_spec.rb +141 -0
  411. data/spec/models/v1_history_spec.rb +75 -0
  412. data/spec/models/v1_image_config_spec.rb +105 -0
  413. data/spec/models/v1_image_spec.rb +105 -0
  414. data/spec/models/v1_platform_spec.rb +75 -0
  415. data/spec/models/v1_root_fs_spec.rb +57 -0
  416. data/spec/models/webhooktrigger_response_config_spec.rb +0 -6
  417. metadata +2343 -1902
  418. data/lib/crimson-falcon/api/datascanner.rb +0 -225
  419. data/lib/crimson-falcon/api/handle.rb +0 -94
@@ -0,0 +1,780 @@
1
+ =begin
2
+ Crimson Falcon - Ruby Client SDK
3
+
4
+ Code auto-generated by OpenAPI Generator; DO NOT EDIT.
5
+
6
+ MIT License
7
+
8
+ Copyright (c) 2023 Crowdstrike
9
+
10
+ Permission is hereby granted, free of charge, to any person obtaining a copy
11
+ of this software and associated documentation files (the "Software"), to deal
12
+ in the Software without restriction, including without limitation the rights
13
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
14
+ copies of the Software, and to permit persons to whom the Software is
15
+ furnished to do so, subject to the following conditions:
16
+
17
+ The above copyright notice and this permission notice shall be included in all
18
+ copies or substantial portions of the Software.
19
+
20
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
21
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
22
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
23
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
24
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
25
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
26
+ SOFTWARE.
27
+
28
+ =end
29
+
30
+ require 'date'
31
+ require 'time'
32
+
33
+ module Falcon
34
+ class SecurityCheckWithComplianceFabac54a5b434140a3258784ea52cedd
35
+ attr_accessor :account_id
36
+
37
+ attr_accessor :affected
38
+
39
+ attr_accessor :base_check_id
40
+
41
+ attr_accessor :compliance_data
42
+
43
+ attr_accessor :created_by
44
+
45
+ attr_accessor :creation_date
46
+
47
+ attr_accessor :details
48
+
49
+ attr_accessor :dismiss_expiration_date
50
+
51
+ attr_accessor :dismiss_reason
52
+
53
+ attr_accessor :id
54
+
55
+ attr_accessor :impact
56
+
57
+ attr_accessor :integration_alias
58
+
59
+ attr_accessor :integration_id
60
+
61
+ attr_accessor :is_global
62
+
63
+ attr_accessor :name
64
+
65
+ attr_accessor :remediation_plan
66
+
67
+ attr_accessor :saas_name
68
+
69
+ attr_accessor :security_check_type
70
+
71
+ attr_accessor :security_domain
72
+
73
+ attr_accessor :status
74
+
75
+ attr_accessor :status_last_changed_date
76
+
77
+ attr_accessor :status_reason
78
+
79
+ attr_accessor :user_who_dismissed
80
+
81
+ # Attribute mapping from ruby-style variable name to JSON key.
82
+ def self.attribute_map
83
+ {
84
+ :'account_id' => :'account_id',
85
+ :'affected' => :'affected',
86
+ :'base_check_id' => :'base_check_id',
87
+ :'compliance_data' => :'compliance_data',
88
+ :'created_by' => :'created_by',
89
+ :'creation_date' => :'creation_date',
90
+ :'details' => :'details',
91
+ :'dismiss_expiration_date' => :'dismiss_expiration_date',
92
+ :'dismiss_reason' => :'dismiss_reason',
93
+ :'id' => :'id',
94
+ :'impact' => :'impact',
95
+ :'integration_alias' => :'integration_alias',
96
+ :'integration_id' => :'integration_id',
97
+ :'is_global' => :'is_global',
98
+ :'name' => :'name',
99
+ :'remediation_plan' => :'remediation_plan',
100
+ :'saas_name' => :'saas_name',
101
+ :'security_check_type' => :'security_check_type',
102
+ :'security_domain' => :'security_domain',
103
+ :'status' => :'status',
104
+ :'status_last_changed_date' => :'status_last_changed_date',
105
+ :'status_reason' => :'status_reason',
106
+ :'user_who_dismissed' => :'user_who_dismissed'
107
+ }
108
+ end
109
+
110
+ # Returns all the JSON keys this model knows about
111
+ def self.acceptable_attributes
112
+ attribute_map.values
113
+ end
114
+
115
+ # Attribute type mapping.
116
+ def self.openapi_types
117
+ {
118
+ :'account_id' => :'String',
119
+ :'affected' => :'Integer',
120
+ :'base_check_id' => :'String',
121
+ :'compliance_data' => :'Array<Hash<String, String>>',
122
+ :'created_by' => :'String',
123
+ :'creation_date' => :'Time',
124
+ :'details' => :'String',
125
+ :'dismiss_expiration_date' => :'Time',
126
+ :'dismiss_reason' => :'String',
127
+ :'id' => :'String',
128
+ :'impact' => :'String',
129
+ :'integration_alias' => :'String',
130
+ :'integration_id' => :'String',
131
+ :'is_global' => :'Boolean',
132
+ :'name' => :'String',
133
+ :'remediation_plan' => :'String',
134
+ :'saas_name' => :'String',
135
+ :'security_check_type' => :'String',
136
+ :'security_domain' => :'String',
137
+ :'status' => :'String',
138
+ :'status_last_changed_date' => :'Time',
139
+ :'status_reason' => :'String',
140
+ :'user_who_dismissed' => :'String'
141
+ }
142
+ end
143
+
144
+ # List of attributes with nullable: true
145
+ def self.openapi_nullable
146
+ Set.new([
147
+ :'dismiss_expiration_date',
148
+ :'integration_alias',
149
+ :'status_last_changed_date',
150
+ ])
151
+ end
152
+
153
+ # Initializes the object
154
+ # @param [Hash] attributes Model attributes in the form of hash
155
+ def initialize(attributes = {})
156
+ if (!attributes.is_a?(Hash))
157
+ fail ArgumentError, "The input argument (attributes) must be a hash in `Falcon::SecurityCheckWithComplianceFabac54a5b434140a3258784ea52cedd` initialize method"
158
+ end
159
+
160
+ # check to see if the attribute exists and convert string to symbol for hash key
161
+ attributes = attributes.each_with_object({}) { |(k, v), h|
162
+ if (!self.class.attribute_map.key?(k.to_sym))
163
+ fail ArgumentError, "`#{k}` is not a valid attribute in `Falcon::SecurityCheckWithComplianceFabac54a5b434140a3258784ea52cedd`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
164
+ end
165
+ h[k.to_sym] = v
166
+ }
167
+
168
+ if attributes.key?(:'account_id')
169
+ self.account_id = attributes[:'account_id']
170
+ end
171
+
172
+ if attributes.key?(:'affected')
173
+ self.affected = attributes[:'affected']
174
+ end
175
+
176
+ if attributes.key?(:'base_check_id')
177
+ self.base_check_id = attributes[:'base_check_id']
178
+ end
179
+
180
+ if attributes.key?(:'compliance_data')
181
+ if (value = attributes[:'compliance_data']).is_a?(Array)
182
+ self.compliance_data = value
183
+ end
184
+ end
185
+
186
+ if attributes.key?(:'created_by')
187
+ self.created_by = attributes[:'created_by']
188
+ end
189
+
190
+ if attributes.key?(:'creation_date')
191
+ self.creation_date = attributes[:'creation_date']
192
+ end
193
+
194
+ if attributes.key?(:'details')
195
+ self.details = attributes[:'details']
196
+ end
197
+
198
+ if attributes.key?(:'dismiss_expiration_date')
199
+ self.dismiss_expiration_date = attributes[:'dismiss_expiration_date']
200
+ end
201
+
202
+ if attributes.key?(:'dismiss_reason')
203
+ self.dismiss_reason = attributes[:'dismiss_reason']
204
+ end
205
+
206
+ if attributes.key?(:'id')
207
+ self.id = attributes[:'id']
208
+ end
209
+
210
+ if attributes.key?(:'impact')
211
+ self.impact = attributes[:'impact']
212
+ end
213
+
214
+ if attributes.key?(:'integration_alias')
215
+ self.integration_alias = attributes[:'integration_alias']
216
+ end
217
+
218
+ if attributes.key?(:'integration_id')
219
+ self.integration_id = attributes[:'integration_id']
220
+ end
221
+
222
+ if attributes.key?(:'is_global')
223
+ self.is_global = attributes[:'is_global']
224
+ end
225
+
226
+ if attributes.key?(:'name')
227
+ self.name = attributes[:'name']
228
+ end
229
+
230
+ if attributes.key?(:'remediation_plan')
231
+ self.remediation_plan = attributes[:'remediation_plan']
232
+ end
233
+
234
+ if attributes.key?(:'saas_name')
235
+ self.saas_name = attributes[:'saas_name']
236
+ end
237
+
238
+ if attributes.key?(:'security_check_type')
239
+ self.security_check_type = attributes[:'security_check_type']
240
+ end
241
+
242
+ if attributes.key?(:'security_domain')
243
+ self.security_domain = attributes[:'security_domain']
244
+ end
245
+
246
+ if attributes.key?(:'status')
247
+ self.status = attributes[:'status']
248
+ end
249
+
250
+ if attributes.key?(:'status_last_changed_date')
251
+ self.status_last_changed_date = attributes[:'status_last_changed_date']
252
+ end
253
+
254
+ if attributes.key?(:'status_reason')
255
+ self.status_reason = attributes[:'status_reason']
256
+ end
257
+
258
+ if attributes.key?(:'user_who_dismissed')
259
+ self.user_who_dismissed = attributes[:'user_who_dismissed']
260
+ end
261
+ end
262
+
263
+ # Show invalid properties with the reasons. Usually used together with valid?
264
+ # @return Array for valid properties with the reasons
265
+ def list_invalid_properties
266
+ invalid_properties = Array.new
267
+ if @account_id.nil?
268
+ invalid_properties.push('invalid value for "account_id", account_id cannot be nil.')
269
+ end
270
+
271
+ if @affected.nil?
272
+ invalid_properties.push('invalid value for "affected", affected cannot be nil.')
273
+ end
274
+
275
+ if @base_check_id.nil?
276
+ invalid_properties.push('invalid value for "base_check_id", base_check_id cannot be nil.')
277
+ end
278
+
279
+ if @compliance_data.nil?
280
+ invalid_properties.push('invalid value for "compliance_data", compliance_data cannot be nil.')
281
+ end
282
+
283
+ if @created_by.nil?
284
+ invalid_properties.push('invalid value for "created_by", created_by cannot be nil.')
285
+ end
286
+
287
+ if @created_by.to_s.length < 1
288
+ invalid_properties.push('invalid value for "created_by", the character length must be great than or equal to 1.')
289
+ end
290
+
291
+ if @creation_date.nil?
292
+ invalid_properties.push('invalid value for "creation_date", creation_date cannot be nil.')
293
+ end
294
+
295
+ if @details.nil?
296
+ invalid_properties.push('invalid value for "details", details cannot be nil.')
297
+ end
298
+
299
+ if @details.to_s.length < 1
300
+ invalid_properties.push('invalid value for "details", the character length must be great than or equal to 1.')
301
+ end
302
+
303
+ if @dismiss_reason.nil?
304
+ invalid_properties.push('invalid value for "dismiss_reason", dismiss_reason cannot be nil.')
305
+ end
306
+
307
+ if @dismiss_reason.to_s.length < 1
308
+ invalid_properties.push('invalid value for "dismiss_reason", the character length must be great than or equal to 1.')
309
+ end
310
+
311
+ if @id.nil?
312
+ invalid_properties.push('invalid value for "id", id cannot be nil.')
313
+ end
314
+
315
+ if @impact.nil?
316
+ invalid_properties.push('invalid value for "impact", impact cannot be nil.')
317
+ end
318
+
319
+ if @impact.to_s.length < 1
320
+ invalid_properties.push('invalid value for "impact", the character length must be great than or equal to 1.')
321
+ end
322
+
323
+ if @integration_alias.to_s.length < 1
324
+ invalid_properties.push('invalid value for "integration_alias", the character length must be great than or equal to 1.')
325
+ end
326
+
327
+ if @integration_id.nil?
328
+ invalid_properties.push('invalid value for "integration_id", integration_id cannot be nil.')
329
+ end
330
+
331
+ if @is_global.nil?
332
+ invalid_properties.push('invalid value for "is_global", is_global cannot be nil.')
333
+ end
334
+
335
+ if @name.nil?
336
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
337
+ end
338
+
339
+ if @name.to_s.length < 1
340
+ invalid_properties.push('invalid value for "name", the character length must be great than or equal to 1.')
341
+ end
342
+
343
+ if @remediation_plan.nil?
344
+ invalid_properties.push('invalid value for "remediation_plan", remediation_plan cannot be nil.')
345
+ end
346
+
347
+ if @remediation_plan.to_s.length < 1
348
+ invalid_properties.push('invalid value for "remediation_plan", the character length must be great than or equal to 1.')
349
+ end
350
+
351
+ if @saas_name.nil?
352
+ invalid_properties.push('invalid value for "saas_name", saas_name cannot be nil.')
353
+ end
354
+
355
+ if @saas_name.to_s.length < 1
356
+ invalid_properties.push('invalid value for "saas_name", the character length must be great than or equal to 1.')
357
+ end
358
+
359
+ if @security_check_type.nil?
360
+ invalid_properties.push('invalid value for "security_check_type", security_check_type cannot be nil.')
361
+ end
362
+
363
+ if @security_check_type.to_s.length < 1
364
+ invalid_properties.push('invalid value for "security_check_type", the character length must be great than or equal to 1.')
365
+ end
366
+
367
+ if @security_domain.nil?
368
+ invalid_properties.push('invalid value for "security_domain", security_domain cannot be nil.')
369
+ end
370
+
371
+ if @security_domain.to_s.length < 1
372
+ invalid_properties.push('invalid value for "security_domain", the character length must be great than or equal to 1.')
373
+ end
374
+
375
+ if @status.nil?
376
+ invalid_properties.push('invalid value for "status", status cannot be nil.')
377
+ end
378
+
379
+ if @status.to_s.length < 1
380
+ invalid_properties.push('invalid value for "status", the character length must be great than or equal to 1.')
381
+ end
382
+
383
+ if @status_reason.nil?
384
+ invalid_properties.push('invalid value for "status_reason", status_reason cannot be nil.')
385
+ end
386
+
387
+ if @status_reason.to_s.length < 1
388
+ invalid_properties.push('invalid value for "status_reason", the character length must be great than or equal to 1.')
389
+ end
390
+
391
+ if @user_who_dismissed.nil?
392
+ invalid_properties.push('invalid value for "user_who_dismissed", user_who_dismissed cannot be nil.')
393
+ end
394
+
395
+ if @user_who_dismissed.to_s.length < 1
396
+ invalid_properties.push('invalid value for "user_who_dismissed", the character length must be great than or equal to 1.')
397
+ end
398
+
399
+ invalid_properties
400
+ end
401
+
402
+ # Check to see if the all the properties in the model are valid
403
+ # @return true if the model is valid
404
+ def valid?
405
+ return false if @account_id.nil?
406
+ return false if @affected.nil?
407
+ return false if @base_check_id.nil?
408
+ return false if @compliance_data.nil?
409
+ return false if @created_by.nil?
410
+ return false if @created_by.to_s.length < 1
411
+ return false if @creation_date.nil?
412
+ return false if @details.nil?
413
+ return false if @details.to_s.length < 1
414
+ return false if @dismiss_reason.nil?
415
+ return false if @dismiss_reason.to_s.length < 1
416
+ return false if @id.nil?
417
+ return false if @impact.nil?
418
+ return false if @impact.to_s.length < 1
419
+ return false if @integration_alias.to_s.length < 1
420
+ return false if @integration_id.nil?
421
+ return false if @is_global.nil?
422
+ return false if @name.nil?
423
+ return false if @name.to_s.length < 1
424
+ return false if @remediation_plan.nil?
425
+ return false if @remediation_plan.to_s.length < 1
426
+ return false if @saas_name.nil?
427
+ return false if @saas_name.to_s.length < 1
428
+ return false if @security_check_type.nil?
429
+ return false if @security_check_type.to_s.length < 1
430
+ return false if @security_domain.nil?
431
+ return false if @security_domain.to_s.length < 1
432
+ return false if @status.nil?
433
+ return false if @status.to_s.length < 1
434
+ return false if @status_reason.nil?
435
+ return false if @status_reason.to_s.length < 1
436
+ return false if @user_who_dismissed.nil?
437
+ return false if @user_who_dismissed.to_s.length < 1
438
+ true
439
+ end
440
+
441
+ # Custom attribute writer method with validation
442
+ # @param [Object] created_by Value to be assigned
443
+ def created_by=(created_by)
444
+ if created_by.nil?
445
+ fail ArgumentError, 'created_by cannot be nil'
446
+ end
447
+
448
+ if created_by.to_s.length < 1
449
+ fail ArgumentError, 'invalid value for "created_by", the character length must be great than or equal to 1.'
450
+ end
451
+
452
+ @created_by = created_by
453
+ end
454
+
455
+ # Custom attribute writer method with validation
456
+ # @param [Object] details Value to be assigned
457
+ def details=(details)
458
+ if details.nil?
459
+ fail ArgumentError, 'details cannot be nil'
460
+ end
461
+
462
+ if details.to_s.length < 1
463
+ fail ArgumentError, 'invalid value for "details", the character length must be great than or equal to 1.'
464
+ end
465
+
466
+ @details = details
467
+ end
468
+
469
+ # Custom attribute writer method with validation
470
+ # @param [Object] dismiss_reason Value to be assigned
471
+ def dismiss_reason=(dismiss_reason)
472
+ if dismiss_reason.nil?
473
+ fail ArgumentError, 'dismiss_reason cannot be nil'
474
+ end
475
+
476
+ if dismiss_reason.to_s.length < 1
477
+ fail ArgumentError, 'invalid value for "dismiss_reason", the character length must be great than or equal to 1.'
478
+ end
479
+
480
+ @dismiss_reason = dismiss_reason
481
+ end
482
+
483
+ # Custom attribute writer method with validation
484
+ # @param [Object] impact Value to be assigned
485
+ def impact=(impact)
486
+ if impact.nil?
487
+ fail ArgumentError, 'impact cannot be nil'
488
+ end
489
+
490
+ if impact.to_s.length < 1
491
+ fail ArgumentError, 'invalid value for "impact", the character length must be great than or equal to 1.'
492
+ end
493
+
494
+ @impact = impact
495
+ end
496
+
497
+ # Custom attribute writer method with validation
498
+ # @param [Object] integration_alias Value to be assigned
499
+ def integration_alias=(integration_alias)
500
+ if integration_alias.to_s.length < 1
501
+ fail ArgumentError, 'invalid value for "integration_alias", the character length must be great than or equal to 1.'
502
+ end
503
+
504
+ @integration_alias = integration_alias
505
+ end
506
+
507
+ # Custom attribute writer method with validation
508
+ # @param [Object] name Value to be assigned
509
+ def name=(name)
510
+ if name.nil?
511
+ fail ArgumentError, 'name cannot be nil'
512
+ end
513
+
514
+ if name.to_s.length < 1
515
+ fail ArgumentError, 'invalid value for "name", the character length must be great than or equal to 1.'
516
+ end
517
+
518
+ @name = name
519
+ end
520
+
521
+ # Custom attribute writer method with validation
522
+ # @param [Object] remediation_plan Value to be assigned
523
+ def remediation_plan=(remediation_plan)
524
+ if remediation_plan.nil?
525
+ fail ArgumentError, 'remediation_plan cannot be nil'
526
+ end
527
+
528
+ if remediation_plan.to_s.length < 1
529
+ fail ArgumentError, 'invalid value for "remediation_plan", the character length must be great than or equal to 1.'
530
+ end
531
+
532
+ @remediation_plan = remediation_plan
533
+ end
534
+
535
+ # Custom attribute writer method with validation
536
+ # @param [Object] saas_name Value to be assigned
537
+ def saas_name=(saas_name)
538
+ if saas_name.nil?
539
+ fail ArgumentError, 'saas_name cannot be nil'
540
+ end
541
+
542
+ if saas_name.to_s.length < 1
543
+ fail ArgumentError, 'invalid value for "saas_name", the character length must be great than or equal to 1.'
544
+ end
545
+
546
+ @saas_name = saas_name
547
+ end
548
+
549
+ # Custom attribute writer method with validation
550
+ # @param [Object] security_check_type Value to be assigned
551
+ def security_check_type=(security_check_type)
552
+ if security_check_type.nil?
553
+ fail ArgumentError, 'security_check_type cannot be nil'
554
+ end
555
+
556
+ if security_check_type.to_s.length < 1
557
+ fail ArgumentError, 'invalid value for "security_check_type", the character length must be great than or equal to 1.'
558
+ end
559
+
560
+ @security_check_type = security_check_type
561
+ end
562
+
563
+ # Custom attribute writer method with validation
564
+ # @param [Object] security_domain Value to be assigned
565
+ def security_domain=(security_domain)
566
+ if security_domain.nil?
567
+ fail ArgumentError, 'security_domain cannot be nil'
568
+ end
569
+
570
+ if security_domain.to_s.length < 1
571
+ fail ArgumentError, 'invalid value for "security_domain", the character length must be great than or equal to 1.'
572
+ end
573
+
574
+ @security_domain = security_domain
575
+ end
576
+
577
+ # Custom attribute writer method with validation
578
+ # @param [Object] status Value to be assigned
579
+ def status=(status)
580
+ if status.nil?
581
+ fail ArgumentError, 'status cannot be nil'
582
+ end
583
+
584
+ if status.to_s.length < 1
585
+ fail ArgumentError, 'invalid value for "status", the character length must be great than or equal to 1.'
586
+ end
587
+
588
+ @status = status
589
+ end
590
+
591
+ # Custom attribute writer method with validation
592
+ # @param [Object] status_reason Value to be assigned
593
+ def status_reason=(status_reason)
594
+ if status_reason.nil?
595
+ fail ArgumentError, 'status_reason cannot be nil'
596
+ end
597
+
598
+ if status_reason.to_s.length < 1
599
+ fail ArgumentError, 'invalid value for "status_reason", the character length must be great than or equal to 1.'
600
+ end
601
+
602
+ @status_reason = status_reason
603
+ end
604
+
605
+ # Custom attribute writer method with validation
606
+ # @param [Object] user_who_dismissed Value to be assigned
607
+ def user_who_dismissed=(user_who_dismissed)
608
+ if user_who_dismissed.nil?
609
+ fail ArgumentError, 'user_who_dismissed cannot be nil'
610
+ end
611
+
612
+ if user_who_dismissed.to_s.length < 1
613
+ fail ArgumentError, 'invalid value for "user_who_dismissed", the character length must be great than or equal to 1.'
614
+ end
615
+
616
+ @user_who_dismissed = user_who_dismissed
617
+ end
618
+
619
+ # Checks equality by comparing each attribute.
620
+ # @param [Object] Object to be compared
621
+ def ==(o)
622
+ return true if self.equal?(o)
623
+ self.class == o.class &&
624
+ account_id == o.account_id &&
625
+ affected == o.affected &&
626
+ base_check_id == o.base_check_id &&
627
+ compliance_data == o.compliance_data &&
628
+ created_by == o.created_by &&
629
+ creation_date == o.creation_date &&
630
+ details == o.details &&
631
+ dismiss_expiration_date == o.dismiss_expiration_date &&
632
+ dismiss_reason == o.dismiss_reason &&
633
+ id == o.id &&
634
+ impact == o.impact &&
635
+ integration_alias == o.integration_alias &&
636
+ integration_id == o.integration_id &&
637
+ is_global == o.is_global &&
638
+ name == o.name &&
639
+ remediation_plan == o.remediation_plan &&
640
+ saas_name == o.saas_name &&
641
+ security_check_type == o.security_check_type &&
642
+ security_domain == o.security_domain &&
643
+ status == o.status &&
644
+ status_last_changed_date == o.status_last_changed_date &&
645
+ status_reason == o.status_reason &&
646
+ user_who_dismissed == o.user_who_dismissed
647
+ end
648
+
649
+ # @see the `==` method
650
+ # @param [Object] Object to be compared
651
+ def eql?(o)
652
+ self == o
653
+ end
654
+
655
+ # Calculates hash code according to all attributes.
656
+ # @return [Integer] Hash code
657
+ def hash
658
+ [account_id, affected, base_check_id, compliance_data, created_by, creation_date, details, dismiss_expiration_date, dismiss_reason, id, impact, integration_alias, integration_id, is_global, name, remediation_plan, saas_name, security_check_type, security_domain, status, status_last_changed_date, status_reason, user_who_dismissed].hash
659
+ end
660
+
661
+ # Builds the object from hash
662
+ # @param [Hash] attributes Model attributes in the form of hash
663
+ # @return [Object] Returns the model itself
664
+ def self.build_from_hash(attributes)
665
+ new.build_from_hash(attributes)
666
+ end
667
+
668
+ # Builds the object from hash
669
+ # @param [Hash] attributes Model attributes in the form of hash
670
+ # @return [Object] Returns the model itself
671
+ def build_from_hash(attributes)
672
+ return nil unless attributes.is_a?(Hash)
673
+ attributes = attributes.transform_keys(&:to_sym)
674
+ self.class.openapi_types.each_pair do |key, type|
675
+ if attributes[self.class.attribute_map[key]].nil? && self.class.openapi_nullable.include?(key)
676
+ self.send("#{key}=", nil)
677
+ elsif type =~ /\AArray<(.*)>/i
678
+ # check to ensure the input is an array given that the attribute
679
+ # is documented as an array but the input is not
680
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
681
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
682
+ end
683
+ elsif !attributes[self.class.attribute_map[key]].nil?
684
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
685
+ end
686
+ end
687
+
688
+ self
689
+ end
690
+
691
+ # Deserializes the data based on type
692
+ # @param string type Data type
693
+ # @param string value Value to be deserialized
694
+ # @return [Object] Deserialized data
695
+ def _deserialize(type, value)
696
+ case type.to_sym
697
+ when :Time
698
+ Time.parse(value)
699
+ when :Date
700
+ Date.parse(value)
701
+ when :String
702
+ value.to_s
703
+ when :Integer
704
+ value.to_i
705
+ when :Float
706
+ value.to_f
707
+ when :Boolean
708
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
709
+ true
710
+ else
711
+ false
712
+ end
713
+ when :Object
714
+ # generic object (usually a Hash), return directly
715
+ value
716
+ when /\AArray<(?<inner_type>.+)>\z/
717
+ inner_type = Regexp.last_match[:inner_type]
718
+ value.map { |v| _deserialize(inner_type, v) }
719
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
720
+ k_type = Regexp.last_match[:k_type]
721
+ v_type = Regexp.last_match[:v_type]
722
+ {}.tap do |hash|
723
+ value.each do |k, v|
724
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
725
+ end
726
+ end
727
+ else # model
728
+ # models (e.g. Pet) or oneOf
729
+ klass = Falcon.const_get(type)
730
+ klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
731
+ end
732
+ end
733
+
734
+ # Returns the string representation of the object
735
+ # @return [String] String presentation of the object
736
+ def to_s
737
+ to_hash.to_s
738
+ end
739
+
740
+ # to_body is an alias to to_hash (backward compatibility)
741
+ # @return [Hash] Returns the object in the form of hash
742
+ def to_body
743
+ to_hash
744
+ end
745
+
746
+ # Returns the object in the form of hash
747
+ # @return [Hash] Returns the object in the form of hash
748
+ def to_hash
749
+ hash = {}
750
+ self.class.attribute_map.each_pair do |attr, param|
751
+ value = self.send(attr)
752
+ if value.nil?
753
+ is_nullable = self.class.openapi_nullable.include?(attr)
754
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
755
+ end
756
+
757
+ hash[param] = _to_hash(value)
758
+ end
759
+ hash
760
+ end
761
+
762
+ # Outputs non-array value in the form of hash
763
+ # For object, use to_hash. Otherwise, just return the value
764
+ # @param [Object] value Any valid value
765
+ # @return [Hash] Returns the value in the form of hash
766
+ def _to_hash(value)
767
+ if value.is_a?(Array)
768
+ value.compact.map { |v| _to_hash(v) }
769
+ elsif value.is_a?(Hash)
770
+ {}.tap do |hash|
771
+ value.each { |k, v| hash[k] = _to_hash(v) }
772
+ end
773
+ elsif value.respond_to? :to_hash
774
+ value.to_hash
775
+ else
776
+ value
777
+ end
778
+ end
779
+ end
780
+ end