datadog_api_client 2.33.0 → 2.35.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 (304) 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 +77 -6
  5. data/.generator/schemas/v2/openapi.yaml +3218 -855
  6. data/.generator/src/generator/formatter.py +2 -2
  7. data/.generator/src/generator/openapi.py +1 -1
  8. data/.generator/src/generator/templates/configuration.j2 +2 -2
  9. data/.github/workflows/publish.yml +16 -8
  10. data/.github/workflows/release.yml +57 -61
  11. data/CHANGELOG.md +35 -0
  12. data/Gemfile +3 -1
  13. data/examples/v1/monitors/CreateMonitor_1539578087.rb +1 -0
  14. data/examples/v1/monitors/CreateMonitor_440013737.rb +1 -0
  15. data/examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.rb +142 -0
  16. data/examples/v2/csm-threats/CreateCSMThreatsAgentPolicy.rb +21 -0
  17. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule.rb +7 -4
  18. data/examples/v2/csm-threats/CreateCSMThreatsAgentRule_1295653933.rb +32 -0
  19. data/examples/v2/csm-threats/CreateCloudWorkloadSecurityAgentRule.rb +3 -2
  20. data/examples/v2/csm-threats/DeleteCSMThreatsAgentPolicy.rb +8 -0
  21. data/examples/v2/csm-threats/DeleteCSMThreatsAgentRule.rb +8 -2
  22. data/examples/v2/csm-threats/DeleteCloudWorkloadSecurityAgentRule.rb +1 -1
  23. data/examples/v2/csm-threats/DownloadCSMThreatsPolicy.rb +1 -1
  24. data/examples/v2/csm-threats/DownloadCloudWorkloadPolicyFile.rb +1 -1
  25. data/examples/v2/csm-threats/GetCSMThreatsAgentPolicy.rb +8 -0
  26. data/examples/v2/csm-threats/GetCSMThreatsAgentRule.rb +8 -2
  27. data/examples/v2/csm-threats/GetCloudWorkloadSecurityAgentRule.rb +1 -1
  28. data/examples/v2/csm-threats/ListCSMThreatsAgentPolicies.rb +5 -0
  29. data/examples/v2/csm-threats/ListCSMThreatsAgentRules.rb +1 -1
  30. data/examples/v2/csm-threats/ListCloudWorkloadSecurityAgentRules.rb +1 -1
  31. data/examples/v2/csm-threats/UpdateCSMThreatsAgentPolicy.rb +25 -0
  32. data/examples/v2/csm-threats/UpdateCSMThreatsAgentRule.rb +12 -4
  33. data/examples/v2/csm-threats/UpdateCloudWorkloadSecurityAgentRule.rb +3 -4
  34. data/examples/v2/dora-metrics/CreateDORADeployment.rb +0 -3
  35. data/examples/v2/dora-metrics/CreateDORAFailure.rb +30 -0
  36. data/examples/v2/dora-metrics/CreateDORAIncident.rb +11 -9
  37. data/examples/v2/dora-metrics/CreateDORAIncident_1768887482.rb +25 -0
  38. data/examples/v2/dora-metrics/GetDORADeployment.rb +5 -0
  39. data/examples/v2/dora-metrics/GetDORAFailure.rb +5 -0
  40. data/examples/v2/dora-metrics/ListDORADeployments.rb +16 -0
  41. data/examples/v2/dora-metrics/ListDORAFailures.rb +16 -0
  42. data/examples/v2/network-device-monitoring/ListDevices_2712868412.rb +5 -0
  43. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +19 -17
  44. data/examples/v2/on-call/CreateOnCallSchedule.rb +11 -15
  45. data/examples/v2/on-call/DeleteOnCallEscalationPolicy.rb +2 -2
  46. data/examples/v2/on-call/DeleteOnCallSchedule.rb +2 -2
  47. data/examples/v2/on-call/GetOnCallEscalationPolicy.rb +6 -3
  48. data/examples/v2/on-call/GetOnCallSchedule.rb +2 -2
  49. data/examples/v2/on-call/GetOnCallTeamRoutingRules.rb +5 -0
  50. data/examples/v2/on-call/GetScheduleOnCallUser.rb +8 -0
  51. data/examples/v2/on-call/GetTeamOnCallUsers.rb +11 -0
  52. data/examples/v2/on-call/SetOnCallTeamRoutingRules.rb +57 -0
  53. data/examples/v2/on-call/UpdateOnCallEscalationPolicy.rb +8 -9
  54. data/examples/v2/on-call/UpdateOnCallSchedule.rb +11 -16
  55. data/examples/v2/on-call-paging/AcknowledgeOnCallPage.rb +5 -0
  56. data/examples/v2/on-call-paging/CreateOnCallPage.rb +23 -0
  57. data/examples/v2/on-call-paging/EscalateOnCallPage.rb +5 -0
  58. data/examples/v2/on-call-paging/ResolveOnCallPage.rb +5 -0
  59. data/examples/v2/rum-metrics/CreateRumMetric.rb +1 -1
  60. data/examples/v2/security-monitoring/GetResourceEvaluationFilters.rb +9 -0
  61. data/examples/v2/security-monitoring/ListFindings_2932019633.rb +11 -0
  62. data/examples/v2/security-monitoring/UpdateResourceEvaluationFilters.rb +21 -0
  63. data/examples/v2/software-catalog/DeleteCatalogKind.rb +5 -0
  64. data/examples/v2/software-catalog/ListCatalogKind.rb +5 -0
  65. data/examples/v2/software-catalog/ListCatalogKind_3806205775.rb +5 -0
  66. data/examples/v2/software-catalog/ListCatalogRelation.rb +5 -0
  67. data/examples/v2/software-catalog/ListCatalogRelation_1311054087.rb +8 -0
  68. data/examples/v2/software-catalog/UpsertCatalogKind.rb +9 -0
  69. data/examples/v2/workflow-automation/CreateWorkflow.rb +0 -1
  70. data/examples/v2/workflow-automation/UpdateWorkflow.rb +0 -1
  71. data/lib/datadog_api_client/configuration.rb +203 -17
  72. data/lib/datadog_api_client/inflector.rb +138 -49
  73. data/lib/datadog_api_client/v1/api/snapshots_api.rb +2 -1
  74. data/lib/datadog_api_client/v1/models/monitor.rb +17 -1
  75. data/lib/datadog_api_client/{v2/models/escalation_policy_create_request_data_attributes_steps_items_assignment.rb → v1/models/monitor_draft_status.rb} +11 -6
  76. data/lib/datadog_api_client/v1/models/monitor_options.rb +1 -1
  77. data/lib/datadog_api_client/v1/models/monitor_update_request.rb +17 -1
  78. data/lib/datadog_api_client/v1/models/synthetics_api_test_step_subtype.rb +6 -0
  79. data/lib/datadog_api_client/v1/models/synthetics_assertion_body_hash_target.rb +2 -2
  80. data/lib/datadog_api_client/v1/models/synthetics_assertion_json_path_target_target.rb +2 -2
  81. data/lib/datadog_api_client/v1/models/synthetics_assertion_target.rb +2 -2
  82. data/lib/datadog_api_client/v1/models/synthetics_assertion_target_value.rb +63 -0
  83. data/lib/datadog_api_client/v1/models/synthetics_assertion_x_path_target_target.rb +2 -2
  84. data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +32 -2
  85. data/lib/datadog_api_client/v2/api/csm_threats_api.rb +424 -52
  86. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +344 -16
  87. data/lib/datadog_api_client/v2/api/metrics_api.rb +5 -5
  88. data/lib/datadog_api_client/v2/api/network_device_monitoring_api.rb +25 -3
  89. data/lib/datadog_api_client/v2/api/on_call_api.rb +301 -24
  90. data/lib/datadog_api_client/v2/api/on_call_paging_api.rb +292 -0
  91. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +5 -3
  92. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +146 -0
  93. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +322 -0
  94. data/lib/datadog_api_client/v2/models/action_query_spec_inputs.rb +1 -1
  95. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams.rb → cloud_workload_security_agent_policies_list_response.rb} +5 -5
  96. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_attributes.rb +300 -0
  97. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_attributes.rb +167 -0
  98. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_data.rb +144 -0
  99. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_create_request.rb +123 -0
  100. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_data.rb +125 -0
  101. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_response.rb +105 -0
  102. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_type.rb +26 -0
  103. 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
  104. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_data.rb +154 -0
  105. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_update_request.rb +123 -0
  106. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_policy_updater_attributes.rb +123 -0
  107. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action.rb +24 -4
  108. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_action_metadata.rb +125 -0
  109. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_restrictions_items.rb → cloud_workload_security_agent_rule_action_set.rb} +62 -33
  110. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +67 -19
  111. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_attributes.rb +83 -5
  112. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_data.rb +2 -2
  113. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_create_request.rb +2 -2
  114. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_creator_attributes.rb +3 -3
  115. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_data.rb +4 -4
  116. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_kill.rb +1 -1
  117. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_response.rb +2 -2
  118. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_type.rb +1 -1
  119. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_attributes.rb +85 -7
  120. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_data.rb +4 -4
  121. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_update_request.rb +2 -2
  122. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_updater_attributes.rb +3 -3
  123. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rules_list_response.rb +2 -2
  124. data/lib/datadog_api_client/v2/models/create_page_request.rb +105 -0
  125. data/lib/datadog_api_client/v2/models/create_page_request_data.rb +133 -0
  126. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes.rb +187 -0
  127. data/lib/datadog_api_client/v2/models/create_page_request_data_attributes_target.rb +115 -0
  128. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items_type.rb → create_page_request_data_type.rb} +3 -3
  129. data/lib/datadog_api_client/v2/models/create_page_response.rb +105 -0
  130. data/lib/datadog_api_client/v2/models/create_page_response_data.rb +133 -0
  131. data/lib/datadog_api_client/v2/models/create_page_response_data_type.rb +26 -0
  132. data/lib/datadog_api_client/v2/models/custom_framework_without_requirements.rb +2 -24
  133. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams.rb → data_relationships_teams.rb} +3 -3
  134. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items.rb → data_relationships_teams_data_items.rb} +3 -3
  135. data/lib/datadog_api_client/v2/models/{schedule_data_relationships_teams_data_items_type.rb → data_relationships_teams_data_items_type.rb} +1 -1
  136. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +21 -1
  137. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_attributes_steps_items_targets_items.rb → dora_event.rb} +17 -7
  138. data/lib/datadog_api_client/v2/models/{dora_incident_request.rb → dora_failure_request.rb} +4 -4
  139. data/lib/datadog_api_client/v2/models/{dora_incident_request_attributes.rb → dora_failure_request_attributes.rb} +31 -11
  140. data/lib/datadog_api_client/v2/models/{dora_incident_request_data.rb → dora_failure_request_data.rb} +4 -4
  141. data/lib/datadog_api_client/v2/models/{dora_incident_response.rb → dora_failure_response.rb} +5 -5
  142. data/lib/datadog_api_client/v2/models/{dora_incident_response_data.rb → dora_failure_response_data.rb} +6 -6
  143. data/lib/datadog_api_client/v2/models/{dora_incident_type.rb → dora_failure_type.rb} +3 -3
  144. data/lib/datadog_api_client/v2/models/dora_fetch_response.rb +105 -0
  145. data/lib/datadog_api_client/v2/models/dora_list_deployments_request.rb +123 -0
  146. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_attributes.rb +163 -0
  147. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data.rb +133 -0
  148. data/lib/datadog_api_client/v2/models/dora_list_deployments_request_data_type.rb +26 -0
  149. data/lib/datadog_api_client/v2/models/dora_list_failures_request.rb +123 -0
  150. data/lib/datadog_api_client/v2/models/dora_list_failures_request_attributes.rb +163 -0
  151. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data.rb +133 -0
  152. data/lib/datadog_api_client/v2/models/dora_list_failures_request_data_type.rb +26 -0
  153. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams.rb → dora_list_response.rb} +5 -5
  154. data/lib/datadog_api_client/v2/models/entity_v3_datadog_code_location_item.rb +1 -21
  155. data/lib/datadog_api_client/v2/models/escalation.rb +143 -0
  156. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +1 -11
  157. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +2 -2
  158. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships.rb +2 -2
  159. data/lib/datadog_api_client/v2/models/escalation_policy_data.rb +1 -1
  160. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +2 -12
  161. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships.rb +2 -2
  162. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +2 -3
  163. data/lib/datadog_api_client/v2/models/escalation_policy_step_relationships.rb +2 -2
  164. 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
  165. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_attributes_steps_items_targets_items_type.rb → escalation_policy_step_target_type.rb} +1 -1
  166. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +1 -11
  167. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +2 -2
  168. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships.rb +2 -2
  169. data/lib/datadog_api_client/v2/models/escalation_policy_user.rb +143 -0
  170. data/lib/datadog_api_client/v2/models/escalation_policy_user_attributes.rb +125 -0
  171. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items_type.rb → escalation_policy_user_type.rb} +1 -1
  172. data/lib/datadog_api_client/v2/models/escalation_relationships.rb +105 -0
  173. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users.rb → escalation_relationships_responders.rb} +5 -5
  174. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_relationships_teams_data_items.rb → escalation_relationships_responders_data_items.rb} +6 -7
  175. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams_data_items_type.rb → escalation_relationships_responders_data_items_type.rb} +3 -3
  176. data/lib/datadog_api_client/v2/models/escalation_targets.rb +107 -0
  177. data/lib/datadog_api_client/v2/models/escalation_type.rb +26 -0
  178. data/lib/datadog_api_client/v2/models/finding_attributes.rb +31 -1
  179. data/lib/datadog_api_client/v2/models/full_custom_framework_data_attributes.rb +2 -34
  180. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response.rb +123 -0
  181. data/lib/datadog_api_client/v2/models/get_resource_evaluation_filters_response_data.rb +125 -0
  182. data/lib/datadog_api_client/v2/models/historical_job_options.rb +2 -2
  183. data/lib/datadog_api_client/v2/models/historical_job_query.rb +1 -1
  184. data/lib/datadog_api_client/v2/models/http_integration.rb +0 -6
  185. data/lib/datadog_api_client/v2/models/http_integration_update.rb +1 -14
  186. data/lib/datadog_api_client/v2/models/incident_severity.rb +1 -0
  187. data/lib/datadog_api_client/v2/models/kind_attributes.rb +143 -0
  188. data/lib/datadog_api_client/v2/models/kind_data.rb +153 -0
  189. data/lib/datadog_api_client/v2/models/kind_metadata.rb +115 -0
  190. data/lib/datadog_api_client/v2/models/kind_obj.rb +143 -0
  191. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items_user.rb → kind_response_meta.rb} +11 -11
  192. data/lib/datadog_api_client/v2/models/layer_attributes.rb +1 -1
  193. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams.rb → list_kind_catalog_response.rb} +17 -7
  194. data/lib/datadog_api_client/v2/models/list_relation_catalog_response.rb +139 -0
  195. data/lib/datadog_api_client/v2/models/list_relation_catalog_response_links.rb +125 -0
  196. data/lib/datadog_api_client/v2/models/metric_tag_configuration_attributes.rb +1 -16
  197. data/lib/datadog_api_client/v2/models/metric_tag_configuration_create_attributes.rb +1 -16
  198. data/lib/datadog_api_client/v2/models/metric_tag_configuration_update_attributes.rb +1 -16
  199. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +2 -13
  200. data/lib/datadog_api_client/v2/models/observability_pipeline_metadata_entry.rb +1 -1
  201. data/lib/datadog_api_client/v2/models/on_call_page_target_type.rb +28 -0
  202. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items_type.rb → page_urgency.rb} +4 -3
  203. data/lib/datadog_api_client/v2/models/relation_attributes.rb +125 -0
  204. data/lib/datadog_api_client/v2/models/relation_entity.rb +125 -0
  205. data/lib/datadog_api_client/v2/models/relation_include_type.rb +27 -0
  206. data/lib/datadog_api_client/v2/models/relation_meta.rb +135 -0
  207. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams.rb → relation_relationships.rb} +21 -13
  208. data/lib/datadog_api_client/v2/models/relation_response.rb +155 -0
  209. data/lib/datadog_api_client/v2/models/relation_response_meta.rb +115 -0
  210. data/lib/datadog_api_client/v2/models/relation_response_type.rb +26 -0
  211. data/lib/datadog_api_client/v2/models/relation_to_entity.rb +115 -0
  212. data/lib/datadog_api_client/v2/models/resource_filter_attributes.rb +133 -0
  213. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items_type.rb → resource_filter_request_type.rb} +3 -3
  214. data/lib/datadog_api_client/v2/models/routing_rule.rb +153 -0
  215. data/lib/datadog_api_client/v2/models/routing_rule_action.rb +63 -0
  216. data/lib/datadog_api_client/v2/models/routing_rule_attributes.rb +137 -0
  217. data/lib/datadog_api_client/v2/models/routing_rule_relationships.rb +105 -0
  218. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy.rb +105 -0
  219. data/lib/datadog_api_client/v2/models/{team_reference_relationships_oncall_users_data_items.rb → routing_rule_relationships_policy_data.rb} +6 -6
  220. data/lib/datadog_api_client/v2/models/routing_rule_relationships_policy_data_type.rb +26 -0
  221. data/lib/datadog_api_client/v2/models/routing_rule_type.rb +26 -0
  222. data/lib/datadog_api_client/v2/models/schedule_create_request_data.rb +1 -1
  223. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes.rb +3 -15
  224. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items.rb +4 -4
  225. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships.rb +2 -2
  226. data/lib/datadog_api_client/v2/models/schedule_data.rb +1 -1
  227. data/lib/datadog_api_client/v2/models/schedule_data_attributes.rb +2 -14
  228. data/lib/datadog_api_client/v2/models/schedule_data_relationships.rb +1 -1
  229. 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
  230. 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
  231. data/lib/datadog_api_client/v2/models/schedule_update_request.rb +1 -1
  232. data/lib/datadog_api_client/v2/models/schedule_update_request_data.rb +2 -2
  233. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes.rb +2 -14
  234. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +4 -4
  235. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships.rb +2 -2
  236. data/lib/datadog_api_client/v2/models/schedule_user_attributes.rb +13 -3
  237. data/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +1 -1
  238. data/lib/datadog_api_client/v2/models/security_monitoring_rule_max_signal_duration.rb +1 -1
  239. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +2 -2
  240. data/lib/datadog_api_client/v2/models/security_monitoring_standard_data_source.rb +2 -1
  241. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_query.rb +1 -1
  242. data/lib/datadog_api_client/v2/models/send_slack_message_action.rb +165 -0
  243. data/lib/datadog_api_client/v2/models/send_slack_message_action_type.rb +26 -0
  244. data/lib/datadog_api_client/v2/models/send_teams_message_action.rb +186 -0
  245. 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
  246. data/lib/datadog_api_client/v2/models/{escalation_policy_create_request_data_relationships_teams.rb → shift.rb} +19 -9
  247. data/lib/datadog_api_client/v2/models/shift_data.rb +153 -0
  248. data/lib/datadog_api_client/v2/models/shift_data_attributes.rb +115 -0
  249. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_attributes_layers_items_members_items.rb → shift_data_relationships.rb} +5 -6
  250. data/lib/datadog_api_client/v2/models/shift_data_relationships_user.rb +123 -0
  251. data/lib/datadog_api_client/v2/models/{schedule_update_request_data_relationships_teams_data_items.rb → shift_data_relationships_user_data.rb} +6 -6
  252. data/lib/datadog_api_client/v2/models/shift_data_relationships_user_data_type.rb +26 -0
  253. data/lib/datadog_api_client/v2/models/shift_data_type.rb +26 -0
  254. data/lib/datadog_api_client/v2/models/shift_included.rb +62 -0
  255. data/lib/datadog_api_client/v2/models/team_on_call_responders.rb +117 -0
  256. data/lib/datadog_api_client/v2/models/{escalation_policy_update_request_data_relationships_teams_data_items.rb → team_on_call_responders_data.rb} +18 -19
  257. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships.rb +115 -0
  258. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_escalations.rb +107 -0
  259. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_escalations_data_items.rb +144 -0
  260. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_escalations_data_items_type.rb +26 -0
  261. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_responders.rb +107 -0
  262. data/lib/datadog_api_client/v2/models/{escalation_policy_data_relationships_teams_data_items.rb → team_on_call_responders_data_relationships_responders_data_items.rb} +6 -6
  263. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_relationships_responders_data_items_type.rb +26 -0
  264. data/lib/datadog_api_client/v2/models/team_on_call_responders_data_type.rb +26 -0
  265. data/lib/datadog_api_client/v2/models/team_on_call_responders_included.rb +63 -0
  266. data/lib/datadog_api_client/v2/models/team_reference.rb +1 -11
  267. data/lib/datadog_api_client/v2/models/team_routing_rules.rb +117 -0
  268. data/lib/datadog_api_client/v2/models/team_routing_rules_data.rb +143 -0
  269. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships.rb +105 -0
  270. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules.rb +107 -0
  271. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items.rb +144 -0
  272. data/lib/datadog_api_client/v2/models/team_routing_rules_data_relationships_rules_data_items_type.rb +26 -0
  273. data/lib/datadog_api_client/v2/models/team_routing_rules_data_type.rb +26 -0
  274. data/lib/datadog_api_client/v2/models/team_routing_rules_included.rb +62 -0
  275. data/lib/datadog_api_client/v2/models/team_routing_rules_request.rb +105 -0
  276. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data.rb +143 -0
  277. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_attributes.rb +107 -0
  278. data/lib/datadog_api_client/v2/models/team_routing_rules_request_data_type.rb +26 -0
  279. data/lib/datadog_api_client/v2/models/team_routing_rules_request_rule.rb +147 -0
  280. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items.rb → time_restriction.rb} +9 -10
  281. data/lib/datadog_api_client/v2/models/{schedule_create_request_data_attributes_layers_items_interval.rb → time_restrictions.rb} +32 -30
  282. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request.rb +123 -0
  283. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_request_data.rb +154 -0
  284. data/lib/datadog_api_client/v2/models/update_resource_evaluation_filters_response.rb +123 -0
  285. 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
  286. data/lib/datadog_api_client/v2/models/upsert_catalog_kind_request.rb +63 -0
  287. data/lib/datadog_api_client/v2/models/upsert_catalog_kind_response.rb +117 -0
  288. data/lib/datadog_api_client/v2/models/urgency.rb +28 -0
  289. data/lib/datadog_api_client/v2/models/user_attributes_status.rb +28 -0
  290. data/lib/datadog_api_client/v2/models/{layer_attributes_restrictions_items_end_day.rb → weekday.rb} +2 -2
  291. data/lib/datadog_api_client/version.rb +1 -1
  292. data/repository.datadog.yaml +8 -0
  293. metadata +171 -57
  294. data/.github/workflows/prepare_release.yml +0 -112
  295. data/RELEASING.md +0 -43
  296. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_targets_items_type.rb +0 -28
  297. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_assignment.rb +0 -27
  298. data/lib/datadog_api_client/v2/models/layer_attributes_restrictions_items_start_day.rb +0 -32
  299. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  300. data/lib/datadog_api_client/v2/models/schedule_create_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  301. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_interval.rb +0 -144
  302. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_end_day.rb +0 -32
  303. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items_restrictions_items_start_day.rb +0 -32
  304. data/lib/datadog_api_client/v2/models/team_reference_relationships.rb +0 -105
