datadog_api_client 2.33.0 → 2.34.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 (245) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/conftest.py +2 -1
  4. data/.generator/schemas/v1/openapi.yaml +18 -3
  5. data/.generator/schemas/v2/openapi.yaml +2577 -883
  6. data/.generator/src/generator/templates/configuration.j2 +2 -2
  7. data/.github/workflows/publish.yml +16 -8
  8. data/.github/workflows/release.yml +57 -61
  9. data/CHANGELOG.md +16 -0
  10. data/Gemfile +2 -1
  11. data/examples/v2/csm-threats/CreateCSMThreatsAgentPolicy.rb +21 -0
  12. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule.rb +7 -4
  13. data/examples/v2/csm-threats/CreateCloudWorkloadSecurityAgentRule.rb +3 -2
  14. data/examples/v2/csm-threats/DeleteCSMThreatsAgentPolicy.rb +8 -0
  15. data/examples/v2/csm-threats/DeleteCSMThreatsAgentRule.rb +8 -2
  16. data/examples/v2/csm-threats/DeleteCloudWorkloadSecurityAgentRule.rb +1 -1
  17. data/examples/v2/csm-threats/DownloadCSMThreatsPolicy.rb +1 -1
  18. data/examples/v2/csm-threats/DownloadCloudWorkloadPolicyFile.rb +1 -1
  19. data/examples/v2/csm-threats/GetCSMThreatsAgentPolicy.rb +8 -0
  20. data/examples/v2/csm-threats/GetCSMThreatsAgentRule.rb +8 -2
  21. data/examples/v2/csm-threats/GetCloudWorkloadSecurityAgentRule.rb +1 -1
  22. data/examples/v2/csm-threats/ListCSMThreatsAgentPolicies.rb +5 -0
  23. data/examples/v2/csm-threats/ListCSMThreatsAgentRules.rb +1 -1
  24. data/examples/v2/csm-threats/ListCloudWorkloadSecurityAgentRules.rb +1 -1
  25. data/examples/v2/csm-threats/UpdateCSMThreatsAgentPolicy.rb +25 -0
  26. data/examples/v2/csm-threats/UpdateCSMThreatsAgentRule.rb +12 -4
  27. data/examples/v2/csm-threats/UpdateCloudWorkloadSecurityAgentRule.rb +3 -4
  28. data/examples/v2/dora-metrics/GetDORADeployment.rb +5 -0
  29. data/examples/v2/dora-metrics/GetDORAFailure.rb +5 -0
  30. data/examples/v2/dora-metrics/ListDORADeployments.rb +16 -0
  31. data/examples/v2/dora-metrics/ListDORAFailures.rb +16 -0
  32. data/examples/v2/network-device-monitoring/ListDevices_2712868412.rb +5 -0
  33. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +19 -17
  34. data/examples/v2/on-call/CreateOnCallSchedule.rb +11 -15
  35. data/examples/v2/on-call/DeleteOnCallEscalationPolicy.rb +2 -2
  36. data/examples/v2/on-call/DeleteOnCallSchedule.rb +2 -2
  37. data/examples/v2/on-call/GetOnCallEscalationPolicy.rb +6 -3
  38. data/examples/v2/on-call/GetOnCallSchedule.rb +2 -2
  39. data/examples/v2/on-call/GetOnCallTeamRoutingRules.rb +5 -0
  40. data/examples/v2/on-call/GetScheduleOnCallUser.rb +8 -0
  41. data/examples/v2/on-call/SetOnCallTeamRoutingRules.rb +57 -0
  42. data/examples/v2/on-call/UpdateOnCallEscalationPolicy.rb +8 -9
  43. data/examples/v2/on-call/UpdateOnCallSchedule.rb +11 -16
  44. data/examples/v2/on-call-paging/AcknowledgeOnCallPage.rb +5 -0
  45. data/examples/v2/on-call-paging/CreateOnCallPage.rb +23 -0
  46. data/examples/v2/on-call-paging/EscalateOnCallPage.rb +5 -0
  47. data/examples/v2/on-call-paging/ResolveOnCallPage.rb +5 -0
  48. data/examples/v2/rum-metrics/CreateRumMetric.rb +1 -1
  49. data/examples/v2/security-monitoring/GetResourceEvaluationFilters.rb +9 -0
  50. data/examples/v2/security-monitoring/UpdateResourceEvaluationFilters.rb +21 -0
  51. data/examples/v2/software-catalog/ListCatalogRelation.rb +5 -0
  52. data/examples/v2/software-catalog/ListCatalogRelation_1311054087.rb +8 -0
  53. data/examples/v2/workflow-automation/CreateWorkflow.rb +0 -1
  54. data/examples/v2/workflow-automation/UpdateWorkflow.rb +0 -1
  55. data/lib/datadog_api_client/configuration.rb +203 -15
  56. data/lib/datadog_api_client/inflector.rb +104 -43
  57. data/lib/datadog_api_client/v1/models/synthetics_assertion_body_hash_target.rb +2 -2
  58. data/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb +2 -2
  59. data/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb +2 -2
  60. data/lib/datadog_api_client/v1/models/synthetics_assertion_target_value.rb +63 -0
  61. data/lib/datadog_api_client/v1/models/synthetics_assertion_x_path_target_target.rb +2 -2
  62. data/lib/datadog_api_client/v2/api/csm_threats_api.rb +424 -52
  63. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +265 -1
  64. data/lib/datadog_api_client/v2/api/metrics_api.rb +5 -5
  65. data/lib/datadog_api_client/v2/api/network_device_monitoring_api.rb +25 -3
  66. data/lib/datadog_api_client/v2/api/on_call_api.rb +234 -24
  67. data/lib/datadog_api_client/v2/api/on_call_paging_api.rb +292 -0
  68. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +133 -0
  69. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +101 -0
  70. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams.rb → cloud_workload_security_agent_policies_list_response.rb} +5 -5
  71. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_attributes.rb +300 -0
  72. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_attributes.rb +167 -0
  73. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams_data_items.rb → cloud_workload_security_agent_policy_create_data.rb} +19 -19
  74. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_request.rb +123 -0
  75. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_data.rb +125 -0
  76. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_response.rb +105 -0
  77. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_type.rb +26 -0
  78. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_restrictions_items.rb → cloud_workload_security_agent_policy_update_attributes.rb} +46 -33
  79. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_data.rb +154 -0
  80. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_request.rb +123 -0
  81. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_updater_attributes.rb +123 -0
  82. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +1 -1
  83. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +31 -19
  84. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_attributes.rb +27 -5
  85. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_data.rb +2 -2
  86. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_request.rb +2 -2
  87. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_creator_attributes.rb +3 -3
  88. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_data.rb +4 -4
  89. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_kill.rb +1 -1
  90. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_response.rb +2 -2
  91. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_type.rb +1 -1
  92. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_attributes.rb +29 -7
  93. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_data.rb +4 -4
  94. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_request.rb +2 -2
  95. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_updater_attributes.rb +3 -3
  96. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rules_list_response.rb +2 -2
  97. data/lib/datadog_api_client/v2/models/create_page_request.rb +105 -0
  98. data/lib/datadog_api_client/v2/models/create_page_request_data.rb +133 -0
  99. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes.rb +187 -0
  100. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes_target.rb +115 -0
  101. data/lib/datadog_api_client/v2/models/create_page_request_data_type.rb +26 -0
  102. data/lib/datadog_api_client/v2/models/create_page_response.rb +105 -0
  103. data/lib/datadog_api_client/v2/models/create_page_response_data.rb +133 -0
  104. data/lib/datadog_api_client/v2/models/create_page_response_data_type.rb +26 -0
  105. data/lib/datadog_api_client/v2/models/custom_framework_without_requirements.rb +2 -24
  106. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams.rb → data_relationships_teams.rb} +3 -3
  107. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items.rb → data_relationships_teams_data_items.rb} +3 -3
  108. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items_type.rb → data_relationships_teams_data_items_type.rb} +1 -1
  109. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_attributes_steps_items_targets_items.rb → dora_event.rb} +17 -7
  110. data/lib/datadog_api_client/v2/models/dora_fetch_response.rb +105 -0
  111. data/lib/datadog_api_client/v2/models/dora_incident_request_attributes.rb +1 -1
  112. data/lib/datadog_api_client/v2/models/dora_list_deployments_request.rb +123 -0
  113. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_attributes.rb +163 -0
  114. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data.rb +133 -0
  115. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data_type.rb +26 -0
  116. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams.rb → dora_list_failures_request.rb} +25 -9
  117. data/lib/datadog_api_client/v2/models/dora_list_failures_request_attributes.rb +163 -0
  118. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data.rb +133 -0
  119. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams_data_items_type.rb → dora_list_failures_request_data_type.rb} +3 -3
  120. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams.rb → dora_list_response.rb} +5 -5
  121. data/lib/datadog_api_client/v2/models/entity_v3_datadog_code_location_item.rb +1 -21
  122. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +1 -11
  123. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +2 -2
  124. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships.rb +2 -2
  125. data/lib/datadog_api_client/v2/models/escalation_policy_data.rb +1 -1
  126. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +2 -12
  127. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships.rb +2 -2
  128. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +2 -3
  129. data/lib/datadog_api_client/v2/models/escalation_policy_step_relationships.rb +2 -2
  130. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_attributes_steps_items_targets_items.rb → escalation_policy_step_target.rb} +3 -3
  131. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_attributes_steps_items_targets_items_type.rb → escalation_policy_step_target_type.rb} +1 -1
  132. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +1 -11
  133. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +2 -2
  134. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships.rb +2 -2
  135. data/lib/datadog_api_client/v2/models/escalation_policy_user.rb +143 -0
  136. data/lib/datadog_api_client/v2/models/escalation_policy_user_attributes.rb +125 -0
  137. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items_type.rb → escalation_policy_user_type.rb} +1 -1
  138. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users.rb → escalation_targets.rb} +5 -5
  139. data/lib/datadog_api_client/v2/models/full_custom_framework_data_attributes.rb +2 -34
  140. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response.rb +123 -0
  141. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response_data.rb +125 -0
  142. data/lib/datadog_api_client/v2/models/historical_job_options.rb +2 -2
  143. data/lib/datadog_api_client/v2/models/historical_job_query.rb +1 -1
  144. data/lib/datadog_api_client/v2/models/http_integration.rb +0 -6
  145. data/lib/datadog_api_client/v2/models/http_integration_update.rb +1 -14
  146. data/lib/datadog_api_client/v2/models/incident_severity.rb +1 -0
  147. data/lib/datadog_api_client/v2/models/layer_attributes.rb +1 -1
  148. data/lib/datadog_api_client/v2/models/list_relation_catalog_response.rb +139 -0
  149. data/lib/datadog_api_client/v2/models/list_relation_catalog_response_links.rb +125 -0
  150. data/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb +1 -16
  151. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +1 -16
  152. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +1 -16
  153. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +2 -13
  154. data/lib/datadog_api_client/v2/models/observability_pipeline_metadata_entry.rb +1 -1
  155. data/lib/datadog_api_client/v2/models/on_call_page_target_type.rb +28 -0
  156. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items_type.rb → page_urgency.rb} +4 -3
  157. data/lib/datadog_api_client/v2/models/relation_attributes.rb +125 -0
  158. data/lib/datadog_api_client/v2/models/relation_entity.rb +125 -0
  159. data/lib/datadog_api_client/v2/models/relation_include_type.rb +27 -0
  160. data/lib/datadog_api_client/v2/models/relation_meta.rb +135 -0
  161. data/lib/datadog_api_client/v2/models/relation_relationships.rb +115 -0
  162. data/lib/datadog_api_client/v2/models/relation_response.rb +155 -0
  163. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams.rb → relation_response_meta.rb} +21 -13
  164. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items_type.rb → relation_response_type.rb} +3 -3
  165. data/lib/datadog_api_client/v2/models/relation_to_entity.rb +115 -0
  166. data/lib/datadog_api_client/v2/models/resource_filter_attributes.rb +133 -0
  167. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items_type.rb → resource_filter_request_type.rb} +3 -3
  168. data/lib/datadog_api_client/v2/models/routing_rule.rb +153 -0
  169. data/lib/datadog_api_client/v2/models/routing_rule_action.rb +63 -0
  170. data/lib/datadog_api_client/v2/models/routing_rule_attributes.rb +137 -0
  171. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items_user.rb → routing_rule_relationships.rb} +11 -11
  172. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy.rb +105 -0
  173. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items.rb → routing_rule_relationships_policy_data.rb} +6 -6
  174. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy_data_type.rb +26 -0
  175. data/lib/datadog_api_client/v2/models/routing_rule_type.rb +26 -0
  176. data/lib/datadog_api_client/v2/models/schedule_create_request_data.rb +1 -1
  177. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes.rb +3 -15
  178. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +4 -4
  179. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships.rb +2 -2
  180. data/lib/datadog_api_client/v2/models/schedule_data.rb +1 -1
  181. data/lib/datadog_api_client/v2/models/schedule_data_attributes.rb +2 -14
  182. data/lib/datadog_api_client/v2/models/schedule_data_relationships.rb +1 -1
  183. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_members_items.rb → schedule_request_data_attributes_layers_items_members_items.rb} +3 -3
  184. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_members_items_user.rb → schedule_request_data_attributes_layers_items_members_items_user.rb} +2 -2
  185. data/lib/datadog_api_client/v2/models/schedule_update_request.rb +1 -1
  186. data/lib/datadog_api_client/v2/models/schedule_update_request_data.rb +2 -2
  187. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes.rb +2 -14
  188. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +4 -4
  189. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships.rb +2 -2
  190. data/lib/datadog_api_client/v2/models/schedule_user_attributes.rb +13 -3
  191. data/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +1 -1
  192. data/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb +1 -1
  193. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +2 -2
  194. data/lib/datadog_api_client/v2/models/security_monitoring_standard_data_source.rb +2 -1
  195. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +1 -1
  196. data/lib/datadog_api_client/v2/models/send_slack_message_action.rb +165 -0
  197. data/lib/datadog_api_client/v2/models/send_slack_message_action_type.rb +26 -0
  198. data/lib/datadog_api_client/v2/models/send_teams_message_action.rb +186 -0
  199. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams_data_items_type.rb → send_teams_message_action_type.rb} +3 -3
  200. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams.rb → shift.rb} +19 -9
  201. data/lib/datadog_api_client/v2/models/shift_data.rb +153 -0
  202. data/lib/datadog_api_client/v2/models/shift_data_attributes.rb +115 -0
  203. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items.rb → shift_data_relationships.rb} +5 -6
  204. data/lib/datadog_api_client/v2/models/shift_data_relationships_user.rb +123 -0
  205. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items.rb → shift_data_relationships_user_data.rb} +6 -6
  206. data/lib/datadog_api_client/v2/models/shift_data_relationships_user_data_type.rb +26 -0
  207. data/lib/datadog_api_client/v2/models/shift_data_type.rb +26 -0
  208. data/lib/datadog_api_client/v2/models/shift_included.rb +62 -0
  209. data/lib/datadog_api_client/v2/models/team_reference.rb +1 -11
  210. data/lib/datadog_api_client/v2/models/team_routing_rules.rb +117 -0
  211. data/lib/datadog_api_client/v2/models/team_routing_rules_data.rb +143 -0
  212. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships.rb +105 -0
  213. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules.rb +107 -0
  214. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items.rb → team_routing_rules_data_relationships_rules_data_items.rb} +6 -7
  215. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items_type.rb +26 -0
  216. data/lib/datadog_api_client/v2/models/team_routing_rules_data_type.rb +26 -0
  217. data/lib/datadog_api_client/v2/models/team_routing_rules_included.rb +62 -0
  218. data/lib/datadog_api_client/v2/models/team_routing_rules_request.rb +105 -0
  219. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items.rb → team_routing_rules_request_data.rb} +18 -19
  220. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_attributes.rb +107 -0
  221. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_type.rb +26 -0
  222. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_restrictions_items.rb → team_routing_rules_request_rule.rb} +44 -33
  223. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items.rb → time_restriction.rb} +9 -10
  224. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_interval.rb → time_restrictions.rb} +32 -30
  225. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request.rb +123 -0
  226. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request_data.rb +154 -0
  227. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_response.rb +123 -0
  228. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams_data_items.rb → update_resource_evaluation_filters_response_data.rb} +24 -14
  229. data/lib/datadog_api_client/v2/models/urgency.rb +28 -0
  230. data/lib/datadog_api_client/v2/models/user_attributes_status.rb +28 -0
  231. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items_end_day.rb → weekday.rb} +2 -2
  232. data/lib/datadog_api_client/version.rb +1 -1
  233. metadata +128 -51
  234. data/.github/workflows/prepare_release.yml +0 -112
  235. data/RELEASING.md +0 -43
  236. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_assignment.rb +0 -27
  237. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_assignment.rb +0 -27
  238. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_targets_items_type.rb +0 -28
  239. data/lib/datadog_api_client/v2/models/layer_attributes_restrictions_items_start_day.rb +0 -32
  240. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  241. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  242. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_interval.rb +0 -144
  243. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  244. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  245. data/lib/datadog_api_client/v2/models/team_reference_relationships.rb +0 -105
