datadog_api_client 2.47.0 → 2.49.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 (345) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +520 -49
  3. data/.generator/schemas/v2/openapi.yaml +4542 -1006
  4. data/CHANGELOG.md +45 -0
  5. data/examples/v1/dashboards/CreateDashboard_1093147852.rb +66 -0
  6. data/examples/v1/dashboards/CreateDashboard_1442588603.rb +1 -1
  7. data/examples/v1/dashboards/CreateDashboard_1617893815.rb +61 -0
  8. data/examples/v1/dashboards/CreateDashboard_1712853070.rb +66 -0
  9. data/examples/v1/dashboards/CreateDashboard_2345541687.rb +65 -0
  10. data/examples/v1/dashboards/CreateDashboard_252716965.rb +1 -1
  11. data/examples/v1/dashboards/CreateDashboard_2617251399.rb +66 -0
  12. data/examples/v1/dashboards/CreateDashboard_2823363212.rb +55 -0
  13. data/examples/v1/dashboards/CreateDashboard_3882428227.rb +1 -1
  14. data/examples/v1/monitors/CreateMonitor_3626832481.rb +33 -0
  15. data/examples/v1/synthetics/CreateSyntheticsAPITest_2106135939.rb +49 -0
  16. data/examples/v1/tags/GetHostTags.rb +1 -1
  17. data/examples/v1/tags/ListHostTags.rb +1 -1
  18. data/examples/v2/aws-integration/CreateAWSAccount.rb +0 -11
  19. data/examples/v2/aws-integration/CreateAWSAccount_1716720881.rb +0 -11
  20. data/examples/v2/aws-integration/UpdateAWSAccount.rb +0 -11
  21. data/examples/v2/incidents/CreateIncidentAttachment.rb +22 -0
  22. data/examples/v2/incidents/DeleteIncidentAttachment.rb +8 -0
  23. data/examples/v2/incidents/ListIncidentAttachments.rb +1 -1
  24. data/examples/v2/incidents/UpdateIncidentAttachment.rb +20 -0
  25. data/examples/v2/observability-pipelines/CreatePipeline.rb +1 -1
  26. data/examples/v2/observability-pipelines/UpdatePipeline.rb +1 -1
  27. data/examples/v2/observability-pipelines/ValidatePipeline.rb +1 -1
  28. data/examples/v2/on-call/CreateUserNotificationRule.rb +29 -0
  29. data/examples/v2/on-call/DeleteUserNotificationRule.rb +11 -0
  30. data/examples/v2/on-call/GetUserNotificationRule.rb +14 -0
  31. data/examples/v2/on-call/ListUserNotificationRules.rb +11 -0
  32. data/examples/v2/on-call/UpdateUserNotificationRule.rb +36 -0
  33. data/examples/v2/product-analytics/SubmitProductAnalyticsEvent.rb +24 -0
  34. data/examples/v2/reference-tables/UpdateReferenceTable.rb +0 -1
  35. data/examples/v2/reference-tables/UpsertRows.rb +1 -3
  36. data/examples/v2/security-monitoring/CreateSecurityMonitoringCriticalAsset.rb +20 -0
  37. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_2323193894.rb +48 -0
  38. data/examples/v2/security-monitoring/DeleteSecurityMonitoringCriticalAsset.rb +8 -0
  39. data/examples/v2/security-monitoring/GetCriticalAssetsAffectingRule.rb +8 -0
  40. data/examples/v2/security-monitoring/GetSecurityMonitoringCriticalAsset.rb +8 -0
  41. data/examples/v2/security-monitoring/ListSecurityFindings.rb +5 -0
  42. data/examples/v2/security-monitoring/ListSecurityFindings_2925663885.rb +8 -0
  43. data/examples/v2/security-monitoring/ListSecurityMonitoringCriticalAssets.rb +5 -0
  44. data/examples/v2/security-monitoring/SearchSecurityFindings.rb +13 -0
  45. data/examples/v2/security-monitoring/SearchSecurityFindings_3678541639.rb +16 -0
  46. data/examples/v2/security-monitoring/UpdateSecurityMonitoringCriticalAsset.rb +24 -0
  47. data/examples/v2/spa/GetSPARecommendations.rb +1 -1
  48. data/examples/v2/spa/GetSPARecommendationsWithShard.rb +8 -0
  49. data/examples/v2/synthetics/PatchGlobalVariable.rb +19 -0
  50. data/examples/v2/teams/CreateTeamNotificationRule.rb +23 -0
  51. data/examples/v2/teams/DeleteTeamConnections.rb +0 -3
  52. data/examples/v2/teams/DeleteTeamNotificationRule.rb +11 -0
  53. data/examples/v2/teams/GetTeamNotificationRule.rb +11 -0
  54. data/examples/v2/teams/GetTeamNotificationRules.rb +8 -0
  55. data/examples/v2/teams/GetTeamSync.rb +0 -3
  56. data/examples/v2/teams/ListTeamConnections.rb +0 -3
  57. data/examples/v2/teams/ListTeamConnections_2418873869.rb +0 -3
  58. data/examples/v2/teams/SyncTeams.rb +0 -3
  59. data/examples/v2/teams/SyncTeams_3215592344.rb +0 -3
  60. data/examples/v2/teams/UpdateTeamNotificationRule.rb +27 -0
  61. data/lib/datadog_api_client/configuration.rb +62 -12
  62. data/lib/datadog_api_client/inflector.rb +171 -26
  63. data/lib/datadog_api_client/v1/api/synthetics_api.rb +3 -3
  64. data/lib/datadog_api_client/v1/api/tags_api.rb +17 -17
  65. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +6 -4
  66. data/lib/datadog_api_client/v1/models/bar_chart_widget_definition.rb +216 -0
  67. data/lib/datadog_api_client/v1/models/bar_chart_widget_definition_type.rb +26 -0
  68. data/lib/datadog_api_client/v1/models/bar_chart_widget_display.rb +63 -0
  69. data/lib/datadog_api_client/v1/models/bar_chart_widget_flat.rb +123 -0
  70. data/lib/datadog_api_client/v1/models/bar_chart_widget_flat_type.rb +26 -0
  71. data/lib/datadog_api_client/v1/models/bar_chart_widget_legend.rb +28 -0
  72. data/lib/datadog_api_client/v1/models/bar_chart_widget_request.rb +261 -0
  73. data/lib/datadog_api_client/v1/models/bar_chart_widget_scaling.rb +27 -0
  74. data/lib/datadog_api_client/v1/models/bar_chart_widget_stacked.rb +133 -0
  75. data/lib/datadog_api_client/v1/models/bar_chart_widget_stacked_type.rb +26 -0
  76. data/lib/datadog_api_client/v1/models/bar_chart_widget_style.rb +125 -0
  77. data/lib/datadog_api_client/v1/models/distribution_widget_request.rb +36 -2
  78. data/lib/datadog_api_client/v1/models/distribution_widget_x_axis.rb +29 -1
  79. data/lib/datadog_api_client/v1/models/heat_map_widget_definition.rb +23 -1
  80. data/lib/datadog_api_client/v1/models/heat_map_widget_request.rb +21 -1
  81. data/lib/datadog_api_client/v1/models/heat_map_widget_x_axis.rb +107 -0
  82. data/lib/datadog_api_client/v1/models/host_tags.rb +2 -2
  83. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +3 -0
  84. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_data_quality_data_source.rb +26 -0
  85. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_data_quality_model_type_override.rb +28 -0
  86. data/lib/datadog_api_client/{v2/models/data_export_config.rb → v1/models/monitor_formula_and_function_data_quality_monitor_options.rb} +43 -41
  87. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_data_quality_query_definition.rb +232 -0
  88. data/lib/datadog_api_client/v1/models/monitor_formula_and_function_query_definition.rb +2 -1
  89. data/lib/datadog_api_client/v1/models/monitor_type.rb +1 -0
  90. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +6 -0
  91. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +61 -1
  92. data/lib/datadog_api_client/v1/models/split_graph_source_widget_definition.rb +1 -0
  93. data/lib/datadog_api_client/v1/models/synthetics_api_step.rb +2 -1
  94. data/lib/datadog_api_client/v1/models/synthetics_api_subtest_step.rb +236 -0
  95. data/lib/datadog_api_client/v1/models/synthetics_api_subtest_step_subtype.rb +26 -0
  96. data/lib/datadog_api_client/v1/models/synthetics_list_tests_response.rb +1 -1
  97. data/lib/datadog_api_client/v1/models/synthetics_test_details.rb +1 -1
  98. data/lib/datadog_api_client/v1/models/synthetics_test_details_without_steps.rb +221 -0
  99. data/lib/datadog_api_client/v1/models/tag_to_hosts.rb +2 -2
  100. data/lib/datadog_api_client/v1/models/widget_definition.rb +1 -0
  101. data/lib/datadog_api_client/v1/models/{distribution_widget_histogram_request_type.rb → widget_histogram_request_type.rb} +1 -1
  102. data/lib/datadog_api_client/v1/models/widget_marker.rb +3 -1
  103. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +8 -8
  104. data/lib/datadog_api_client/v2/api/events_api.rb +0 -2
  105. data/lib/datadog_api_client/v2/api/fleet_automation_api.rb +3 -3
  106. data/lib/datadog_api_client/v2/api/incidents_api.rb +188 -36
  107. data/lib/datadog_api_client/v2/api/observability_pipelines_api.rb +6 -6
  108. data/lib/datadog_api_client/v2/api/on_call_api.rb +360 -0
  109. data/lib/datadog_api_client/v2/api/product_analytics_api.rb +121 -0
  110. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +597 -0
  111. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +4 -0
  112. data/lib/datadog_api_client/v2/api/spa_api.rb +86 -11
  113. data/lib/datadog_api_client/v2/api/synthetics_api.rb +79 -0
  114. data/lib/datadog_api_client/v2/api/teams_api.rb +339 -30
  115. data/lib/datadog_api_client/v2/models/{awsccm_config.rb → attachment.rb} +22 -12
  116. data/lib/datadog_api_client/v2/models/{incident_attachments_response.rb → attachment_array.rb} +7 -7
  117. data/lib/datadog_api_client/v2/models/{incident_attachment_data.rb → attachment_data.rb} +8 -8
  118. data/lib/datadog_api_client/v2/models/attachment_data_attributes.rb +125 -0
  119. data/lib/datadog_api_client/v2/models/attachment_data_attributes_attachment.rb +115 -0
  120. data/lib/datadog_api_client/v2/models/{incident_attachment_attachment_type.rb → attachment_data_attributes_attachment_type.rb} +3 -3
  121. data/lib/datadog_api_client/v2/models/{incident_attachment_relationships.rb → attachment_data_relationships.rb} +5 -5
  122. data/lib/datadog_api_client/v2/models/{incident_attachment_update_request.rb → attachment_data_relationships_last_modified_by_user.rb} +6 -11
  123. data/lib/datadog_api_client/v2/models/attachment_data_relationships_last_modified_by_user_data.rb +144 -0
  124. data/lib/datadog_api_client/v2/models/{incident_attachments_response_included_item.rb → attachment_included.rb} +3 -3
  125. data/lib/datadog_api_client/v2/models/aws_account_create_request_attributes.rb +1 -11
  126. data/lib/datadog_api_client/v2/models/aws_account_response_attributes.rb +1 -11
  127. data/lib/datadog_api_client/v2/models/aws_account_update_request_attributes.rb +1 -11
  128. data/lib/datadog_api_client/v2/models/azure_storage_destination.rb +2 -0
  129. data/lib/datadog_api_client/v2/models/batch_upsert_rows_request_data_attributes.rb +2 -2
  130. data/lib/datadog_api_client/v2/models/{incident_attachment_update_attributes.rb → batch_upsert_rows_request_data_attributes_value.rb} +4 -4
  131. data/lib/datadog_api_client/v2/models/case_create_attributes.rb +11 -1
  132. data/lib/datadog_api_client/v2/models/{dora_fetch_response.rb → create_attachment_request.rb} +5 -5
  133. data/lib/datadog_api_client/v2/models/{incident_attachment_update_data.rb → create_attachment_request_data.rb} +6 -6
  134. data/lib/datadog_api_client/v2/models/create_attachment_request_data_attributes.rb +115 -0
  135. data/lib/datadog_api_client/v2/models/create_attachment_request_data_attributes_attachment.rb +115 -0
  136. data/lib/datadog_api_client/v2/models/create_on_call_notification_rule_request.rb +123 -0
  137. data/lib/datadog_api_client/v2/models/create_on_call_notification_rule_request_data.rb +143 -0
  138. data/lib/datadog_api_client/v2/models/custom_attribute_type.rb +1 -0
  139. data/lib/datadog_api_client/v2/models/dora_deployment_fetch_response.rb +105 -0
  140. data/lib/datadog_api_client/v2/models/dora_deployment_object.rb +125 -0
  141. data/lib/datadog_api_client/v2/models/dora_deployment_object_attributes.rb +225 -0
  142. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +1 -1
  143. data/lib/datadog_api_client/v2/models/dora_deployments_list_response.rb +107 -0
  144. data/lib/datadog_api_client/v2/models/dora_failure_fetch_response.rb +105 -0
  145. data/lib/datadog_api_client/v2/models/dora_failure_request_attributes.rb +1 -1
  146. data/lib/datadog_api_client/v2/models/{dora_list_response.rb → dora_failures_list_response.rb} +5 -5
  147. data/lib/datadog_api_client/v2/models/{dora_event.rb → dora_incident_object.rb} +8 -8
  148. data/lib/datadog_api_client/v2/models/dora_incident_object_attributes.rb +225 -0
  149. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +23 -1
  150. data/lib/datadog_api_client/v2/models/global_variable_data.rb +125 -0
  151. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request.rb +123 -0
  152. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request_data.rb +115 -0
  153. data/lib/datadog_api_client/v2/models/global_variable_json_patch_request_data_attributes.rb +107 -0
  154. data/lib/datadog_api_client/v2/models/global_variable_json_patch_type.rb +26 -0
  155. data/lib/datadog_api_client/v2/models/global_variable_response.rb +105 -0
  156. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attachment_type.rb → global_variable_type.rb} +3 -3
  157. data/lib/datadog_api_client/v2/models/incident_response_included_item.rb +1 -1
  158. data/lib/datadog_api_client/v2/models/json_patch_operation.rb +154 -0
  159. data/lib/datadog_api_client/v2/models/json_patch_operation_op.rb +31 -0
  160. data/lib/datadog_api_client/v2/models/list_on_call_notification_rules_response.rb +119 -0
  161. data/lib/datadog_api_client/v2/models/list_security_findings_response.rb +127 -0
  162. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination.rb +2 -0
  163. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +14 -2
  164. data/lib/datadog_api_client/v2/models/observability_pipeline_add_fields_processor.rb +15 -3
  165. data/lib/datadog_api_client/v2/models/observability_pipeline_add_hostname_processor.rb +198 -0
  166. data/lib/datadog_api_client/v2/models/observability_pipeline_add_hostname_processor_type.rb +26 -0
  167. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source.rb +3 -1
  168. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination.rb +2 -0
  169. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination.rb +2 -0
  170. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source.rb +3 -1
  171. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_security_lake_destination.rb +2 -0
  172. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attributes.rb → observability_pipeline_cloud_prem_destination.rb} +52 -37
  173. data/lib/datadog_api_client/v2/models/observability_pipeline_cloud_prem_destination_type.rb +26 -0
  174. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +25 -1
  175. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +17 -13
  176. data/lib/datadog_api_client/v2/models/observability_pipeline_config_pipeline_type.rb +27 -0
  177. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_group.rb +11 -1
  178. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_item.rb +14 -10
  179. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +11 -10
  180. data/lib/datadog_api_client/v2/models/observability_pipeline_crowd_strike_next_gen_siem_destination.rb +2 -0
  181. data/lib/datadog_api_client/v2/models/observability_pipeline_custom_processor.rb +14 -2
  182. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_agent_source.rb +4 -2
  183. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_logs_destination.rb +2 -0
  184. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_metrics_destination.rb +169 -0
  185. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_metrics_destination_type.rb +26 -0
  186. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_tags_processor.rb +15 -3
  187. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +14 -2
  188. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination.rb +13 -1
  189. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_data_stream.rb +125 -0
  190. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +25 -3
  191. data/lib/datadog_api_client/v2/models/{incident_attachment_postmortem_attributes.rb → observability_pipeline_enrichment_table_reference_table.rb} +42 -30
  192. data/lib/datadog_api_client/v2/models/observability_pipeline_filter_processor.rb +17 -5
  193. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source.rb +3 -1
  194. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source.rb +3 -1
  195. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +14 -2
  196. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination.rb +2 -0
  197. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +2 -0
  198. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_destination.rb +2 -0
  199. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source.rb +3 -1
  200. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination.rb +220 -0
  201. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_auth_strategy.rb +28 -0
  202. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_compression.rb +123 -0
  203. data/lib/datadog_api_client/v2/models/{incident_attachment_postmortem_attachment_type.rb → observability_pipeline_http_client_destination_compression_algorithm.rb} +3 -3
  204. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_encoding.rb +26 -0
  205. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_destination_type.rb +26 -0
  206. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source.rb +3 -1
  207. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_auth_strategy.rb +1 -0
  208. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source.rb +2 -0
  209. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination.rb +361 -0
  210. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination_compression.rb +30 -0
  211. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination_encoding.rb +27 -0
  212. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_destination_type.rb +26 -0
  213. data/lib/datadog_api_client/v2/models/{observability_pipeline_kafka_source_librdkafka_option.rb → observability_pipeline_kafka_librdkafka_option.rb} +3 -3
  214. data/lib/datadog_api_client/v2/models/{observability_pipeline_kafka_source_sasl.rb → observability_pipeline_kafka_sasl.rb} +3 -3
  215. data/lib/datadog_api_client/v2/models/{observability_pipeline_pipeline_kafka_source_sasl_mechanism.rb → observability_pipeline_kafka_sasl_mechanism.rb} +1 -1
  216. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source.rb +5 -3
  217. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source.rb +3 -1
  218. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor.rb +229 -0
  219. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_rule.rb +188 -0
  220. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_rule_action.rb +27 -0
  221. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_rule_mode.rb +26 -0
  222. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_tags_processor_type.rb +26 -0
  223. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination.rb +2 -0
  224. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +14 -2
  225. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination.rb +2 -0
  226. data/lib/datadog_api_client/v2/models/observability_pipeline_opentelemetry_source.rb +176 -0
  227. data/lib/datadog_api_client/v2/models/observability_pipeline_opentelemetry_source_type.rb +26 -0
  228. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +14 -2
  229. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_json_processor.rb +14 -2
  230. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_xml_processor.rb +300 -0
  231. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_xml_processor_type.rb +26 -0
  232. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +31 -6
  233. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_overflow_action.rb +1 -1
  234. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +14 -2
  235. data/lib/datadog_api_client/v2/models/observability_pipeline_remove_fields_processor.rb +15 -3
  236. data/lib/datadog_api_client/v2/models/observability_pipeline_rename_fields_processor.rb +14 -2
  237. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination.rb +2 -0
  238. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source.rb +3 -1
  239. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +45 -20
  240. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +15 -3
  241. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_options.rb +11 -1
  242. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_options.rb +11 -1
  243. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination.rb +2 -0
  244. data/lib/datadog_api_client/v2/models/observability_pipeline_socket_destination.rb +2 -0
  245. data/lib/datadog_api_client/v2/models/observability_pipeline_socket_source.rb +3 -1
  246. data/lib/datadog_api_client/v2/models/observability_pipeline_split_array_processor.rb +229 -0
  247. data/lib/datadog_api_client/v2/models/{incident_attachment_link_attributes_attachment_object.rb → observability_pipeline_split_array_processor_array_config.rb} +30 -30
  248. data/lib/datadog_api_client/v2/models/observability_pipeline_split_array_processor_type.rb +26 -0
  249. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination.rb +3 -1
  250. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source.rb +3 -1
  251. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source.rb +3 -1
  252. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination.rb +2 -0
  253. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source.rb +3 -1
  254. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination.rb +2 -0
  255. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source.rb +3 -1
  256. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +14 -2
  257. data/lib/datadog_api_client/v2/models/{incident_attachment_update_response.rb → on_call_notification_rule.rb} +8 -11
  258. data/lib/datadog_api_client/v2/models/on_call_notification_rule_attributes.rb +125 -0
  259. data/lib/datadog_api_client/v2/models/on_call_notification_rule_category.rb +27 -0
  260. data/lib/datadog_api_client/v2/models/on_call_notification_rule_channel_relationship.rb +123 -0
  261. data/lib/datadog_api_client/v2/models/on_call_notification_rule_channel_relationship_data.rb +115 -0
  262. data/lib/datadog_api_client/v2/models/{incident_attachment_attributes.rb → on_call_notification_rule_channel_settings.rb} +3 -4
  263. data/lib/datadog_api_client/v2/models/on_call_notification_rule_data.rb +153 -0
  264. data/lib/datadog_api_client/v2/models/on_call_notification_rule_relationships.rb +105 -0
  265. data/lib/datadog_api_client/v2/models/on_call_notification_rule_request_attributes.rb +125 -0
  266. data/lib/datadog_api_client/v2/models/on_call_notification_rule_type.rb +26 -0
  267. data/lib/datadog_api_client/v2/models/on_call_notification_rules_included.rb +62 -0
  268. data/lib/datadog_api_client/v2/models/on_call_phone_notification_rule_method.rb +27 -0
  269. data/lib/datadog_api_client/v2/models/{incident_attachments_postmortem_attributes_attachment_object.rb → on_call_phone_notification_rule_settings.rb} +30 -30
  270. data/lib/datadog_api_client/v2/models/patch_attachment_request.rb +105 -0
  271. data/lib/datadog_api_client/v2/models/patch_attachment_request_data.rb +143 -0
  272. data/lib/datadog_api_client/v2/models/patch_attachment_request_data_attributes.rb +105 -0
  273. data/lib/datadog_api_client/v2/models/patch_attachment_request_data_attributes_attachment.rb +115 -0
  274. data/lib/datadog_api_client/v2/models/patch_table_request_data_attributes.rb +1 -11
  275. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_error.rb +125 -0
  276. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_errors.rb +107 -0
  277. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item.rb +195 -0
  278. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_account.rb +123 -0
  279. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_application.rb +124 -0
  280. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_event.rb +123 -0
  281. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_session.rb +123 -0
  282. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_type.rb +26 -0
  283. data/lib/datadog_api_client/v2/models/product_analytics_server_side_event_item_usr.rb +123 -0
  284. data/lib/datadog_api_client/v2/models/recommendation_attributes.rb +11 -1
  285. data/lib/datadog_api_client/v2/models/security_findings_attributes.rb +127 -0
  286. data/lib/datadog_api_client/v2/models/security_findings_data.rb +125 -0
  287. data/lib/datadog_api_client/v2/models/security_findings_data_type.rb +26 -0
  288. data/lib/datadog_api_client/v2/models/security_findings_links.rb +105 -0
  289. data/lib/datadog_api_client/v2/models/security_findings_meta.rb +135 -0
  290. data/lib/datadog_api_client/v2/models/security_findings_page.rb +105 -0
  291. data/lib/datadog_api_client/v2/models/security_findings_search_request.rb +105 -0
  292. data/lib/datadog_api_client/v2/models/security_findings_search_request_data.rb +105 -0
  293. data/lib/datadog_api_client/v2/models/security_findings_search_request_data_attributes.rb +125 -0
  294. data/lib/datadog_api_client/v2/models/security_findings_search_request_page.rb +137 -0
  295. data/lib/datadog_api_client/v2/models/security_findings_sort.rb +27 -0
  296. data/lib/datadog_api_client/v2/models/security_findings_status.rb +27 -0
  297. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset.rb +125 -0
  298. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_attributes.rb +235 -0
  299. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_create_attributes.rb +187 -0
  300. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_create_data.rb +144 -0
  301. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_create_request.rb +123 -0
  302. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_response.rb +105 -0
  303. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_severity.rb +32 -0
  304. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_type.rb +26 -0
  305. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_update_attributes.rb +175 -0
  306. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_update_data.rb +144 -0
  307. data/lib/datadog_api_client/v2/models/security_monitoring_critical_asset_update_request.rb +123 -0
  308. data/lib/datadog_api_client/v2/models/security_monitoring_critical_assets_response.rb +107 -0
  309. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options.rb +155 -0
  310. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_bucket_duration.rb +32 -0
  311. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_detection_tolerance.rb +31 -0
  312. data/lib/datadog_api_client/v2/models/security_monitoring_rule_anomaly_detection_options_learning_duration.rb +32 -0
  313. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +11 -1
  314. data/lib/datadog_api_client/v2/models/synthetics_global_variable.rb +248 -0
  315. data/lib/datadog_api_client/v2/models/synthetics_global_variable_attributes.rb +107 -0
  316. data/lib/datadog_api_client/v2/models/synthetics_global_variable_options.rb +105 -0
  317. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parse_test_options.rb +153 -0
  318. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parse_test_options_type.rb +29 -0
  319. data/lib/datadog_api_client/v2/models/synthetics_global_variable_parser_type.rb +29 -0
  320. data/lib/datadog_api_client/v2/models/synthetics_global_variable_totp_parameters.rb +152 -0
  321. data/lib/datadog_api_client/v2/models/synthetics_global_variable_value.rb +126 -0
  322. data/lib/datadog_api_client/v2/models/synthetics_variable_parser.rb +133 -0
  323. data/lib/datadog_api_client/v2/models/team_notification_rule.rb +154 -0
  324. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes.rb +135 -0
  325. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_email.rb +105 -0
  326. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_ms_teams.rb +105 -0
  327. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_pagerduty.rb +105 -0
  328. data/lib/datadog_api_client/v2/models/team_notification_rule_attributes_slack.rb +115 -0
  329. data/lib/datadog_api_client/v2/models/team_notification_rule_request.rb +123 -0
  330. data/lib/datadog_api_client/v2/models/team_notification_rule_response.rb +105 -0
  331. data/lib/datadog_api_client/v2/models/team_notification_rule_type.rb +26 -0
  332. data/lib/datadog_api_client/v2/models/team_notification_rules_response.rb +117 -0
  333. data/lib/datadog_api_client/v2/models/team_notification_rules_response_meta.rb +105 -0
  334. data/lib/datadog_api_client/v2/models/team_notification_rules_response_meta_page.rb +184 -0
  335. data/lib/datadog_api_client/v2/models/threat_hunting_job_options.rb +11 -1
  336. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request.rb +123 -0
  337. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request_attributes.rb +125 -0
  338. data/lib/datadog_api_client/v2/models/update_on_call_notification_rule_request_data.rb +153 -0
  339. data/lib/datadog_api_client/v2/models/user140420082644000.rb +143 -0
  340. data/lib/datadog_api_client/v2/models/{incident_attachment_related_object.rb → user_type.rb} +2 -2
  341. data/lib/datadog_api_client/version.rb +1 -1
  342. metadata +207 -30
  343. data/examples/v2/incidents/ListIncidentAttachments_2457735435.rb +0 -11
  344. data/examples/v2/incidents/UpdateIncidentAttachments.rb +0 -38
  345. data/examples/v2/incidents/UpdateIncidentAttachments_3881702075.rb +0 -26