@@ -88,6 +88,71 @@ module DatadogAPIClient::V2
88
88
  return data, status_code, headers
89
89
  end
90
90
 
91
+ # Delete a single kind.
92
+ #
93
+ # @see #delete_catalog_kind_with_http_info
94
+ def delete_catalog_kind(kind_id, opts = {})
95
+ delete_catalog_kind_with_http_info(kind_id, opts)
96
+ nil
97
+ end
98
+
99
+ # Delete a single kind.
100
+ #
101
+ # Delete a single kind in Software Catalog.
102
+ #
103
+ # @param kind_id [String] Entity kind.
104
+ # @param opts [Hash] the optional parameters
105
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
106
+ def delete_catalog_kind_with_http_info(kind_id, opts = {})
107
+
108
+ if @api_client.config.debugging
109
+ @api_client.config.logger.debug 'Calling API: SoftwareCatalogAPI.delete_catalog_kind ...'
110
+ end
111
+ # verify the required parameter 'kind_id' is set
112
+ if @api_client.config.client_side_validation && kind_id.nil?
113
+ fail ArgumentError, "Missing the required parameter 'kind_id' when calling SoftwareCatalogAPI.delete_catalog_kind"
114
+ end
115
+ # resource path
116
+ local_var_path = '/api/v2/catalog/kind/{kind_id}'.sub('{kind_id}', CGI.escape(kind_id.to_s).gsub('%2F', '/'))
117
+
118
+ # query parameters
119
+ query_params = opts[:query_params] || {}
120
+
121
+ # header parameters
122
+ header_params = opts[:header_params] || {}
123
+ # HTTP header 'Accept' (if needed)
124
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
125
+
126
+ # form parameters
127
+ form_params = opts[:form_params] || {}
128
+
129
+ # http body (model)
130
+ post_body = opts[:debug_body]
131
+
132
+ # return_type
133
+ return_type = opts[:debug_return_type]
134
+
135
+ # auth_names
136
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
137
+
138
+ new_options = opts.merge(
139
+ :operation => :delete_catalog_kind,
140
+ :header_params => header_params,
141
+ :query_params => query_params,
142
+ :form_params => form_params,
143
+ :body => post_body,
144
+ :auth_names => auth_names,
145
+ :return_type => return_type,
146
+ :api_version => "V2"
147
+ )
148
+
149
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
150
+ if @api_client.config.debugging
151
+ @api_client.config.logger.debug "API called: SoftwareCatalogAPI#delete_catalog_kind\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
152
+ end
153
+ return data, status_code, headers
154
+ end
155
+
91
156
  # Get a list of entities.