@@ -1605,6 +1605,72 @@ module DatadogAPIClient::V2
1605
1605
  return data, status_code, headers
1606
1606
  end
1607
1607
 
1608
+ # List resource filters.
1609
+ #
1610
+ # @see #get_resource_evaluation_filters_with_http_info
1611
+ def get_resource_evaluation_filters(opts = {})
1612
+ data, _status_code, _headers = get_resource_evaluation_filters_with_http_info(opts)
1613
+ data
1614
+ end
1615
+
1616
+ # List resource filters.
1617
+ #
1618
+ # List resource filters.
1619
+ #
1620
+ # @param opts [Hash] the optional parameters
1621
+ # @option opts [String] :cloud_provider Filter resource filters by cloud provider (e.g. aws, gcp, azure).
1622
+ # @option opts [String] :account_id Filter resource filters by cloud provider account ID. This parameter is only valid when provider is specified.
1623
+ # @option opts [Boolean] :skip_cache Skip cache for resource filters.
1624
+ # @return [Array<(GetResourceEvaluationFiltersResponse, Integer, Hash)>] GetResourceEvaluationFiltersResponse data, response status code and response headers
1625
+ def get_resource_evaluation_filters_with_http_info(opts = {})
1626
+
1627
+ if @api_client.config.debugging
1628
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.get_resource_evaluation_filters ...'
1629
+ end
1630
+ # resource path
1631
+ local_var_path = '/api/v2/cloud_security_management/resource_filters'
1632
+
1633
+ # query parameters
1634
+ query_params = opts[:query_params] || {}
1635
+ query_params[:'cloud_provider'] = opts[:'cloud_provider'] if !opts[:'cloud_provider'].nil?
1636
+ query_params[:'account_id'] = opts[:'account_id'] if !opts[:'account_id'].nil?
1637
+ query_params[:'skip_cache'] = opts[:'skip_cache'] if !opts[:'skip_cache'].nil?
1638
+
1639
+ # header parameters
1640
+ header_params = opts[:header_params] || {}
1641
+ # HTTP header 'Accept' (if needed)
1642
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1643
+
1644
+ # form parameters
1645
+ form_params = opts[:form_params] || {}
1646
+
1647
+ # http body (model)
1648
+ post_body = opts[:debug_body]
1649
+
1650
+ # return_type
1651
+ return_type = opts[:debug_return_type] || 'GetResourceEvaluationFiltersResponse'
1652
+
1653
+ # auth_names
1654
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1655
+
1656
+ new_options = opts.merge(
1657
+ :operation => :get_resource_evaluation_filters,
1658
+ :header_params => header_params,
1659
+ :query_params => query_params,
1660
+ :form_params => form_params,
1661
+ :body => post_body,
1662
+ :auth_names => auth_names,
1663
+ :return_type => return_type,
1664
+ :api_version => "V2"
1665
+ )
1666
+
1667
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
1668
+ if @api_client.config.debugging
1669
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#get_resource_evaluation_filters\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1670
+ end
1671
+ return data, status_code, headers
1672
+ end
1673
+
1608
1674
  # Get a rule's version history.