@@ -737,6 +737,73 @@ module DatadogAPIClient::V2
737
737
  return data, status_code, headers
738
738
  end
739
739
 
740
+ # Create a critical asset.
741
+ #
742
+ # @see #create_security_monitoring_critical_asset_with_http_info
743
+ def create_security_monitoring_critical_asset(body, opts = {})
744
+ data, _status_code, _headers = create_security_monitoring_critical_asset_with_http_info(body, opts)
745
+ data
746
+ end
747
+
748
+ # Create a critical asset.
749
+ #
750
+ # Create a new critical asset.
751
+ #
752
+ # @param body [SecurityMonitoringCriticalAssetCreateRequest] The definition of the new critical asset.
753
+ # @param opts [Hash] the optional parameters
754
+ # @return [Array<(SecurityMonitoringCriticalAssetResponse, Integer, Hash)>] SecurityMonitoringCriticalAssetResponse data, response status code and response headers
755
+ def create_security_monitoring_critical_asset_with_http_info(body, opts = {})
756
+
757
+ if @api_client.config.debugging
758
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.create_security_monitoring_critical_asset ...'
759
+ end
760
+ # verify the required parameter 'body' is set
761
+ if @api_client.config.client_side_validation && body.nil?
762
+ fail ArgumentError, "Missing the required parameter 'body' when calling SecurityMonitoringAPI.create_security_monitoring_critical_asset"
763
+ end
764
+ # resource path
765
+ local_var_path = '/api/v2/security_monitoring/configuration/critical_assets'
766
+
767
+ # query parameters
768
+ query_params = opts[:query_params] || {}
769
+
770
+ # header parameters
771
+ header_params = opts[:header_params] || {}
772
+ # HTTP header 'Accept' (if needed)
773
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
774
+ # HTTP header 'Content-Type'
775
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
776
+
777
+ # form parameters
778
+ form_params = opts[:form_params] || {}
779
+
780
+ # http body (model)
781
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
782
+
783
+ # return_type
784
+ return_type = opts[:debug_return_type] || 'SecurityMonitoringCriticalAssetResponse'
785
+
786
+ # auth_names
787
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
788
+
789
+ new_options = opts.merge(
790
+ :operation => :create_security_monitoring_critical_asset,
791
+ :header_params => header_params,
792
+ :query_params => query_params,
793
+ :form_params => form_params,
794
+ :body => post_body,
795
+ :auth_names => auth_names,
796
+ :return_type => return_type,
797
+ :api_version => "V2"
798
+ )
799
+
800
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
801
+ if @api_client.config.debugging
802
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#create_security_monitoring_critical_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
803
+ end
804
+ return data, status_code, headers
805
+ end
806
+
740
807
  # Create a detection rule.