92
157
  #
93
158
  # @see #list_catalog_entity_with_http_info
@@ -197,6 +262,196 @@ module DatadogAPIClient::V2
197
262
  end
198
263
  end
199
264
 
265
+ # Get a list of entity kinds.
266
+ #
267
+ # @see #list_catalog_kind_with_http_info
268
+ def list_catalog_kind(opts = {})
269
+ data, _status_code, _headers = list_catalog_kind_with_http_info(opts)
270
+ data
271
+ end
272
+
273
+ # Get a list of entity kinds.
274
+ #
275
+ # Get a list of entity kinds from Software Catalog.
276
+ #
277
+ # @param opts [Hash] the optional parameters
278
+ # @option opts [Integer] :page_offset Specific offset to use as the beginning of the returned page.
279
+ # @option opts [Integer] :page_limit Maximum number of kinds in the response.
280
+ # @option opts [String] :filter_id Filter entities by UUID.
281
+ # @option opts [String] :filter_name Filter entities by name.
282
+ # @return [Array<(ListKindCatalogResponse, Integer, Hash)>] ListKindCatalogResponse data, response status code and response headers
283
+ def list_catalog_kind_with_http_info(opts = {})
284
+
285
+ if @api_client.config.debugging
286
+ @api_client.config.logger.debug 'Calling API: SoftwareCatalogAPI.list_catalog_kind ...'
287
+ end
288
+ # resource path
289
+ local_var_path = '/api/v2/catalog/kind'
290
+
291
+ # query parameters
292
+ query_params = opts[:query_params] || {}
293
+ query_params[:'page[offset]'] = opts[:'page_offset'] if !opts[:'page_offset'].nil?
294
+ query_params[:'page[limit]'] = opts[:'page_limit'] if !opts[:'page_limit'].nil?
295
+ query_params[:'filter[id]'] = opts[:'filter_id'] if !opts[:'filter_id'].nil?
296
+ query_params[:'filter[name]'] = opts[:'filter_name'] if !opts[:'filter_name'].nil?
297
+
298
+ # header parameters
299
+ header_params = opts[:header_params] || {}
300
+ # HTTP header 'Accept' (if needed)
301
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
302
+
303
+ # form parameters
304
+ form_params = opts[:form_params] || {}
305
+
306
+ # http body (model)
307
+ post_body = opts[:debug_body]
308
+
309
+ # return_type
310
+ return_type = opts[:debug_return_type] || 'ListKindCatalogResponse'
311
+
312
+ # auth_names
313
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
314
+
315
+ new_options = opts.merge(
316
+ :operation => :list_catalog_kind,
317
+ :header_params => header_params,
318
+ :query_params => query_params,
319
+ :form_params => form_params,
320
+ :body => post_body,
321
+ :auth_names => auth_names,
322
+ :return_type => return_type,
323
+ :api_version => "V2"
324
+ )
325
+
326
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
327
+ if @api_client.config.debugging
328
+ @api_client.config.logger.debug "API called: SoftwareCatalogAPI#list_catalog_kind\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
329
+ end
330
+ return data, status_code, headers
331
+ end
332
+
333
+ # Get a list of entity kinds.
334
+ #
335
+ # Provide a paginated version of {#list_catalog_kind}, returning all items.
336
+ #
337
+ # To use it you need to use a block: list_catalog_kind_with_pagination { |item| p item }
338
+ #
339
+ # @yield [KindData] Paginated items
340
+ def list_catalog_kind_with_pagination(opts = {})
341
+ api_version = "V2"
342
+ page_size = @api_client.get_attribute_from_path(opts, "page_limit", 100)
343
+ @api_client.set_attribute_from_path(api_version, opts, "page_limit", Integer, page_size)
344
+ while true do
345
+ response = list_catalog_kind(opts)
346
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
347
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
348
+ break
349
+ end
350
+ @api_client.set_attribute_from_path(api_version, opts, "page_offset", Integer, @api_client.get_attribute_from_path(opts, "page_offset", 0) + page_size)
351
+ end
352
+ end
353
+
354
+ # Get a list of entity relations.
355
+ #
356
+ # @see #list_catalog_relation_with_http_info
357
+ def list_catalog_relation(opts = {})
358
+ data, _status_code, _headers = list_catalog_relation_with_http_info(opts)
359
+ data
360
+ end
361
+
362
+ # Get a list of entity relations.
363
+ #
364
+ # Get a list of entity relations from Software Catalog.
365
+ #
366
+ # @param opts [Hash] the optional parameters
367
+ # @option opts [Integer] :page_offset Specific offset to use as the beginning of the returned page.
368
+ # @option opts [Integer] :page_limit Maximum number of relations in the response.
369
+ # @option opts [RelationType] :filter_type Filter relations by type.
370
+ # @option opts [String] :filter_from_ref Filter relations by the reference of the first entity in the relation.
371
+ # @option opts [String] :filter_to_ref Filter relations by the reference of the second entity in the relation.
372
+ # @option opts [RelationIncludeType] :include Include relationship data.
373
+ # @return [Array<(ListRelationCatalogResponse, Integer, Hash)>] ListRelationCatalogResponse data, response status code and response headers
374
+ def list_catalog_relation_with_http_info(opts = {})
375
+
376
+ if @api_client.config.debugging
377
+ @api_client.config.logger.debug 'Calling API: SoftwareCatalogAPI.list_catalog_relation ...'
378
+ end
379
+ allowable_values = ['RelationTypeOwns', 'RelationTypeOwnedBy', 'RelationTypeDependsOn', 'RelationTypeDependencyOf', 'RelationTypePartsOf', 'RelationTypeHasPart', 'RelationTypeOtherOwns', 'RelationTypeOtherOwnedBy', 'RelationTypeImplementedBy', 'RelationTypeImplements']
380
+ if @api_client.config.client_side_validation && opts[:'filter_type'] && !allowable_values.include?(opts[:'filter_type'])
381
+ fail ArgumentError, "invalid value for \"filter_type\", must be one of #{allowable_values}"
382
+ end
383
+ allowable_values = ['entity', 'schema']
384
+ if @api_client.config.client_side_validation && opts[:'include'] && !allowable_values.include?(opts[:'include'])
385
+ fail ArgumentError, "invalid value for \"include\", must be one of #{allowable_values}"
386
+ end
387
+ # resource path
388
+ local_var_path = '/api/v2/catalog/relation'
389
+
390
+ # query parameters
391
+ query_params = opts[:query_params] || {}
392
+ query_params[:'page[offset]'] = opts[:'page_offset'] if !opts[:'page_offset'].nil?
393
+ query_params[:'page[limit]'] = opts[:'page_limit'] if !opts[:'page_limit'].nil?
394
+ query_params[:'filter[type]'] = opts[:'filter_type'] if !opts[:'filter_type'].nil?
395
+ query_params[:'filter[from_ref]'] = opts[:'filter_from_ref'] if !opts[:'filter_from_ref'].nil?
396
+ query_params[:'filter[to_ref]'] = opts[:'filter_to_ref'] if !opts[:'filter_to_ref'].nil?
397
+ query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
398
+
399
+ # header parameters
400
+ header_params = opts[:header_params] || {}
401
+ # HTTP header 'Accept' (if needed)
402
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
403
+
404
+ # form parameters
405
+ form_params = opts[:form_params] || {}
406
+
407
+ # http body (model)
408
+ post_body = opts[:debug_body]
409
+
410
+ # return_type
411
+ return_type = opts[:debug_return_type] || 'ListRelationCatalogResponse'
412
+
413
+ # auth_names
414
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
415
+
416
+ new_options = opts.merge(
417
+ :operation => :list_catalog_relation,
418
+ :header_params => header_params,
419
+ :query_params => query_params,
420
+ :form_params => form_params,
421
+ :body => post_body,
422
+ :auth_names => auth_names,
423
+ :return_type => return_type,
424
+ :api_version => "V2"
425
+ )
426
+
427
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
428
+ if @api_client.config.debugging
429
+ @api_client.config.logger.debug "API called: SoftwareCatalogAPI#list_catalog_relation\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
430
+ end
431
+ return data, status_code, headers
432
+ end
433
+
434
+ # Get a list of entity relations.
435
+ #
436
+ # Provide a paginated version of {#list_catalog_relation}, returning all items.
437
+ #
438
+ # To use it you need to use a block: list_catalog_relation_with_pagination { |item| p item }
439
+ #
440
+ # @yield [RelationResponse] Paginated items
441
+ def list_catalog_relation_with_pagination(opts = {})
442
+ api_version = "V2"
443
+ page_size = @api_client.get_attribute_from_path(opts, "page_limit", 100)
444
+ @api_client.set_attribute_from_path(api_version, opts, "page_limit", Integer, page_size)
445
+ while true do
446
+ response = list_catalog_relation(opts)
447
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
448
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
449
+ break
450
+ end
451
+ @api_client.set_attribute_from_path(api_version, opts, "page_offset", Integer, @api_client.get_attribute_from_path(opts, "page_offset", 0) + page_size)
452
+ end
453
+ end
454
+
200
455
  # Create or update entities.