1609
1675
  #
1610
1676
  # @see #get_rule_version_history_with_http_info
@@ -3790,6 +3856,73 @@ module DatadogAPIClient::V2
3790
3856
  return data, status_code, headers
3791
3857
  end
3792
3858
 
3859
+ # Update resource filters.
3860
+ #
3861
+ # @see #update_resource_evaluation_filters_with_http_info
3862
+ def update_resource_evaluation_filters(body, opts = {})
3863
+ data, _status_code, _headers = update_resource_evaluation_filters_with_http_info(body, opts)
3864
+ data
3865
+ end
3866
+
3867
+ # Update resource filters.
3868
+ #
3869
+ # Update resource filters.
3870
+ #
3871
+ # @param body [UpdateResourceEvaluationFiltersRequest]
3872
+ # @param opts [Hash] the optional parameters
3873
+ # @return [Array<(UpdateResourceEvaluationFiltersResponse, Integer, Hash)>] UpdateResourceEvaluationFiltersResponse data, response status code and response headers
3874
+ def update_resource_evaluation_filters_with_http_info(body, opts = {})
3875
+
3876
+ if @api_client.config.debugging
3877
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.update_resource_evaluation_filters ...'
3878
+ end
3879
+ # verify the required parameter 'body' is set
3880
+ if @api_client.config.client_side_validation && body.nil?
3881
+ fail ArgumentError, "Missing the required parameter 'body' when calling SecurityMonitoringAPI.update_resource_evaluation_filters"
3882
+ end
3883
+ # resource path
3884
+ local_var_path = '/api/v2/cloud_security_management/resource_filters'
3885
+
3886
+ # query parameters
3887
+ query_params = opts[:query_params] || {}
3888
+
3889
+ # header parameters
3890
+ header_params = opts[:header_params] || {}
3891
+ # HTTP header 'Accept' (if needed)
3892
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
3893
+ # HTTP header 'Content-Type'
3894
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
3895
+
3896
+ # form parameters
3897
+ form_params = opts[:form_params] || {}
3898
+
3899
+ # http body (model)
3900
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
3901
+
3902
+ # return_type
3903
+ return_type = opts[:debug_return_type] || 'UpdateResourceEvaluationFiltersResponse'
3904
+
3905
+ # auth_names
3906
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
3907
+
3908
+ new_options = opts.merge(
3909
+ :operation => :update_resource_evaluation_filters,
3910
+ :header_params => header_params,
3911
+ :query_params => query_params,
3912
+ :form_params => form_params,
3913
+ :body => post_body,
3914
+ :auth_names => auth_names,
3915
+ :return_type => return_type,
3916
+ :api_version => "V2"
3917
+ )
3918
+
3919
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Put, local_var_path, new_options)
3920
+ if @api_client.config.debugging
3921
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#update_resource_evaluation_filters\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
3922
+ end
3923
+ return data, status_code, headers
3924
+ end
3925
+
3793
3926
  # Update a security filter.