741
808
  #
742
809
  # @see #create_security_monitoring_rule_with_http_info
@@ -1140,6 +1207,71 @@ module DatadogAPIClient::V2
1140
1207
  return data, status_code, headers
1141
1208
  end
1142
1209
 
1210
+ # Delete a critical asset.
1211
+ #
1212
+ # @see #delete_security_monitoring_critical_asset_with_http_info
1213
+ def delete_security_monitoring_critical_asset(critical_asset_id, opts = {})
1214
+ delete_security_monitoring_critical_asset_with_http_info(critical_asset_id, opts)
1215
+ nil
1216
+ end
1217
+
1218
+ # Delete a critical asset.
1219
+ #
1220
+ # Delete a specific critical asset.
1221
+ #
1222
+ # @param critical_asset_id [String] The ID of the critical asset.
1223
+ # @param opts [Hash] the optional parameters
1224
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1225
+ def delete_security_monitoring_critical_asset_with_http_info(critical_asset_id, opts = {})
1226
+
1227
+ if @api_client.config.debugging
1228
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.delete_security_monitoring_critical_asset ...'
1229
+ end
1230
+ # verify the required parameter 'critical_asset_id' is set
1231
+ if @api_client.config.client_side_validation && critical_asset_id.nil?
1232
+ fail ArgumentError, "Missing the required parameter 'critical_asset_id' when calling SecurityMonitoringAPI.delete_security_monitoring_critical_asset"
1233
+ end
1234
+ # resource path
1235
+ local_var_path = '/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id}'.sub('{critical_asset_id}', CGI.escape(critical_asset_id.to_s).gsub('%2F', '/'))
1236
+
1237
+ # query parameters
1238
+ query_params = opts[:query_params] || {}
1239
+
1240
+ # header parameters
1241
+ header_params = opts[:header_params] || {}
1242
+ # HTTP header 'Accept' (if needed)
1243
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
1244
+
1245
+ # form parameters
1246
+ form_params = opts[:form_params] || {}
1247
+
1248
+ # http body (model)
1249
+ post_body = opts[:debug_body]
1250
+
1251
+ # return_type
1252
+ return_type = opts[:debug_return_type]
1253
+
1254
+ # auth_names
1255
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1256
+
1257
+ new_options = opts.merge(
1258
+ :operation => :delete_security_monitoring_critical_asset,
1259
+ :header_params => header_params,
1260
+ :query_params => query_params,
1261
+ :form_params => form_params,
1262
+ :body => post_body,
1263
+ :auth_names => auth_names,
1264
+ :return_type => return_type,
1265
+ :api_version => "V2"
1266
+ )
1267
+
1268
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
1269
+ if @api_client.config.debugging
1270
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#delete_security_monitoring_critical_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1271
+ end
1272
+ return data, status_code, headers
1273
+ end
1274
+
1143
1275
  # Delete an existing rule.