201
456
  #
202
457
  # @see #upsert_catalog_entity_with_http_info
@@ -263,5 +518,72 @@ module DatadogAPIClient::V2
263
518
  end
264
519
  return data, status_code, headers
265
520
  end
521
+
522
+ # Create or update kinds.
523
+ #
524
+ # @see #upsert_catalog_kind_with_http_info
525
+ def upsert_catalog_kind(body, opts = {})
526
+ data, _status_code, _headers = upsert_catalog_kind_with_http_info(body, opts)
527
+ data
528
+ end
529
+
530
+ # Create or update kinds.
531
+ #
532
+ # Create or update kinds in Software Catalog.
533
+ #
534
+ # @param body [UpsertCatalogKindRequest] Kind YAML or JSON.
535
+ # @param opts [Hash] the optional parameters
536
+ # @return [Array<(UpsertCatalogKindResponse, Integer, Hash)>] UpsertCatalogKindResponse data, response status code and response headers
537
+ def upsert_catalog_kind_with_http_info(body, opts = {})
538
+
539
+ if @api_client.config.debugging
540
+ @api_client.config.logger.debug 'Calling API: SoftwareCatalogAPI.upsert_catalog_kind ...'
541
+ end
542
+ # verify the required parameter 'body' is set
543
+ if @api_client.config.client_side_validation && body.nil?
544
+ fail ArgumentError, "Missing the required parameter 'body' when calling SoftwareCatalogAPI.upsert_catalog_kind"
545
+ end
546
+ # resource path
547
+ local_var_path = '/api/v2/catalog/kind'
548
+
549
+ # query parameters
550
+ query_params = opts[:query_params] || {}
551
+
552
+ # header parameters
553
+ header_params = opts[:header_params] || {}
554
+ # HTTP header 'Accept' (if needed)
555
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
556
+ # HTTP header 'Content-Type'
557
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
558
+
559
+ # form parameters
560
+ form_params = opts[:form_params] || {}
561
+
562
+ # http body (model)
563
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
564
+
565
+ # return_type
566
+ return_type = opts[:debug_return_type] || 'UpsertCatalogKindResponse'
567
+
568
+ # auth_names
569
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
570
+
571
+ new_options = opts.merge(
572
+ :operation => :upsert_catalog_kind,
573
+ :header_params => header_params,
574
+ :query_params => query_params,
575
+ :form_params => form_params,
576
+ :body => post_body,
577
+ :auth_names => auth_names,
578
+ :return_type => return_type,
579
+ :api_version => "V2"
580
+ )
581
+
582
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
583
+ if @api_client.config.debugging
584
+ @api_client.config.logger.debug "API called: SoftwareCatalogAPI#upsert_catalog_kind\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
585
+ end
586
+ return data, status_code, headers
587
+ end
266
588
  end
267
589
  end
@@ -27,7 +27,7 @@ module DatadogAPIClient::V2
27
27
  def openapi_one_of
28
28
  [
29
29
  :'String',
30
- :'ActionQuerySpecInput'
30
+ :'Hash<String, Object>'
31
31
  ]
32
32
  end
33
33
  # Builds the object
@@ -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