3794
3927
  #
3795
3928
  # @see #update_security_filter_with_http_info
@@ -197,6 +197,107 @@ module DatadogAPIClient::V2
197
197
  end
198
198
  end
199
199
 
200
+ # Get a list of entity relations.
201
+ #
202
+ # @see #list_catalog_relation_with_http_info
203
+ def list_catalog_relation(opts = {})
204
+ data, _status_code, _headers = list_catalog_relation_with_http_info(opts)
205
+ data
206
+ end
207
+
208
+ # Get a list of entity relations.
209
+ #
210
+ # Get a list of entity relations from Software Catalog.
211
+ #
212
+ # @param opts [Hash] the optional parameters
213
+ # @option opts [Integer] :page_offset Specific offset to use as the beginning of the returned page.
214
+ # @option opts [Integer] :page_limit Maximum number of relations in the response.
215
+ # @option opts [RelationType] :filter_type Filter relations by type.
216
+ # @option opts [String] :filter_from_ref Filter relations by the reference of the first entity in the relation.
217
+ # @option opts [String] :filter_to_ref Filter relations by the reference of the second entity in the relation.
218
+ # @option opts [RelationIncludeType] :include Include relationship data.
219
+ # @return [Array<(ListRelationCatalogResponse, Integer, Hash)>] ListRelationCatalogResponse data, response status code and response headers
220
+ def list_catalog_relation_with_http_info(opts = {})
221
+
222
+ if @api_client.config.debugging
223
+ @api_client.config.logger.debug 'Calling API: SoftwareCatalogAPI.list_catalog_relation ...'
224
+ end
225
+ allowable_values = ['RelationTypeOwns', 'RelationTypeOwnedBy', 'RelationTypeDependsOn', 'RelationTypeDependencyOf', 'RelationTypePartsOf', 'RelationTypeHasPart', 'RelationTypeOtherOwns', 'RelationTypeOtherOwnedBy', 'RelationTypeImplementedBy', 'RelationTypeImplements']
226
+ if @api_client.config.client_side_validation && opts[:'filter_type'] && !allowable_values.include?(opts[:'filter_type'])
227
+ fail ArgumentError, "invalid value for \"filter_type\", must be one of #{allowable_values}"
228
+ end
229
+ allowable_values = ['entity', 'schema']
230
+ if @api_client.config.client_side_validation && opts[:'include'] && !allowable_values.include?(opts[:'include'])
231
+ fail ArgumentError, "invalid value for \"include\", must be one of #{allowable_values}"
232
+ end
233
+ # resource path
234
+ local_var_path = '/api/v2/catalog/relation'
235
+
236
+ # query parameters
237
+ query_params = opts[:query_params] || {}
238
+ query_params[:'page[offset]'] = opts[:'page_offset'] if !opts[:'page_offset'].nil?
239
+ query_params[:'page[limit]'] = opts[:'page_limit'] if !opts[:'page_limit'].nil?
240
+ query_params[:'filter[type]'] = opts[:'filter_type'] if !opts[:'filter_type'].nil?
241
+ query_params[:'filter[from_ref]'] = opts[:'filter_from_ref'] if !opts[:'filter_from_ref'].nil?
242
+ query_params[:'filter[to_ref]'] = opts[:'filter_to_ref'] if !opts[:'filter_to_ref'].nil?
243
+ query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
244
+
245
+ # header parameters
246
+ header_params = opts[:header_params] || {}
247
+ # HTTP header 'Accept' (if needed)
248
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
249
+
250
+ # form parameters
251
+ form_params = opts[:form_params] || {}
252
+
253
+ # http body (model)
254
+ post_body = opts[:debug_body]
255
+
256
+ # return_type
257
+ return_type = opts[:debug_return_type] || 'ListRelationCatalogResponse'
258
+
259
+ # auth_names
260
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
261
+
262
+ new_options = opts.merge(
263
+ :operation => :list_catalog_relation,
264
+ :header_params => header_params,
265
+ :query_params => query_params,
266
+ :form_params => form_params,
267
+ :body => post_body,
268
+ :auth_names => auth_names,
269
+ :return_type => return_type,
270
+ :api_version => "V2"
271
+ )
272
+
273
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
274
+ if @api_client.config.debugging
275
+ @api_client.config.logger.debug "API called: SoftwareCatalogAPI#list_catalog_relation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
276
+ end
277
+ return data, status_code, headers
278
+ end
279
+
280
+ # Get a list of entity relations.
281
+ #
282
+ # Provide a paginated version of {#list_catalog_relation}, returning all items.
283
+ #
284
+ # To use it you need to use a block: list_catalog_relation_with_pagination { |item| p item }
285
+ #
286
+ # @yield [RelationResponse] Paginated items
287
+ def list_catalog_relation_with_pagination(opts = {})
288
+ api_version = "V2"
289
+ page_size = @api_client.get_attribute_from_path(opts, "page_limit", 100)
290
+ @api_client.set_attribute_from_path(api_version, opts, "page_limit", Integer, page_size)
291
+ while true do
292
+ response = list_catalog_relation(opts)
293
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
294
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
295
+ break
296
+ end
297
+ @api_client.set_attribute_from_path(api_version, opts, "page_offset", Integer, @api_client.get_attribute_from_path(opts, "page_offset", 0) + page_size)
298
+ end
299
+ end
300
+
200
301
  # Create or update entities.