1144
1276
  #
1145
1277
  # @see #delete_security_monitoring_rule_with_http_info
@@ -1755,6 +1887,71 @@ module DatadogAPIClient::V2
1755
1887
  return data, status_code, headers
1756
1888
  end
1757
1889
 
1890
+ # Get critical assets affecting a specific rule.
1891
+ #
1892
+ # @see #get_critical_assets_affecting_rule_with_http_info
1893
+ def get_critical_assets_affecting_rule(rule_id, opts = {})
1894
+ data, _status_code, _headers = get_critical_assets_affecting_rule_with_http_info(rule_id, opts)
1895
+ data
1896
+ end
1897
+
1898
+ # Get critical assets affecting a specific rule.
1899
+ #
1900
+ # Get the list of critical assets that affect a specific existing rule by the rule's ID.
1901
+ #
1902
+ # @param rule_id [String] The ID of the rule.
1903
+ # @param opts [Hash] the optional parameters
1904
+ # @return [Array<(SecurityMonitoringCriticalAssetsResponse, Integer, Hash)>] SecurityMonitoringCriticalAssetsResponse data, response status code and response headers
1905
+ def get_critical_assets_affecting_rule_with_http_info(rule_id, opts = {})
1906
+
1907
+ if @api_client.config.debugging
1908
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.get_critical_assets_affecting_rule ...'
1909
+ end
1910
+ # verify the required parameter 'rule_id' is set
1911
+ if @api_client.config.client_side_validation && rule_id.nil?
1912
+ fail ArgumentError, "Missing the required parameter 'rule_id' when calling SecurityMonitoringAPI.get_critical_assets_affecting_rule"
1913
+ end
1914
+ # resource path
1915
+ local_var_path = '/api/v2/security_monitoring/configuration/critical_assets/rules/{rule_id}'.sub('{rule_id}', CGI.escape(rule_id.to_s).gsub('%2F', '/'))
1916
+
1917
+ # query parameters
1918
+ query_params = opts[:query_params] || {}
1919
+
1920
+ # header parameters
1921
+ header_params = opts[:header_params] || {}
1922
+ # HTTP header 'Accept' (if needed)
1923
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1924
+
1925
+ # form parameters
1926
+ form_params = opts[:form_params] || {}
1927
+
1928
+ # http body (model)
1929
+ post_body = opts[:debug_body]
1930
+
1931
+ # return_type
1932
+ return_type = opts[:debug_return_type] || 'SecurityMonitoringCriticalAssetsResponse'
1933
+
1934
+ # auth_names
1935
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1936
+
1937
+ new_options = opts.merge(
1938
+ :operation => :get_critical_assets_affecting_rule,
1939
+ :header_params => header_params,
1940
+ :query_params => query_params,
1941
+ :form_params => form_params,
1942
+ :body => post_body,
1943
+ :auth_names => auth_names,
1944
+ :return_type => return_type,
1945
+ :api_version => "V2"
1946
+ )
1947
+
1948
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
1949
+ if @api_client.config.debugging
1950
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#get_critical_assets_affecting_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1951
+ end
1952
+ return data, status_code, headers
1953
+ end
1954
+
1758
1955
  # Get a custom framework.
1759
1956
  #
1760
1957
  # @see #get_custom_framework_with_http_info
@@ -2266,6 +2463,71 @@ module DatadogAPIClient::V2
2266
2463
  return data, status_code, headers
2267
2464
  end
2268
2465
 
2466
+ # Get a critical asset.
2467
+ #
2468
+ # @see #get_security_monitoring_critical_asset_with_http_info
2469
+ def get_security_monitoring_critical_asset(critical_asset_id, opts = {})
2470
+ data, _status_code, _headers = get_security_monitoring_critical_asset_with_http_info(critical_asset_id, opts)
2471
+ data
2472
+ end
2473
+
2474
+ # Get a critical asset.
2475
+ #
2476
+ # Get the details of a specific critical asset.
2477
+ #
2478
+ # @param critical_asset_id [String] The ID of the critical asset.
2479
+ # @param opts [Hash] the optional parameters
2480
+ # @return [Array<(SecurityMonitoringCriticalAssetResponse, Integer, Hash)>] SecurityMonitoringCriticalAssetResponse data, response status code and response headers
2481
+ def get_security_monitoring_critical_asset_with_http_info(critical_asset_id, opts = {})
2482
+
2483
+ if @api_client.config.debugging
2484
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.get_security_monitoring_critical_asset ...'
2485
+ end
2486
+ # verify the required parameter 'critical_asset_id' is set
2487
+ if @api_client.config.client_side_validation && critical_asset_id.nil?
2488
+ fail ArgumentError, "Missing the required parameter 'critical_asset_id' when calling SecurityMonitoringAPI.get_security_monitoring_critical_asset"
2489
+ end
2490
+ # resource path
2491
+ local_var_path = '/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id}'.sub('{critical_asset_id}', CGI.escape(critical_asset_id.to_s).gsub('%2F', '/'))
2492
+
2493
+ # query parameters
2494
+ query_params = opts[:query_params] || {}
2495
+
2496
+ # header parameters
2497
+ header_params = opts[:header_params] || {}
2498
+ # HTTP header 'Accept' (if needed)
2499
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
2500
+
2501
+ # form parameters
2502
+ form_params = opts[:form_params] || {}
2503
+
2504
+ # http body (model)
2505
+ post_body = opts[:debug_body]
2506
+
2507
+ # return_type
2508
+ return_type = opts[:debug_return_type] || 'SecurityMonitoringCriticalAssetResponse'
2509
+
2510
+ # auth_names
2511
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
2512
+
2513
+ new_options = opts.merge(
2514
+ :operation => :get_security_monitoring_critical_asset,
2515
+ :header_params => header_params,
2516
+ :query_params => query_params,
2517
+ :form_params => form_params,
2518
+ :body => post_body,
2519
+ :auth_names => auth_names,
2520
+ :return_type => return_type,
2521
+ :api_version => "V2"
2522
+ )
2523
+
2524
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
2525
+ if @api_client.config.debugging
2526
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#get_security_monitoring_critical_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
2527
+ end
2528
+ return data, status_code, headers
2529
+ end
2530
+
2269
2531
  # Get a hist signal's details.