201
302
  #
202
303
  # @see #upsert_catalog_entity_with_http_info
@@ -17,11 +17,11 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Defines the teams that this schedule update is associated with.
21
- class ScheduleUpdateRequestDataRelationshipsTeams
20
+ # Response object that includes a list of Agent policies
21
+ class CloudWorkloadSecurityAgentPoliciesListResponse
22
22
  include BaseGenericModel
23
23
 
24
- # An array of team references.
24
+ # A list of Agent policy objects
25
25
  attr_accessor :data
26
26
 
27
27
  attr_accessor :additional_properties
@@ -38,7 +38,7 @@ module DatadogAPIClient::V2
38
38
  # @!visibility private
39
39
  def self.openapi_types
40
40
  {
41
- :'data' => :'Array<ScheduleUpdateRequestDataRelationshipsTeamsDataItems>'
41
+ :'data' => :'Array<CloudWorkloadSecurityAgentPolicyData>'
42
42
  }
43
43
  end
44
44
 
@@ -47,7 +47,7 @@ module DatadogAPIClient::V2
47
47
  # @!visibility private
48
48
  def initialize(attributes = {})
49
49
  if (!attributes.is_a?(Hash))
50
- fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ScheduleUpdateRequestDataRelationshipsTeams` initialize method"
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CloudWorkloadSecurityAgentPoliciesListResponse` initialize method"
51
51
  end
52
52
 
53
53
  self.additional_properties = {}
@@ -0,0 +1,300 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # A Cloud Workload Security Agent policy returned by the API
21
+ class CloudWorkloadSecurityAgentPolicyAttributes
22
+ include BaseGenericModel
23
+
24
+ # The number of rules with the blocking feature in this policy
25
+ attr_reader :blocking_rules_count
26
+
27
+ # Whether the policy is managed by Datadog
28
+ attr_accessor :datadog_managed
29
+
30
+ # The description of the policy
31
+ attr_accessor :description
32
+
33
+ # The number of rules that are disabled in this policy
34
+ attr_reader :disabled_rules_count
35
+
36
+ # Whether the Agent policy is enabled
37
+ attr_accessor :enabled
38
+
39
+ # The host tags defining where this policy is deployed
40
+ attr_accessor :host_tags
41
+
42
+ # The host tags defining where this policy is deployed, the inner values are linked with AND, the outer values are linked with OR
43
+ attr_accessor :host_tags_lists
44
+
45
+ # The number of rules in the monitoring state in this policy
46
+ attr_reader :monitoring_rules_count
47
+
48
+ # The name of the policy
49
+ attr_accessor :name
50
+
51
+ # The version of the policy
52
+ attr_accessor :policy_version
53
+
54
+ # The priority of the policy
55
+ attr_accessor :priority
56
+
57
+ # The number of rules in this policy
58
+ attr_reader :rule_count
59
+
60
+ # Timestamp in milliseconds when the policy was last updated
61
+ attr_accessor :update_date
62
+
63
+ # When the policy was last updated, timestamp in milliseconds
64
+ attr_accessor :updated_at
65
+
66
+ # The attributes of the user who last updated the policy
67
+ attr_accessor :updater
68
+
69
+ attr_accessor :additional_properties
70
+
71
+ # Attribute mapping from ruby-style variable name to JSON key.
72
+ # @!visibility private
73
+ def self.attribute_map
74
+ {
75
+ :'blocking_rules_count' => :'blockingRulesCount',
76
+ :'datadog_managed' => :'datadogManaged',
77
+ :'description' => :'description',
78
+ :'disabled_rules_count' => :'disabledRulesCount',
79
+ :'enabled' => :'enabled',
80
+ :'host_tags' => :'hostTags',
81
+ :'host_tags_lists' => :'hostTagsLists',
82
+ :'monitoring_rules_count' => :'monitoringRulesCount',
83
+ :'name' => :'name',
84
+ :'policy_version' => :'policyVersion',
85
+ :'priority' => :'priority',
86
+ :'rule_count' => :'ruleCount',
87
+ :'update_date' => :'updateDate',
88
+ :'updated_at' => :'updatedAt',
89
+ :'updater' => :'updater'
90
+ }
91
+ end
92
+
93
+ # Attribute type mapping.
94
+ # @!visibility private
95
+ def self.openapi_types
96
+ {
97
+ :'blocking_rules_count' => :'Integer',
98
+ :'datadog_managed' => :'Boolean',
99
+ :'description' => :'String',
100
+ :'disabled_rules_count' => :'Integer',
101
+ :'enabled' => :'Boolean',
102
+ :'host_tags' => :'Array<String>',
103
+ :'host_tags_lists' => :'Array<Array<String>>',
104
+ :'monitoring_rules_count' => :'Integer',
105
+ :'name' => :'String',
106
+ :'policy_version' => :'String',
107
+ :'priority' => :'Integer',
108
+ :'rule_count' => :'Integer',
109
+ :'update_date' => :'Integer',
110
+ :'updated_at' => :'Integer',
111
+ :'updater' => :'CloudWorkloadSecurityAgentPolicyUpdaterAttributes'
112
+ }
113
+ end
114
+
115
+ # Initializes the object
116
+ # @param attributes [Hash] Model attributes in the form of hash
117
+ # @!visibility private
118
+ def initialize(attributes = {})
119
+ if (!attributes.is_a?(Hash))
120
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::CloudWorkloadSecurityAgentPolicyAttributes` initialize method"
121
+ end
122
+
123
+ self.additional_properties = {}
124
+ # check to see if the attribute exists and convert string to symbol for hash key
125
+ attributes = attributes.each_with_object({}) { |(k, v), h|
126
+ if (!self.class.attribute_map.key?(k.to_sym))
127
+ self.additional_properties[k.to_sym] = v
128
+ else
129
+ h[k.to_sym] = v
130
+ end
131
+ }
132
+
133
+ if attributes.key?(:'blocking_rules_count')
134
+ self.blocking_rules_count = attributes[:'blocking_rules_count']
135
+ end
136
+
137
+ if attributes.key?(:'datadog_managed')
138
+ self.datadog_managed = attributes[:'datadog_managed']
139
+ end
140
+
141
+ if attributes.key?(:'description')
142
+ self.description = attributes[:'description']
143
+ end
144
+
145
+ if attributes.key?(:'disabled_rules_count')
146
+ self.disabled_rules_count = attributes[:'disabled_rules_count']
147
+ end
148
+
149
+ if attributes.key?(:'enabled')
150
+ self.enabled = attributes[:'enabled']
151
+ end
152
+
153
+ if attributes.key?(:'host_tags')
154
+ if (value = attributes[:'host_tags']).is_a?(Array)
155
+ self.host_tags = value
156
+ end
157
+ end
158
+
159
+ if attributes.key?(:'host_tags_lists')
160
+ if (value = attributes[:'host_tags_lists']).is_a?(Array)
161
+ self.host_tags_lists = value
162
+ end
163
+ end
164
+
165
+ if attributes.key?(:'monitoring_rules_count')
166
+ self.monitoring_rules_count = attributes[:'monitoring_rules_count']
167
+ end
168
+
169
+ if attributes.key?(:'name')
170
+ self.name = attributes[:'name']
171
+ end
172
+
173
+ if attributes.key?(:'policy_version')
174
+ self.policy_version = attributes[:'policy_version']
175
+ end
176
+
177
+ if attributes.key?(:'priority')
178
+ self.priority = attributes[:'priority']
179
+ end
180
+
181
+ if attributes.key?(:'rule_count')
182
+ self.rule_count = attributes[:'rule_count']
183
+ end
184
+
185
+ if attributes.key?(:'update_date')
186
+ self.update_date = attributes[:'update_date']
187
+ end
188
+
189
+ if attributes.key?(:'updated_at')
190
+ self.updated_at = attributes[:'updated_at']
191
+ end
192
+
193
+ if attributes.key?(:'updater')
194
+ self.updater = attributes[:'updater']
195
+ end
196
+ end
197
+
198
+ # Check to see if the all the properties in the model are valid
199
+ # @return true if the model is valid
200
+ # @!visibility private
201
+ def valid?
202
+ return false if !@blocking_rules_count.nil? && @blocking_rules_count > 2147483647
203
+ return false if !@disabled_rules_count.nil? && @disabled_rules_count > 2147483647
204
+ return false if !@monitoring_rules_count.nil? && @monitoring_rules_count > 2147483647
205
+ return false if !@rule_count.nil? && @rule_count > 2147483647
206
+ true
207
+ end
208
+
209
+ # Custom attribute writer method with validation
210
+ # @param blocking_rules_count [Object] Object to be assigned
211
+ # @!visibility private
212
+ def blocking_rules_count=(blocking_rules_count)
213
+ if !blocking_rules_count.nil? && blocking_rules_count > 2147483647
214
+ fail ArgumentError, 'invalid value for "blocking_rules_count", must be smaller than or equal to 2147483647.'
215
+ end
216
+ @blocking_rules_count = blocking_rules_count
217
+ end
218
+
219
+ # Custom attribute writer method with validation
220
+ # @param disabled_rules_count [Object] Object to be assigned
221
+ # @!visibility private
222
+ def disabled_rules_count=(disabled_rules_count)
223
+ if !disabled_rules_count.nil? && disabled_rules_count > 2147483647
224
+ fail ArgumentError, 'invalid value for "disabled_rules_count", must be smaller than or equal to 2147483647.'
225
+ end
226
+ @disabled_rules_count = disabled_rules_count
227
+ end
228
+
229
+ # Custom attribute writer method with validation
230
+ # @param monitoring_rules_count [Object] Object to be assigned
231
+ # @!visibility private
232
+ def monitoring_rules_count=(monitoring_rules_count)
233
+ if !monitoring_rules_count.nil? && monitoring_rules_count > 2147483647
234
+ fail ArgumentError, 'invalid value for "monitoring_rules_count", must be smaller than or equal to 2147483647.'
235
+ end
236
+ @monitoring_rules_count = monitoring_rules_count
237
+ end
238
+
239
+ # Custom attribute writer method with validation
240
+ # @param rule_count [Object] Object to be assigned
241
+ # @!visibility private
242
+ def rule_count=(rule_count)
243
+ if !rule_count.nil? && rule_count > 2147483647
244
+ fail ArgumentError, 'invalid value for "rule_count", must be smaller than or equal to 2147483647.'
245
+ end
246
+ @rule_count = rule_count
247
+ end
248
+
249
+ # Returns the object in the form of hash, with additionalProperties support.
250
+ # @return [Hash] Returns the object in the form of hash
251
+ # @!visibility private
252
+ def to_hash
253
+ hash = {}
254
+ self.class.attribute_map.each_pair do |attr, param|
255
+ value = self.send(attr)
256
+ if value.nil?
257
+ is_nullable = self.class.openapi_nullable.include?(attr)
258
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
259
+ end
260
+
261
+ hash[param] = _to_hash(value)
262
+ end
263
+ self.additional_properties.each_pair do |attr, value|
264
+ hash[attr] = value
265
+ end
266
+ hash
267
+ end
268
+
269
+ # Checks equality by comparing each attribute.
270
+ # @param o [Object] Object to be compared
271
+ # @!visibility private
272
+ def ==(o)
273
+ return true if self.equal?(o)
274
+ self.class == o.class &&
275
+ blocking_rules_count == o.blocking_rules_count &&
276
+ datadog_managed == o.datadog_managed &&
277
+ description == o.description &&
278
+ disabled_rules_count == o.disabled_rules_count &&
279
+ enabled == o.enabled &&
280
+ host_tags == o.host_tags &&
281
+ host_tags_lists == o.host_tags_lists &&
282
+ monitoring_rules_count == o.monitoring_rules_count &&
283
+ name == o.name &&
284
+ policy_version == o.policy_version &&
285
+ priority == o.priority &&
286
+ rule_count == o.rule_count &&
287
+ update_date == o.update_date &&
288
+ updated_at == o.updated_at &&
289
+ updater == o.updater &&
290
+ additional_properties == o.additional_properties
291
+ end
292
+
293
+ # Calculates hash code according to all attributes.
294
+ # @return [Integer] Hash code
295
+ # @!visibility private
296
+ def hash
297
+ [blocking_rules_count, datadog_managed, description, disabled_rules_count, enabled, host_tags, host_tags_lists, monitoring_rules_count, name, policy_version, priority, rule_count, update_date, updated_at, updater, additional_properties].hash
298
+ end
299
+ end
300
+ end