2270
2532
  #
2271
2533
  # @see #get_security_monitoring_histsignal_with_http_info
@@ -3688,6 +3950,173 @@ module DatadogAPIClient::V2
3688
3950
  return data, status_code, headers
3689
3951
  end
3690
3952
 
3953
+ # List security findings.
3954
+ #
3955
+ # @see #list_security_findings_with_http_info
3956
+ def list_security_findings(opts = {})
3957
+ data, _status_code, _headers = list_security_findings_with_http_info(opts)
3958
+ data
3959
+ end
3960
+
3961
+ # List security findings.
3962
+ #
3963
+ # Get a list of security findings that match a search query. [See the schema for security findings](https://docs.datadoghq.com/security/guide/findings-schema/).
3964
+ #
3965
+ # ### Query Syntax
3966
+ #
3967
+ # This endpoint uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix.
3968
+ #
3969
+ # Example: `@severity:(critical OR high) @status:open team:platform`
3970
+ #
3971
+ # @param opts [Hash] the optional parameters
3972
+ # @option opts [String] :filter_query The search query following log search syntax.
3973
+ # @option opts [String] :page_cursor Get the next page of results with a cursor provided in the previous query.
3974
+ # @option opts [Integer] :page_limit The maximum number of findings in the response.
3975
+ # @option opts [SecurityFindingsSort] :sort Sorts by @detection_changed_at.
3976
+ # @return [Array<(ListSecurityFindingsResponse, Integer, Hash)>] ListSecurityFindingsResponse data, response status code and response headers
3977
+ def list_security_findings_with_http_info(opts = {})
3978
+
3979
+ if @api_client.config.debugging
3980
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.list_security_findings ...'
3981
+ end
3982
+ if @api_client.config.client_side_validation && !opts[:'page_limit'].nil? && opts[:'page_limit'] > 150
3983
+ fail ArgumentError, 'invalid value for "opts[:"page_limit"]" when calling SecurityMonitoringAPI.list_security_findings, must be smaller than or equal to 150.'
3984
+ end
3985
+ if @api_client.config.client_side_validation && !opts[:'page_limit'].nil? && opts[:'page_limit'] < 1
3986
+ fail ArgumentError, 'invalid value for "opts[:"page_limit"]" when calling SecurityMonitoringAPI.list_security_findings, must be greater than or equal to 1.'
3987
+ end
3988
+ allowable_values = ['@detection_changed_at', '-@detection_changed_at']
3989
+ if @api_client.config.client_side_validation && opts[:'sort'] && !allowable_values.include?(opts[:'sort'])
3990
+ fail ArgumentError, "invalid value for \"sort\", must be one of #{allowable_values}"
3991
+ end
3992
+ # resource path
3993
+ local_var_path = '/api/v2/security/findings'
3994
+
3995
+ # query parameters
3996
+ query_params = opts[:query_params] || {}
3997
+ query_params[:'filter[query]'] = opts[:'filter_query'] if !opts[:'filter_query'].nil?
3998
+ query_params[:'page[cursor]'] = opts[:'page_cursor'] if !opts[:'page_cursor'].nil?
3999
+ query_params[:'page[limit]'] = opts[:'page_limit'] if !opts[:'page_limit'].nil?
4000
+ query_params[:'sort'] = opts[:'sort'] if !opts[:'sort'].nil?
4001
+
4002
+ # header parameters
4003
+ header_params = opts[:header_params] || {}
4004
+ # HTTP header 'Accept' (if needed)
4005
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
4006
+
4007
+ # form parameters
4008
+ form_params = opts[:form_params] || {}
4009
+
4010
+ # http body (model)
4011
+ post_body = opts[:debug_body]
4012
+
4013
+ # return_type
4014
+ return_type = opts[:debug_return_type] || 'ListSecurityFindingsResponse'
4015
+
4016
+ # auth_names
4017
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
4018
+
4019
+ new_options = opts.merge(
4020
+ :operation => :list_security_findings,
4021
+ :header_params => header_params,
4022
+ :query_params => query_params,
4023
+ :form_params => form_params,
4024
+ :body => post_body,
4025
+ :auth_names => auth_names,
4026
+ :return_type => return_type,
4027
+ :api_version => "V2"
4028
+ )
4029
+
4030
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
4031
+ if @api_client.config.debugging
4032
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#list_security_findings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
4033
+ end
4034
+ return data, status_code, headers
4035
+ end
4036
+
4037
+ # List security findings.
4038
+ #
4039
+ # Provide a paginated version of {#list_security_findings}, returning all items.
4040
+ #
4041
+ # To use it you need to use a block: list_security_findings_with_pagination { |item| p item }
4042
+ #
4043
+ # @yield [SecurityFindingsData] Paginated items
4044
+ def list_security_findings_with_pagination(opts = {})
4045
+ api_version = "V2"
4046
+ page_size = @api_client.get_attribute_from_path(opts, "page_limit", 10)
4047
+ @api_client.set_attribute_from_path(api_version, opts, "page_limit", Integer, page_size)
4048
+ while true do
4049
+ response = list_security_findings(opts)
4050
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
4051
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
4052
+ break
4053
+ end
4054
+ @api_client.set_attribute_from_path(api_version, opts, "page_cursor", String, @api_client.get_attribute_from_path(response, "meta.page.after"))
4055
+ end
4056
+ end
4057
+
4058
+ # Get all critical assets.
4059
+ #
4060
+ # @see #list_security_monitoring_critical_assets_with_http_info
4061
+ def list_security_monitoring_critical_assets(opts = {})
4062
+ data, _status_code, _headers = list_security_monitoring_critical_assets_with_http_info(opts)
4063
+ data
4064
+ end
4065
+
4066
+ # Get all critical assets.
4067
+ #
4068
+ # Get the list of all critical assets.
4069
+ #
4070
+ # @param opts [Hash] the optional parameters
4071
+ # @option opts [String] :query Query string.
4072
+ # @return [Array<(SecurityMonitoringCriticalAssetsResponse, Integer, Hash)>] SecurityMonitoringCriticalAssetsResponse data, response status code and response headers
4073
+ def list_security_monitoring_critical_assets_with_http_info(opts = {})
4074
+
4075
+ if @api_client.config.debugging
4076
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.list_security_monitoring_critical_assets ...'
4077
+ end
4078
+ # resource path
4079
+ local_var_path = '/api/v2/security_monitoring/configuration/critical_assets'
4080
+
4081
+ # query parameters
4082
+ query_params = opts[:query_params] || {}
4083
+ query_params[:'query'] = opts[:'query'] if !opts[:'query'].nil?
4084
+
4085
+ # header parameters
4086
+ header_params = opts[:header_params] || {}
4087
+ # HTTP header 'Accept' (if needed)
4088
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
4089
+
4090
+ # form parameters
4091
+ form_params = opts[:form_params] || {}
4092
+
4093
+ # http body (model)
4094
+ post_body = opts[:debug_body]
4095
+
4096
+ # return_type
4097
+ return_type = opts[:debug_return_type] || 'SecurityMonitoringCriticalAssetsResponse'
4098
+
4099
+ # auth_names
4100
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
4101
+
4102
+ new_options = opts.merge(
4103
+ :operation => :list_security_monitoring_critical_assets,
4104
+ :header_params => header_params,
4105
+ :query_params => query_params,
4106
+ :form_params => form_params,
4107
+ :body => post_body,
4108
+ :auth_names => auth_names,
4109
+ :return_type => return_type,
4110
+ :api_version => "V2"
4111
+ )
4112
+
4113
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
4114
+ if @api_client.config.debugging
4115
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#list_security_monitoring_critical_assets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
4116
+ end
4117
+ return data, status_code, headers
4118
+ end
4119
+
3691
4120
  # List hist signals.
3692
4121
  #
3693
4122
  # @see #list_security_monitoring_histsignals_with_http_info
@@ -3788,6 +4217,7 @@ module DatadogAPIClient::V2
3788
4217
  # @param opts [Hash] the optional parameters
3789
4218
  # @option opts [Integer] :page_size Size for a given page. The maximum allowed value is 100.
3790
4219
  # @option opts [Integer] :page_number Specific page number to return.
4220
+ # @option opts [String] :query A search query to filter security rules. You can filter by attributes such as `type`, `source`, `tags`.
3791
4221
  # @return [Array<(SecurityMonitoringListRulesResponse, Integer, Hash)>] SecurityMonitoringListRulesResponse data, response status code and response headers
3792
4222
  def list_security_monitoring_rules_with_http_info(opts = {})
3793
4223
 
@@ -3801,6 +4231,7 @@ module DatadogAPIClient::V2
3801
4231
  query_params = opts[:query_params] || {}
3802
4232
  query_params[:'page[size]'] = opts[:'page_size'] if !opts[:'page_size'].nil?
3803
4233
  query_params[:'page[number]'] = opts[:'page_number'] if !opts[:'page_number'].nil?
4234
+ query_params[:'query'] = opts[:'query'] if !opts[:'query'].nil?
3804
4235
 
3805
4236
  # header parameters
3806
4237
  header_params = opts[:header_params] || {}
@@ -4777,6 +5208,100 @@ module DatadogAPIClient::V2
4777
5208
  return data, status_code, headers
4778
5209
  end
4779
5210
 
5211
+ # Search security findings.
5212
+ #
5213
+ # @see #search_security_findings_with_http_info
5214
+ def search_security_findings(body, opts = {})
5215
+ data, _status_code, _headers = search_security_findings_with_http_info(body, opts)
5216
+ data
5217
+ end
5218
+
5219
+ # Search security findings.
5220
+ #
5221
+ # Get a list of security findings that match a search query. [See the schema for security findings](https://docs.datadoghq.com/security/guide/findings-schema/).
5222
+ #
5223
+ # ### Query Syntax
5224
+ #
5225
+ # The API uses the logs query syntax. Findings attributes (living in the attributes.attributes. namespace) are prefixed by @ when queried. Tags are queried without a prefix.
5226
+ #
5227
+ # Example: `@severity:(critical OR high) @status:open team:platform`
5228
+ #
5229
+ # @param body [SecurityFindingsSearchRequest]
5230
+ # @param opts [Hash] the optional parameters
5231
+ # @return [Array<(ListSecurityFindingsResponse, Integer, Hash)>] ListSecurityFindingsResponse data, response status code and response headers
5232
+ def search_security_findings_with_http_info(body, opts = {})
5233
+
5234
+ if @api_client.config.debugging
5235
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.search_security_findings ...'
5236
+ end
5237
+ # verify the required parameter 'body' is set
5238
+ if @api_client.config.client_side_validation && body.nil?
5239
+ fail ArgumentError, "Missing the required parameter 'body' when calling SecurityMonitoringAPI.search_security_findings"
5240
+ end
5241
+ # resource path
5242
+ local_var_path = '/api/v2/security/findings/search'
5243
+
5244
+ # query parameters
5245
+ query_params = opts[:query_params] || {}
5246
+
5247
+ # header parameters
5248
+ header_params = opts[:header_params] || {}
5249
+ # HTTP header 'Accept' (if needed)
5250
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5251
+ # HTTP header 'Content-Type'
5252
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
5253
+
5254
+ # form parameters
5255
+ form_params = opts[:form_params] || {}
5256
+
5257
+ # http body (model)
5258
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
5259
+
5260
+ # return_type
5261
+ return_type = opts[:debug_return_type] || 'ListSecurityFindingsResponse'
5262
+
5263
+ # auth_names
5264
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
5265
+
5266
+ new_options = opts.merge(
5267
+ :operation => :search_security_findings,
5268
+ :header_params => header_params,
5269
+ :query_params => query_params,
5270
+ :form_params => form_params,
5271
+ :body => post_body,
5272
+ :auth_names => auth_names,
5273
+ :return_type => return_type,
5274
+ :api_version => "V2"
5275
+ )
5276
+
5277
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
5278
+ if @api_client.config.debugging
5279
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#search_security_findings\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5280
+ end
5281
+ return data, status_code, headers
5282
+ end
5283
+
5284
+ # Search security findings.
5285
+ #
5286
+ # Provide a paginated version of {#search_security_findings}, returning all items.
5287
+ #
5288
+ # To use it you need to use a block: search_security_findings_with_pagination { |item| p item }
5289
+ #
5290
+ # @yield [SecurityFindingsData] Paginated items
5291
+ def search_security_findings_with_pagination(body, opts = {})
5292
+ api_version = "V2"
5293
+ page_size = @api_client.get_attribute_from_path(body, "data.attributes.page.limit", 10)
5294
+ @api_client.set_attribute_from_path(api_version, body, "data.attributes.page.limit", SecurityFindingsSearchRequestData, page_size)
5295
+ while true do
5296
+ response = search_security_findings(body, opts)
5297
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
5298
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
5299
+ break
5300
+ end
5301
+ @api_client.set_attribute_from_path(api_version, body, "data.attributes.page.cursor", SecurityFindingsSearchRequestData, @api_client.get_attribute_from_path(response, "meta.page.after"))
5302
+ end
5303
+ end
5304
+
4780
5305
  # Search hist signals.
4781
5306
  #
4782
5307
  # @see #search_security_monitoring_histsignals_with_http_info
@@ -5288,6 +5813,78 @@ module DatadogAPIClient::V2
5288
5813
  return data, status_code, headers
5289
5814
  end
5290
5815
 
5816
+ # Update a critical asset.
5817
+ #
5818
+ # @see #update_security_monitoring_critical_asset_with_http_info
5819
+ def update_security_monitoring_critical_asset(critical_asset_id, body, opts = {})
5820
+ data, _status_code, _headers = update_security_monitoring_critical_asset_with_http_info(critical_asset_id, body, opts)
5821
+ data
5822
+ end
5823
+
5824
+ # Update a critical asset.
5825
+ #
5826
+ # Update a specific critical asset.
5827
+ #
5828
+ # @param critical_asset_id [String] The ID of the critical asset.
5829
+ # @param body [SecurityMonitoringCriticalAssetUpdateRequest] New definition of the critical asset. Supports partial updates.
5830
+ # @param opts [Hash] the optional parameters
5831
+ # @return [Array<(SecurityMonitoringCriticalAssetResponse, Integer, Hash)>] SecurityMonitoringCriticalAssetResponse data, response status code and response headers
5832
+ def update_security_monitoring_critical_asset_with_http_info(critical_asset_id, body, opts = {})
5833
+
5834
+ if @api_client.config.debugging
5835
+ @api_client.config.logger.debug 'Calling API: SecurityMonitoringAPI.update_security_monitoring_critical_asset ...'
5836
+ end
5837
+ # verify the required parameter 'critical_asset_id' is set
5838
+ if @api_client.config.client_side_validation && critical_asset_id.nil?
5839
+ fail ArgumentError, "Missing the required parameter 'critical_asset_id' when calling SecurityMonitoringAPI.update_security_monitoring_critical_asset"
5840
+ end
5841
+ # verify the required parameter 'body' is set
5842
+ if @api_client.config.client_side_validation && body.nil?
5843
+ fail ArgumentError, "Missing the required parameter 'body' when calling SecurityMonitoringAPI.update_security_monitoring_critical_asset"
5844
+ end
5845
+ # resource path
5846
+ local_var_path = '/api/v2/security_monitoring/configuration/critical_assets/{critical_asset_id}'.sub('{critical_asset_id}', CGI.escape(critical_asset_id.to_s).gsub('%2F', '/'))
5847
+
5848
+ # query parameters
5849
+ query_params = opts[:query_params] || {}
5850
+
5851
+ # header parameters
5852
+ header_params = opts[:header_params] || {}
5853
+ # HTTP header 'Accept' (if needed)
5854
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
5855
+ # HTTP header 'Content-Type'
5856
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
5857
+
5858
+ # form parameters
5859
+ form_params = opts[:form_params] || {}
5860
+
5861
+ # http body (model)
5862
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
5863
+
5864
+ # return_type
5865
+ return_type = opts[:debug_return_type] || 'SecurityMonitoringCriticalAssetResponse'
5866
+
5867
+ # auth_names
5868
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
5869
+
5870
+ new_options = opts.merge(
5871
+ :operation => :update_security_monitoring_critical_asset,
5872
+ :header_params => header_params,
5873
+ :query_params => query_params,
5874
+ :form_params => form_params,
5875
+ :body => post_body,
5876
+ :auth_names => auth_names,
5877
+ :return_type => return_type,
5878
+ :api_version => "V2"
5879
+ )
5880
+
5881
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Patch, local_var_path, new_options)
5882
+ if @api_client.config.debugging
5883
+ @api_client.config.logger.debug "API called: SecurityMonitoringAPI#update_security_monitoring_critical_asset\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
5884
+ end
5885
+ return data, status_code, headers
5886
+ end
5887
+
5291
5888
  # Update an existing rule.
5292
5889
  #
5293
5890
  # @see #update_security_monitoring_rule_with_http_info
@@ -176,6 +176,7 @@ module DatadogAPIClient::V2
176
176
  # @option opts [RelationType] :filter_relation_type Filter entities by relation type.
177
177
  # @option opts [String] :filter_exclude_snapshot Filter entities by excluding snapshotted entities.
178
178
  # @option opts [IncludeType] :include Include relationship data.
179
+ # @option opts [Boolean] :include_discovered If true, includes discovered services from APM and USM that do not have entity definitions.
179
180
  # @return [Array<(ListEntityCatalogResponse, Integer, Hash)>] ListEntityCatalogResponse data, response status code and response headers
180
181
  def list_catalog_entity_with_http_info(opts = {})
181
182
 
@@ -205,6 +206,7 @@ module DatadogAPIClient::V2
205
206
  query_params[:'filter[relation][type]'] = opts[:'filter_relation_type'] if !opts[:'filter_relation_type'].nil?
206
207
  query_params[:'filter[exclude_snapshot]'] = opts[:'filter_exclude_snapshot'] if !opts[:'filter_exclude_snapshot'].nil?
207
208
  query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
209
+ query_params[:'includeDiscovered'] = opts[:'include_discovered'] if !opts[:'include_discovered'].nil?
208
210
 
209
211
  # header parameters
210
212
  header_params = opts[:header_params] || {}
@@ -370,6 +372,7 @@ module DatadogAPIClient::V2
370
372
  # @option opts [String] :filter_from_ref Filter relations by the reference of the first entity in the relation.
371
373
  # @option opts [String] :filter_to_ref Filter relations by the reference of the second entity in the relation.
372
374
  # @option opts [RelationIncludeType] :include Include relationship data.
375
+ # @option opts [Boolean] :include_discovered If true, includes relationships discovered by APM and USM.
373
376
  # @return [Array<(ListRelationCatalogResponse, Integer, Hash)>] ListRelationCatalogResponse data, response status code and response headers
374
377
  def list_catalog_relation_with_http_info(opts = {})
375
378
 
@@ -395,6 +398,7 @@ module DatadogAPIClient::V2
395
398
  query_params[:'filter[from_ref]'] = opts[:'filter_from_ref'] if !opts[:'filter_from_ref'].nil?
396
399
  query_params[:'filter[to_ref]'] = opts[:'filter_to_ref'] if !opts[:'filter_to_ref'].nil?
397
400
  query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
401
+ query_params[:'includeDiscovered'] = opts[:'include_discovered'] if !opts[:'include_discovered'].nil?
398
402
 
399
403
  # header parameters
400
404
  header_params = opts[:header_params] || {}