datadog_api_client 2.32.0 → 2.33.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 (309) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +5 -4
  4. data/.generator/schemas/v2/openapi.yaml +5260 -517
  5. data/.github/workflows/publish.yml +6 -9
  6. data/.github/workflows/test.yml +1 -1
  7. data/CHANGELOG.md +20 -0
  8. data/Gemfile +0 -1
  9. data/LICENSE-3rdparty.csv +0 -1
  10. data/Rakefile +3 -0
  11. data/datadog_api_client.gemspec +0 -2
  12. data/examples/v2/cloud-cost-management/DeleteBudget.rb +5 -0
  13. data/examples/v2/cloud-cost-management/GetBudget.rb +5 -0
  14. data/examples/v2/cloud-cost-management/ListBudgets.rb +5 -0
  15. data/examples/v2/cloud-cost-management/UpsertBudget.rb +35 -0
  16. data/examples/v2/monitors/CreateMonitorNotificationRule.rb +26 -0
  17. data/examples/v2/monitors/DeleteMonitorNotificationRule.rb +11 -0
  18. data/examples/v2/monitors/GetMonitorNotificationRule.rb +11 -0
  19. data/examples/v2/monitors/GetMonitorNotificationRules.rb +8 -0
  20. data/examples/v2/monitors/UpdateMonitorNotificationRule.rb +30 -0
  21. data/examples/v2/network-device-monitoring/GetInterfaces.rb +4 -1
  22. data/examples/v2/observability-pipelines/CreatePipeline.rb +2 -2
  23. data/examples/v2/observability-pipelines/ListPipelines.rb +8 -0
  24. data/examples/v2/observability-pipelines/ValidatePipeline.rb +44 -0
  25. data/examples/v2/on-call/CreateOnCallEscalationPolicy.rb +66 -0
  26. data/examples/v2/on-call/CreateOnCallSchedule.rb +3 -3
  27. data/examples/v2/on-call/DeleteOnCallEscalationPolicy.rb +8 -0
  28. data/examples/v2/on-call/GetOnCallEscalationPolicy.rb +8 -0
  29. data/examples/v2/on-call/UpdateOnCallEscalationPolicy.rb +51 -0
  30. data/examples/v2/on-call/UpdateOnCallSchedule.rb +3 -3
  31. data/examples/v2/security-monitoring/CreateCustomFramework.rb +30 -0
  32. data/examples/v2/security-monitoring/DeleteCustomFramework.rb +5 -0
  33. data/examples/v2/security-monitoring/GetCustomFramework.rb +5 -0
  34. data/examples/v2/security-monitoring/UpdateCustomFramework.rb +30 -0
  35. data/lib/datadog_api_client/configuration.rb +20 -13
  36. data/lib/datadog_api_client/inflector.rb +241 -2
  37. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +257 -0
  38. data/lib/datadog_api_client/v2/api/monitors_api.rb +363 -0
  39. data/lib/datadog_api_client/v2/api/network_device_monitoring_api.rb +2 -0
  40. data/lib/datadog_api_client/v2/api/observability_pipelines_api.rb +146 -1
  41. data/lib/datadog_api_client/v2/api/on_call_api.rb +275 -0
  42. data/lib/datadog_api_client/v2/api/restriction_policies_api.rb +5 -3
  43. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +285 -1
  44. data/lib/datadog_api_client/v2/models/azure_storage_destination.rb +198 -0
  45. data/lib/datadog_api_client/v2/models/azure_storage_destination_type.rb +26 -0
  46. data/lib/datadog_api_client/v2/models/budget.rb +125 -0
  47. data/lib/datadog_api_client/v2/models/budget_array.rb +107 -0
  48. data/lib/datadog_api_client/v2/models/budget_attributes.rb +207 -0
  49. data/lib/datadog_api_client/v2/models/budget_entry.rb +127 -0
  50. data/lib/datadog_api_client/v2/models/budget_with_entries.rb +105 -0
  51. data/lib/datadog_api_client/v2/models/budget_with_entries_data.rb +125 -0
  52. data/lib/datadog_api_client/v2/models/{observability_pipeline_create_request.rb → create_custom_framework_request.rb} +5 -5
  53. data/lib/datadog_api_client/v2/models/create_custom_framework_response.rb +123 -0
  54. data/lib/datadog_api_client/v2/models/custom_framework_control.rb +146 -0
  55. data/lib/datadog_api_client/v2/models/custom_framework_data.rb +144 -0
  56. data/lib/datadog_api_client/v2/models/custom_framework_data_attributes.rb +208 -0
  57. data/lib/datadog_api_client/v2/models/custom_framework_data_handle_and_version.rb +115 -0
  58. data/lib/datadog_api_client/v2/models/custom_framework_metadata.rb +125 -0
  59. data/lib/datadog_api_client/v2/models/custom_framework_requirement.rb +146 -0
  60. data/lib/datadog_api_client/v2/models/custom_framework_type.rb +26 -0
  61. data/lib/datadog_api_client/v2/models/custom_framework_without_requirements.rb +207 -0
  62. data/lib/datadog_api_client/v2/models/delete_custom_framework_response.rb +123 -0
  63. data/lib/datadog_api_client/v2/models/escalation_policy.rb +117 -0
  64. data/lib/datadog_api_client/v2/models/escalation_policy_create_request.rb +123 -0
  65. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data.rb +154 -0
  66. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes.rb +176 -0
  67. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items.rb +145 -0
  68. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_assignment.rb +27 -0
  69. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_targets_items.rb +115 -0
  70. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_attributes_steps_items_targets_items_type.rb +28 -0
  71. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships.rb +105 -0
  72. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships_teams.rb +107 -0
  73. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships_teams_data_items.rb +144 -0
  74. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_relationships_teams_data_items_type.rb +26 -0
  75. data/lib/datadog_api_client/v2/models/escalation_policy_create_request_data_type.rb +26 -0
  76. data/lib/datadog_api_client/v2/models/escalation_policy_data.rb +153 -0
  77. data/lib/datadog_api_client/v2/models/escalation_policy_data_attributes.rb +153 -0
  78. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships.rb +133 -0
  79. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps.rb +107 -0
  80. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps_data_items.rb +144 -0
  81. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_steps_data_items_type.rb +26 -0
  82. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_teams.rb +107 -0
  83. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_teams_data_items.rb +144 -0
  84. data/lib/datadog_api_client/v2/models/escalation_policy_data_relationships_teams_data_items_type.rb +26 -0
  85. data/lib/datadog_api_client/v2/models/escalation_policy_data_type.rb +26 -0
  86. data/lib/datadog_api_client/v2/models/escalation_policy_included.rb +66 -0
  87. data/lib/datadog_api_client/v2/models/escalation_policy_step.rb +153 -0
  88. data/lib/datadog_api_client/v2/models/escalation_policy_step_attributes.rb +115 -0
  89. data/lib/datadog_api_client/v2/models/escalation_policy_step_attributes_assignment.rb +27 -0
  90. data/lib/datadog_api_client/v2/models/escalation_policy_step_relationships.rb +105 -0
  91. data/lib/datadog_api_client/v2/models/escalation_policy_step_type.rb +26 -0
  92. data/lib/datadog_api_client/v2/models/escalation_policy_update_request.rb +123 -0
  93. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data.rb +175 -0
  94. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes.rb +176 -0
  95. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items.rb +155 -0
  96. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_assignment.rb +27 -0
  97. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_targets_items.rb +115 -0
  98. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_attributes_steps_items_targets_items_type.rb +28 -0
  99. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships.rb +105 -0
  100. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships_teams.rb +107 -0
  101. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships_teams_data_items.rb +144 -0
  102. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_relationships_teams_data_items_type.rb +26 -0
  103. data/lib/datadog_api_client/v2/models/escalation_policy_update_request_data_type.rb +26 -0
  104. data/lib/datadog_api_client/v2/models/escalation_target.rb +64 -0
  105. data/lib/datadog_api_client/v2/models/framework_handle_and_version_response_data.rb +165 -0
  106. data/lib/datadog_api_client/v2/models/full_custom_framework_data.rb +165 -0
  107. data/lib/datadog_api_client/v2/models/full_custom_framework_data_attributes.rb +230 -0
  108. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +11 -1
  109. data/lib/datadog_api_client/v2/models/get_custom_framework_response.rb +123 -0
  110. data/lib/datadog_api_client/v2/models/layer.rb +19 -1
  111. data/lib/datadog_api_client/v2/models/layer_relationships_members_data_items.rb +31 -2
  112. data/lib/datadog_api_client/v2/models/list_pipelines_response.rb +135 -0
  113. data/lib/datadog_api_client/v2/models/list_pipelines_response_meta.rb +105 -0
  114. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination.rb +251 -0
  115. data/lib/datadog_api_client/v2/models/microsoft_sentinel_destination_type.rb +26 -0
  116. data/lib/datadog_api_client/v2/models/monitor_notification_rule_attributes.rb +147 -0
  117. data/lib/datadog_api_client/v2/models/monitor_notification_rule_create_request.rb +123 -0
  118. data/lib/datadog_api_client/v2/models/monitor_notification_rule_create_request_data.rb +133 -0
  119. data/lib/datadog_api_client/v2/models/monitor_notification_rule_data.rb +135 -0
  120. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter.rb +62 -0
  121. data/lib/datadog_api_client/v2/models/monitor_notification_rule_filter_tags.rb +108 -0
  122. data/lib/datadog_api_client/v2/models/monitor_notification_rule_list_response.rb +119 -0
  123. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships.rb +105 -0
  124. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships_created_by.rb +113 -0
  125. data/lib/datadog_api_client/v2/models/monitor_notification_rule_relationships_created_by_data.rb +115 -0
  126. data/lib/datadog_api_client/v2/models/monitor_notification_rule_resource_type.rb +26 -0
  127. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response.rb +117 -0
  128. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response_attributes.rb +184 -0
  129. data/lib/datadog_api_client/v2/models/monitor_notification_rule_response_included_item.rb +62 -0
  130. data/lib/datadog_api_client/v2/models/monitor_notification_rule_update_request.rb +123 -0
  131. data/lib/datadog_api_client/v2/models/monitor_notification_rule_update_request_data.rb +154 -0
  132. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor.rb +211 -0
  133. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor_type.rb +26 -0
  134. data/lib/datadog_api_client/v2/models/observability_pipeline_add_env_vars_processor_variable.rb +144 -0
  135. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source.rb +166 -0
  136. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_data_firehose_source_type.rb +26 -0
  137. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination.rb +200 -0
  138. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_auth.rb +164 -0
  139. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_auth_strategy.rb +27 -0
  140. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_open_search_destination_type.rb +26 -0
  141. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination.rb +262 -0
  142. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination_storage_class.rb +34 -0
  143. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_destination_type.rb +26 -0
  144. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source.rb +188 -0
  145. data/lib/datadog_api_client/v2/models/observability_pipeline_amazon_s3_source_type.rb +26 -0
  146. data/lib/datadog_api_client/v2/models/observability_pipeline_aws_auth.rb +126 -0
  147. data/lib/datadog_api_client/v2/models/observability_pipeline_config.rb +1 -12
  148. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +15 -1
  149. data/lib/datadog_api_client/v2/models/observability_pipeline_config_processor_item.rb +11 -1
  150. data/lib/datadog_api_client/v2/models/observability_pipeline_config_source_item.rb +14 -1
  151. data/lib/datadog_api_client/v2/models/observability_pipeline_datadog_agent_source.rb +1 -1
  152. data/lib/datadog_api_client/v2/models/observability_pipeline_decoding.rb +29 -0
  153. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor.rb +232 -0
  154. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor_mode.rb +27 -0
  155. data/lib/datadog_api_client/v2/models/observability_pipeline_dedupe_processor_type.rb +26 -0
  156. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination.rb +187 -0
  157. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_api_version.rb +29 -0
  158. data/lib/datadog_api_client/v2/models/observability_pipeline_elasticsearch_destination_type.rb +26 -0
  159. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file.rb +190 -0
  160. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_encoding.rb +165 -0
  161. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_encoding_type.rb +26 -0
  162. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_key_items.rb +165 -0
  163. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_key_items_comparison.rb +26 -0
  164. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_schema_items.rb +144 -0
  165. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_file_schema_items_type.rb +31 -0
  166. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_geo_ip.rb +165 -0
  167. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor.rb +229 -0
  168. data/lib/datadog_api_client/v2/models/observability_pipeline_enrichment_table_processor_type.rb +26 -0
  169. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source.rb +154 -0
  170. data/lib/datadog_api_client/v2/models/observability_pipeline_fluent_bit_source_type.rb +26 -0
  171. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source.rb +154 -0
  172. data/lib/datadog_api_client/v2/models/observability_pipeline_fluentd_source_type.rb +26 -0
  173. data/lib/datadog_api_client/v2/models/observability_pipeline_gcp_auth.rb +123 -0
  174. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor.rb +212 -0
  175. data/lib/datadog_api_client/v2/models/observability_pipeline_generate_metrics_processor_type.rb +26 -0
  176. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric.rb +199 -0
  177. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_field.rb +144 -0
  178. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_field_strategy.rb +26 -0
  179. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_one.rb +123 -0
  180. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_increment_by_one_strategy.rb +26 -0
  181. data/lib/datadog_api_client/v2/models/observability_pipeline_generated_metric_metric_type.rb +28 -0
  182. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination.rb +230 -0
  183. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination_encoding.rb +27 -0
  184. data/lib/datadog_api_client/v2/models/observability_pipeline_google_chronicle_destination_type.rb +26 -0
  185. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination.rb +286 -0
  186. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_acl.rb +31 -0
  187. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_storage_class.rb +29 -0
  188. data/lib/datadog_api_client/v2/models/observability_pipeline_google_cloud_storage_destination_type.rb +26 -0
  189. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source.rb +239 -0
  190. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_source_type.rb +26 -0
  191. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source.rb +205 -0
  192. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_auth_strategy.rb +27 -0
  193. data/lib/datadog_api_client/v2/models/observability_pipeline_http_client_source_type.rb +26 -0
  194. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source.rb +196 -0
  195. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source_auth_strategy.rb +27 -0
  196. data/lib/datadog_api_client/v2/models/observability_pipeline_http_server_source_type.rb +26 -0
  197. data/lib/datadog_api_client/v2/models/observability_pipeline_kafka_source.rb +1 -1
  198. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source.rb +154 -0
  199. data/lib/datadog_api_client/v2/models/observability_pipeline_logstash_source_type.rb +26 -0
  200. data/lib/datadog_api_client/v2/models/observability_pipeline_metadata_entry.rb +144 -0
  201. data/lib/datadog_api_client/v2/models/observability_pipeline_metric_value.rb +63 -0
  202. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination.rb +188 -0
  203. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination_region.rb +27 -0
  204. data/lib/datadog_api_client/v2/models/observability_pipeline_new_relic_destination_type.rb +26 -0
  205. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor.rb +211 -0
  206. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_mapping.rb +144 -0
  207. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_mapping_mapping.rb +62 -0
  208. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapper_processor_type.rb +26 -0
  209. data/lib/datadog_api_client/v2/models/observability_pipeline_ocsf_mapping_library.rb +36 -0
  210. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination.rb +177 -0
  211. data/lib/datadog_api_client/v2/models/observability_pipeline_open_search_destination_type.rb +26 -0
  212. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor.rb +221 -0
  213. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule.rb +173 -0
  214. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule_match_rule.rb +145 -0
  215. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_rule_support_rule.rb +144 -0
  216. data/lib/datadog_api_client/v2/models/observability_pipeline_parse_grok_processor_type.rb +26 -0
  217. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor.rb +16 -2
  218. data/lib/datadog_api_client/v2/models/observability_pipeline_quota_processor_overflow_action.rb +31 -0
  219. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor.rb +234 -0
  220. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_merge_strategy.rb +144 -0
  221. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_merge_strategy_strategy.rb +37 -0
  222. data/lib/datadog_api_client/v2/models/observability_pipeline_reduce_processor_type.rb +26 -0
  223. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination.rb +198 -0
  224. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_destination_type.rb +26 -0
  225. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source.rb +175 -0
  226. data/lib/datadog_api_client/v2/models/observability_pipeline_rsyslog_source_type.rb +26 -0
  227. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor.rb +219 -0
  228. data/lib/datadog_api_client/v2/models/observability_pipeline_sample_processor_type.rb +26 -0
  229. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor.rb +211 -0
  230. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action.rb +64 -0
  231. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_hash.rb +133 -0
  232. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_hash_action.rb +26 -0
  233. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact.rb +144 -0
  234. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_action.rb +26 -0
  235. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_options.rb +144 -0
  236. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_partial_redact_options_direction.rb +27 -0
  237. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact.rb +144 -0
  238. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact_action.rb +26 -0
  239. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_action_redact_options.rb +123 -0
  240. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern.rb +144 -0
  241. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_options.rb +123 -0
  242. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_custom_pattern_type.rb +26 -0
  243. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_keyword_options.rb +146 -0
  244. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern.rb +144 -0
  245. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_options.rb +133 -0
  246. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_library_pattern_type.rb +26 -0
  247. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_pattern.rb +63 -0
  248. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_rule.rb +219 -0
  249. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope.rb +64 -0
  250. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_all.rb +123 -0
  251. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_all_target.rb +26 -0
  252. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_exclude.rb +144 -0
  253. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_exclude_target.rb +26 -0
  254. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_include.rb +144 -0
  255. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_include_target.rb +26 -0
  256. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_scope_options.rb +125 -0
  257. data/lib/datadog_api_client/v2/models/observability_pipeline_sensitive_data_scanner_processor_type.rb +26 -0
  258. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination.rb +188 -0
  259. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination_region.rb +29 -0
  260. data/lib/datadog_api_client/v2/models/observability_pipeline_sentinel_one_destination_type.rb +26 -0
  261. data/lib/datadog_api_client/v2/models/observability_pipeline_spec.rb +123 -0
  262. data/lib/datadog_api_client/v2/models/{observability_pipeline_create_request_data.rb → observability_pipeline_spec_data.rb} +3 -3
  263. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination.rb +209 -0
  264. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination_encoding.rb +27 -0
  265. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_destination_type.rb +26 -0
  266. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source.rb +154 -0
  267. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_hec_source_type.rb +26 -0
  268. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source.rb +155 -0
  269. data/lib/datadog_api_client/v2/models/observability_pipeline_splunk_tcp_source_type.rb +26 -0
  270. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination.rb +219 -0
  271. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_encoding.rb +28 -0
  272. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_header_custom_fields_item.rb +144 -0
  273. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_destination_type.rb +26 -0
  274. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source.rb +144 -0
  275. data/lib/datadog_api_client/v2/models/observability_pipeline_sumo_logic_source_type.rb +26 -0
  276. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination.rb +198 -0
  277. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_destination_type.rb +26 -0
  278. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source.rb +175 -0
  279. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_ng_source_type.rb +26 -0
  280. data/lib/datadog_api_client/v2/models/observability_pipeline_syslog_source_mode.rb +27 -0
  281. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor.rb +242 -0
  282. data/lib/datadog_api_client/v2/models/observability_pipeline_throttle_processor_type.rb +26 -0
  283. data/lib/datadog_api_client/v2/models/observability_pipeline_tls.rb +1 -1
  284. data/lib/datadog_api_client/v2/models/schedule_create_request_data_relationships_teams_data_items.rb +31 -2
  285. data/lib/datadog_api_client/v2/models/schedule_data.rb +19 -1
  286. data/lib/datadog_api_client/v2/models/schedule_data_relationships_layers_data_items.rb +31 -2
  287. data/lib/datadog_api_client/v2/models/schedule_data_relationships_teams_data_items.rb +31 -2
  288. data/lib/datadog_api_client/v2/models/schedule_member.rb +19 -1
  289. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user.rb +19 -1
  290. data/lib/datadog_api_client/v2/models/schedule_member_relationships_user_data.rb +31 -2
  291. data/lib/datadog_api_client/v2/models/schedule_target.rb +144 -0
  292. data/lib/datadog_api_client/v2/models/schedule_target_type.rb +26 -0
  293. data/lib/datadog_api_client/v2/models/schedule_update_request_data_attributes_layers_items.rb +68 -6
  294. data/lib/datadog_api_client/v2/models/schedule_update_request_data_relationships_teams_data_items.rb +31 -2
  295. data/lib/datadog_api_client/v2/models/schedule_user.rb +19 -1
  296. data/lib/datadog_api_client/v2/models/tag_filter.rb +115 -0
  297. data/lib/datadog_api_client/v2/models/team_reference.rb +19 -1
  298. data/lib/datadog_api_client/v2/models/team_reference_relationships_oncall_users_data_items.rb +31 -2
  299. data/lib/datadog_api_client/v2/models/team_target.rb +144 -0
  300. data/lib/datadog_api_client/v2/models/team_target_type.rb +26 -0
  301. data/lib/datadog_api_client/v2/models/update_custom_framework_request.rb +123 -0
  302. data/lib/datadog_api_client/v2/models/update_custom_framework_response.rb +123 -0
  303. data/lib/datadog_api_client/v2/models/user_target.rb +144 -0
  304. data/lib/datadog_api_client/v2/models/user_target_type.rb +26 -0
  305. data/lib/datadog_api_client/v2/models/validation_error.rb +144 -0
  306. data/lib/datadog_api_client/v2/models/validation_error_meta.rb +143 -0
  307. data/lib/datadog_api_client/v2/models/validation_response.rb +107 -0
  308. data/lib/datadog_api_client/version.rb +1 -1
  309. metadata +262 -24
@@ -157,6 +157,71 @@ module DatadogAPIClient::V2
157
157
  return data, status_code, headers
158
158
  end
159
159
 
160
+ # Delete a budget.
161
+ #
162
+ # @see #delete_budget_with_http_info
163
+ def delete_budget(budget_id, opts = {})
164
+ delete_budget_with_http_info(budget_id, opts)
165
+ nil
166
+ end
167
+
168
+ # Delete a budget.
169
+ #
170
+ # Delete a budget.
171
+ #
172
+ # @param budget_id [String] Budget id.
173
+ # @param opts [Hash] the optional parameters
174
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
175
+ def delete_budget_with_http_info(budget_id, opts = {})
176
+
177
+ if @api_client.config.debugging
178
+ @api_client.config.logger.debug 'Calling API: CloudCostManagementAPI.delete_budget ...'
179
+ end
180
+ # verify the required parameter 'budget_id' is set
181
+ if @api_client.config.client_side_validation && budget_id.nil?
182
+ fail ArgumentError, "Missing the required parameter 'budget_id' when calling CloudCostManagementAPI.delete_budget"
183
+ end
184
+ # resource path
185
+ local_var_path = '/api/v2/cost/budget/{budget_id}'.sub('{budget_id}', CGI.escape(budget_id.to_s).gsub('%2F', '/'))
186
+
187
+ # query parameters
188
+ query_params = opts[:query_params] || {}
189
+
190
+ # header parameters
191
+ header_params = opts[:header_params] || {}
192
+ # HTTP header 'Accept' (if needed)
193
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
194
+
195
+ # form parameters
196
+ form_params = opts[:form_params] || {}
197
+
198
+ # http body (model)
199
+ post_body = opts[:debug_body]
200
+
201
+ # return_type
202
+ return_type = opts[:debug_return_type]
203
+
204
+ # auth_names
205
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
206
+
207
+ new_options = opts.merge(
208
+ :operation => :delete_budget,
209
+ :header_params => header_params,
210
+ :query_params => query_params,
211
+ :form_params => form_params,
212
+ :body => post_body,
213
+ :auth_names => auth_names,
214
+ :return_type => return_type,
215
+ :api_version => "V2"
216
+ )
217
+
218
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
219
+ if @api_client.config.debugging
220
+ @api_client.config.logger.debug "API called: CloudCostManagementAPI#delete_budget\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
221
+ end
222
+ return data, status_code, headers
223
+ end
224
+
160
225
  # Delete Cloud Cost Management AWS CUR config.
161
226
  #
162
227
  # @see #delete_cost_awscur_config_with_http_info
@@ -352,6 +417,71 @@ module DatadogAPIClient::V2
352
417
  return data, status_code, headers
353
418
  end
354
419
 
420
+ # Get a budget.
421
+ #
422
+ # @see #get_budget_with_http_info
423
+ def get_budget(budget_id, opts = {})
424
+ data, _status_code, _headers = get_budget_with_http_info(budget_id, opts)
425
+ data
426
+ end
427
+
428
+ # Get a budget.
429
+ #
430
+ # Get a budget.
431
+ #
432
+ # @param budget_id [String] Budget id.
433
+ # @param opts [Hash] the optional parameters
434
+ # @return [Array<(BudgetWithEntries, Integer, Hash)>] BudgetWithEntries data, response status code and response headers
435
+ def get_budget_with_http_info(budget_id, opts = {})
436
+
437
+ if @api_client.config.debugging
438
+ @api_client.config.logger.debug 'Calling API: CloudCostManagementAPI.get_budget ...'
439
+ end
440
+ # verify the required parameter 'budget_id' is set
441
+ if @api_client.config.client_side_validation && budget_id.nil?
442
+ fail ArgumentError, "Missing the required parameter 'budget_id' when calling CloudCostManagementAPI.get_budget"
443
+ end
444
+ # resource path
445
+ local_var_path = '/api/v2/cost/budget/{budget_id}'.sub('{budget_id}', CGI.escape(budget_id.to_s).gsub('%2F', '/'))
446
+
447
+ # query parameters
448
+ query_params = opts[:query_params] || {}
449
+
450
+ # header parameters
451
+ header_params = opts[:header_params] || {}
452
+ # HTTP header 'Accept' (if needed)
453
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
454
+
455
+ # form parameters
456
+ form_params = opts[:form_params] || {}
457
+
458
+ # http body (model)
459
+ post_body = opts[:debug_body]
460
+
461
+ # return_type
462
+ return_type = opts[:debug_return_type] || 'BudgetWithEntries'
463
+
464
+ # auth_names
465
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
466
+
467
+ new_options = opts.merge(
468
+ :operation => :get_budget,
469
+ :header_params => header_params,
470
+ :query_params => query_params,
471
+ :form_params => form_params,
472
+ :body => post_body,
473
+ :auth_names => auth_names,
474
+ :return_type => return_type,
475
+ :api_version => "V2"
476
+ )
477
+
478
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
479
+ if @api_client.config.debugging
480
+ @api_client.config.logger.debug "API called: CloudCostManagementAPI#get_budget\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
481
+ end
482
+ return data, status_code, headers
483
+ end
484
+
355
485
  # Get Custom Costs file.
356
486
  #
357
487
  # @see #get_custom_costs_file_with_http_info
@@ -417,6 +547,66 @@ module DatadogAPIClient::V2
417
547
  return data, status_code, headers
418
548
  end
419
549
 
550
+ # List budgets.
551
+ #
552
+ # @see #list_budgets_with_http_info
553
+ def list_budgets(opts = {})
554
+ data, _status_code, _headers = list_budgets_with_http_info(opts)
555
+ data
556
+ end
557
+
558
+ # List budgets.
559
+ #
560
+ # List budgets.
561
+ #
562
+ # @param opts [Hash] the optional parameters
563
+ # @return [Array<(BudgetArray, Integer, Hash)>] BudgetArray data, response status code and response headers
564
+ def list_budgets_with_http_info(opts = {})
565
+
566
+ if @api_client.config.debugging
567
+ @api_client.config.logger.debug 'Calling API: CloudCostManagementAPI.list_budgets ...'
568
+ end
569
+ # resource path
570
+ local_var_path = '/api/v2/cost/budgets'
571
+
572
+ # query parameters
573
+ query_params = opts[:query_params] || {}
574
+
575
+ # header parameters
576
+ header_params = opts[:header_params] || {}
577
+ # HTTP header 'Accept' (if needed)
578
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
579
+
580
+ # form parameters
581
+ form_params = opts[:form_params] || {}
582
+
583
+ # http body (model)
584
+ post_body = opts[:debug_body]
585
+
586
+ # return_type
587
+ return_type = opts[:debug_return_type] || 'BudgetArray'
588
+
589
+ # auth_names
590
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
591
+
592
+ new_options = opts.merge(
593
+ :operation => :list_budgets,
594
+ :header_params => header_params,
595
+ :query_params => query_params,
596
+ :form_params => form_params,
597
+ :body => post_body,
598
+ :auth_names => auth_names,
599
+ :return_type => return_type,
600
+ :api_version => "V2"
601
+ )
602
+
603
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
604
+ if @api_client.config.debugging
605
+ @api_client.config.logger.debug "API called: CloudCostManagementAPI#list_budgets\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
606
+ end
607
+ return data, status_code, headers
608
+ end
609
+
420
610
  # List Cloud Cost Management AWS CUR configs.
421
611
  #
422
612
  # @see #list_cost_awscur_configs_with_http_info
@@ -807,5 +997,72 @@ module DatadogAPIClient::V2
807
997
  end
808
998
  return data, status_code, headers
809
999
  end
1000
+
1001
+ # Create or update a budget.
1002
+ #
1003
+ # @see #upsert_budget_with_http_info
1004
+ def upsert_budget(body, opts = {})
1005
+ data, _status_code, _headers = upsert_budget_with_http_info(body, opts)
1006
+ data
1007
+ end
1008
+
1009
+ # Create or update a budget.
1010
+ #
1011
+ # Create a new budget or update an existing one.
1012
+ #
1013
+ # @param body [BudgetWithEntries]
1014
+ # @param opts [Hash] the optional parameters
1015
+ # @return [Array<(BudgetWithEntries, Integer, Hash)>] BudgetWithEntries data, response status code and response headers
1016
+ def upsert_budget_with_http_info(body, opts = {})
1017
+
1018
+ if @api_client.config.debugging
1019
+ @api_client.config.logger.debug 'Calling API: CloudCostManagementAPI.upsert_budget ...'
1020
+ end
1021
+ # verify the required parameter 'body' is set
1022
+ if @api_client.config.client_side_validation && body.nil?
1023
+ fail ArgumentError, "Missing the required parameter 'body' when calling CloudCostManagementAPI.upsert_budget"
1024
+ end
1025
+ # resource path
1026
+ local_var_path = '/api/v2/cost/budget'
1027
+
1028
+ # query parameters
1029
+ query_params = opts[:query_params] || {}
1030
+
1031
+ # header parameters
1032
+ header_params = opts[:header_params] || {}
1033
+ # HTTP header 'Accept' (if needed)
1034
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
1035
+ # HTTP header 'Content-Type'
1036
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
1037
+
1038
+ # form parameters
1039
+ form_params = opts[:form_params] || {}
1040
+
1041
+ # http body (model)
1042
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
1043
+
1044
+ # return_type
1045
+ return_type = opts[:debug_return_type] || 'BudgetWithEntries'
1046
+
1047
+ # auth_names
1048
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
1049
+
1050
+ new_options = opts.merge(
1051
+ :operation => :upsert_budget,
1052
+ :header_params => header_params,
1053
+ :query_params => query_params,
1054
+ :form_params => form_params,
1055
+ :body => post_body,
1056
+ :auth_names => auth_names,
1057
+ :return_type => return_type,
1058
+ :api_version => "V2"
1059
+ )
1060
+
1061
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Put, local_var_path, new_options)
1062
+ if @api_client.config.debugging
1063
+ @api_client.config.logger.debug "API called: CloudCostManagementAPI#upsert_budget\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1064
+ end
1065
+ return data, status_code, headers
1066
+ end
810
1067
  end
811
1068
  end
@@ -90,6 +90,79 @@ module DatadogAPIClient::V2
90
90
  return data, status_code, headers
91
91
  end
92
92
 
93
+ # Create a monitor notification rule.
94
+ #
95
+ # @see #create_monitor_notification_rule_with_http_info
96
+ def create_monitor_notification_rule(body, opts = {})
97
+ data, _status_code, _headers = create_monitor_notification_rule_with_http_info(body, opts)
98
+ data
99
+ end
100
+
101
+ # Create a monitor notification rule.
102
+ #
103
+ # Creates a monitor notification rule.
104
+ #
105
+ # @param body [MonitorNotificationRuleCreateRequest] Request body to create a monitor notification rule.
106
+ # @param opts [Hash] the optional parameters
107
+ # @return [Array<(MonitorNotificationRuleResponse, Integer, Hash)>] MonitorNotificationRuleResponse data, response status code and response headers
108
+ def create_monitor_notification_rule_with_http_info(body, opts = {})
109
+ unstable_enabled = @api_client.config.unstable_operations["v2.create_monitor_notification_rule".to_sym]
110
+ if unstable_enabled
111
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.create_monitor_notification_rule")
112
+ else
113
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.create_monitor_notification_rule"))
114
+ end
115
+
116
+ if @api_client.config.debugging
117
+ @api_client.config.logger.debug 'Calling API: MonitorsAPI.create_monitor_notification_rule ...'
118
+ end
119
+ # verify the required parameter 'body' is set
120
+ if @api_client.config.client_side_validation && body.nil?
121
+ fail ArgumentError, "Missing the required parameter 'body' when calling MonitorsAPI.create_monitor_notification_rule"
122
+ end
123
+ # resource path
124
+ local_var_path = '/api/v2/monitor/notification_rule'
125
+
126
+ # query parameters
127
+ query_params = opts[:query_params] || {}
128
+
129
+ # header parameters
130
+ header_params = opts[:header_params] || {}
131
+ # HTTP header 'Accept' (if needed)
132
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
133
+ # HTTP header 'Content-Type'
134
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
135
+
136
+ # form parameters
137
+ form_params = opts[:form_params] || {}
138
+
139
+ # http body (model)
140
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
141
+
142
+ # return_type
143
+ return_type = opts[:debug_return_type] || 'MonitorNotificationRuleResponse'
144
+
145
+ # auth_names
146
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
147
+
148
+ new_options = opts.merge(
149
+ :operation => :create_monitor_notification_rule,
150
+ :header_params => header_params,
151
+ :query_params => query_params,
152
+ :form_params => form_params,
153
+ :body => post_body,
154
+ :auth_names => auth_names,
155
+ :return_type => return_type,
156
+ :api_version => "V2"
157
+ )
158
+
159
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
160
+ if @api_client.config.debugging
161
+ @api_client.config.logger.debug "API called: MonitorsAPI#create_monitor_notification_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
162
+ end
163
+ return data, status_code, headers
164
+ end
165
+
93
166
  # Delete a monitor configuration policy.
94
167
  #
95
168
  # @see #delete_monitor_config_policy_with_http_info
@@ -155,6 +228,77 @@ module DatadogAPIClient::V2
155
228
  return data, status_code, headers
156
229
  end
157
230
 
231
+ # Delete a monitor notification rule.
232
+ #
233
+ # @see #delete_monitor_notification_rule_with_http_info
234
+ def delete_monitor_notification_rule(rule_id, opts = {})
235
+ delete_monitor_notification_rule_with_http_info(rule_id, opts)
236
+ nil
237
+ end
238
+
239
+ # Delete a monitor notification rule.
240
+ #
241
+ # Deletes a monitor notification rule by `rule_id`.
242
+ #
243
+ # @param rule_id [String] ID of the monitor notification rule to delete.
244
+ # @param opts [Hash] the optional parameters
245
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
246
+ def delete_monitor_notification_rule_with_http_info(rule_id, opts = {})
247
+ unstable_enabled = @api_client.config.unstable_operations["v2.delete_monitor_notification_rule".to_sym]
248
+ if unstable_enabled
249
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.delete_monitor_notification_rule")
250
+ else
251
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.delete_monitor_notification_rule"))
252
+ end
253
+
254
+ if @api_client.config.debugging
255
+ @api_client.config.logger.debug 'Calling API: MonitorsAPI.delete_monitor_notification_rule ...'
256
+ end
257
+ # verify the required parameter 'rule_id' is set
258
+ if @api_client.config.client_side_validation && rule_id.nil?
259
+ fail ArgumentError, "Missing the required parameter 'rule_id' when calling MonitorsAPI.delete_monitor_notification_rule"
260
+ end
261
+ # resource path
262
+ local_var_path = '/api/v2/monitor/notification_rule/{rule_id}'.sub('{rule_id}', CGI.escape(rule_id.to_s).gsub('%2F', '/'))
263
+
264
+ # query parameters
265
+ query_params = opts[:query_params] || {}
266
+
267
+ # header parameters
268
+ header_params = opts[:header_params] || {}
269
+ # HTTP header 'Accept' (if needed)
270
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
271
+
272
+ # form parameters
273
+ form_params = opts[:form_params] || {}
274
+
275
+ # http body (model)
276
+ post_body = opts[:debug_body]
277
+
278
+ # return_type
279
+ return_type = opts[:debug_return_type]
280
+
281
+ # auth_names
282
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
283
+
284
+ new_options = opts.merge(
285
+ :operation => :delete_monitor_notification_rule,
286
+ :header_params => header_params,
287
+ :query_params => query_params,
288
+ :form_params => form_params,
289
+ :body => post_body,
290
+ :auth_names => auth_names,
291
+ :return_type => return_type,
292
+ :api_version => "V2"
293
+ )
294
+
295
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
296
+ if @api_client.config.debugging
297
+ @api_client.config.logger.debug "API called: MonitorsAPI#delete_monitor_notification_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
298
+ end
299
+ return data, status_code, headers
300
+ end
301
+
158
302
  # Get a monitor configuration policy.
159
303
  #
160
304
  # @see #get_monitor_config_policy_with_http_info
@@ -220,6 +364,147 @@ module DatadogAPIClient::V2
220
364
  return data, status_code, headers
221
365
  end
222
366
 
367
+ # Get a monitor notification rule.
368
+ #
369
+ # @see #get_monitor_notification_rule_with_http_info
370
+ def get_monitor_notification_rule(rule_id, opts = {})
371
+ data, _status_code, _headers = get_monitor_notification_rule_with_http_info(rule_id, opts)
372
+ data
373
+ end
374
+
375
+ # Get a monitor notification rule.
376
+ #
377
+ # Returns a monitor notification rule by `rule_id`.
378
+ #
379
+ # @param rule_id [String] ID of the monitor notification rule to fetch.
380
+ # @param opts [Hash] the optional parameters
381
+ # @option opts [String] :include Comma-separated list of resource paths for related resources to include in the response. Supported resource path is `created_by`.
382
+ # @return [Array<(MonitorNotificationRuleResponse, Integer, Hash)>] MonitorNotificationRuleResponse data, response status code and response headers
383
+ def get_monitor_notification_rule_with_http_info(rule_id, opts = {})
384
+ unstable_enabled = @api_client.config.unstable_operations["v2.get_monitor_notification_rule".to_sym]
385
+ if unstable_enabled
386
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.get_monitor_notification_rule")
387
+ else
388
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.get_monitor_notification_rule"))
389
+ end
390
+
391
+ if @api_client.config.debugging
392
+ @api_client.config.logger.debug 'Calling API: MonitorsAPI.get_monitor_notification_rule ...'
393
+ end
394
+ # verify the required parameter 'rule_id' is set
395
+ if @api_client.config.client_side_validation && rule_id.nil?
396
+ fail ArgumentError, "Missing the required parameter 'rule_id' when calling MonitorsAPI.get_monitor_notification_rule"
397
+ end
398
+ # resource path
399
+ local_var_path = '/api/v2/monitor/notification_rule/{rule_id}'.sub('{rule_id}', CGI.escape(rule_id.to_s).gsub('%2F', '/'))
400
+
401
+ # query parameters
402
+ query_params = opts[:query_params] || {}
403
+ query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
404
+
405
+ # header parameters
406
+ header_params = opts[:header_params] || {}
407
+ # HTTP header 'Accept' (if needed)
408
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
409
+
410
+ # form parameters
411
+ form_params = opts[:form_params] || {}
412
+
413
+ # http body (model)
414
+ post_body = opts[:debug_body]
415
+
416
+ # return_type
417
+ return_type = opts[:debug_return_type] || 'MonitorNotificationRuleResponse'
418
+
419
+ # auth_names
420
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
421
+
422
+ new_options = opts.merge(
423
+ :operation => :get_monitor_notification_rule,
424
+ :header_params => header_params,
425
+ :query_params => query_params,
426
+ :form_params => form_params,
427
+ :body => post_body,
428
+ :auth_names => auth_names,
429
+ :return_type => return_type,
430
+ :api_version => "V2"
431
+ )
432
+
433
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
434
+ if @api_client.config.debugging
435
+ @api_client.config.logger.debug "API called: MonitorsAPI#get_monitor_notification_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
436
+ end
437
+ return data, status_code, headers
438
+ end
439
+
440
+ # Get all monitor notification rules.
441
+ #
442
+ # @see #get_monitor_notification_rules_with_http_info
443
+ def get_monitor_notification_rules(opts = {})
444
+ data, _status_code, _headers = get_monitor_notification_rules_with_http_info(opts)
445
+ data
446
+ end
447
+
448
+ # Get all monitor notification rules.
449
+ #
450
+ # Returns a list of all monitor notification rules.
451
+ #
452
+ # @param opts [Hash] the optional parameters
453
+ # @option opts [String] :include Comma-separated list of resource paths for related resources to include in the response. Supported resource path is `created_by`.
454
+ # @return [Array<(MonitorNotificationRuleListResponse, Integer, Hash)>] MonitorNotificationRuleListResponse data, response status code and response headers
455
+ def get_monitor_notification_rules_with_http_info(opts = {})
456
+ unstable_enabled = @api_client.config.unstable_operations["v2.get_monitor_notification_rules".to_sym]
457
+ if unstable_enabled
458
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.get_monitor_notification_rules")
459
+ else
460
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.get_monitor_notification_rules"))
461
+ end
462
+
463
+ if @api_client.config.debugging
464
+ @api_client.config.logger.debug 'Calling API: MonitorsAPI.get_monitor_notification_rules ...'
465
+ end
466
+ # resource path
467
+ local_var_path = '/api/v2/monitor/notification_rule'
468
+
469
+ # query parameters
470
+ query_params = opts[:query_params] || {}
471
+ query_params[:'include'] = opts[:'include'] if !opts[:'include'].nil?
472
+
473
+ # header parameters
474
+ header_params = opts[:header_params] || {}
475
+ # HTTP header 'Accept' (if needed)
476
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
477
+
478
+ # form parameters
479
+ form_params = opts[:form_params] || {}
480
+
481
+ # http body (model)
482
+ post_body = opts[:debug_body]
483
+
484
+ # return_type
485
+ return_type = opts[:debug_return_type] || 'MonitorNotificationRuleListResponse'
486
+
487
+ # auth_names
488
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
489
+
490
+ new_options = opts.merge(
491
+ :operation => :get_monitor_notification_rules,
492
+ :header_params => header_params,
493
+ :query_params => query_params,
494
+ :form_params => form_params,
495
+ :body => post_body,
496
+ :auth_names => auth_names,
497
+ :return_type => return_type,
498
+ :api_version => "V2"
499
+ )
500
+
501
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
502
+ if @api_client.config.debugging
503
+ @api_client.config.logger.debug "API called: MonitorsAPI#get_monitor_notification_rules\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
504
+ end
505
+ return data, status_code, headers
506
+ end
507
+
223
508
  # Get all monitor configuration policies.
224
509
  #
225
510
  # @see #list_monitor_config_policies_with_http_info
@@ -351,5 +636,83 @@ module DatadogAPIClient::V2
351
636
  end
352
637
  return data, status_code, headers
353
638
  end
639
+
640
+ # Update a monitor notification rule.
641
+ #
642
+ # @see #update_monitor_notification_rule_with_http_info
643
+ def update_monitor_notification_rule(rule_id, body, opts = {})
644
+ data, _status_code, _headers = update_monitor_notification_rule_with_http_info(rule_id, body, opts)
645
+ data
646
+ end
647
+
648
+ # Update a monitor notification rule.
649
+ #
650
+ # Updates a monitor notification rule by `rule_id`.
651
+ #
652
+ # @param rule_id [String] ID of the monitor notification rule to update.
653
+ # @param body [MonitorNotificationRuleUpdateRequest] Request body to update the monitor notification rule.
654
+ # @param opts [Hash] the optional parameters
655
+ # @return [Array<(MonitorNotificationRuleResponse, Integer, Hash)>] MonitorNotificationRuleResponse data, response status code and response headers
656
+ def update_monitor_notification_rule_with_http_info(rule_id, body, opts = {})
657
+ unstable_enabled = @api_client.config.unstable_operations["v2.update_monitor_notification_rule".to_sym]
658
+ if unstable_enabled
659
+ @api_client.config.logger.warn format("Using unstable operation '%s'", "v2.update_monitor_notification_rule")
660
+ else
661
+ raise DatadogAPIClient::APIError.new(message: format("Unstable operation '%s' is disabled", "v2.update_monitor_notification_rule"))
662
+ end
663
+
664
+ if @api_client.config.debugging
665
+ @api_client.config.logger.debug 'Calling API: MonitorsAPI.update_monitor_notification_rule ...'
666
+ end
667
+ # verify the required parameter 'rule_id' is set
668
+ if @api_client.config.client_side_validation && rule_id.nil?
669
+ fail ArgumentError, "Missing the required parameter 'rule_id' when calling MonitorsAPI.update_monitor_notification_rule"
670
+ end
671
+ # verify the required parameter 'body' is set
672
+ if @api_client.config.client_side_validation && body.nil?
673
+ fail ArgumentError, "Missing the required parameter 'body' when calling MonitorsAPI.update_monitor_notification_rule"
674
+ end
675
+ # resource path
676
+ local_var_path = '/api/v2/monitor/notification_rule/{rule_id}'.sub('{rule_id}', CGI.escape(rule_id.to_s).gsub('%2F', '/'))
677
+
678
+ # query parameters
679
+ query_params = opts[:query_params] || {}
680
+
681
+ # header parameters
682
+ header_params = opts[:header_params] || {}
683
+ # HTTP header 'Accept' (if needed)
684
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
685
+ # HTTP header 'Content-Type'
686
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
687
+
688
+ # form parameters
689
+ form_params = opts[:form_params] || {}
690
+
691
+ # http body (model)
692
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
693
+
694
+ # return_type
695
+ return_type = opts[:debug_return_type] || 'MonitorNotificationRuleResponse'
696
+
697
+ # auth_names
698
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
699
+
700
+ new_options = opts.merge(
701
+ :operation => :update_monitor_notification_rule,
702
+ :header_params => header_params,
703
+ :query_params => query_params,
704
+ :form_params => form_params,
705
+ :body => post_body,
706
+ :auth_names => auth_names,
707
+ :return_type => return_type,
708
+ :api_version => "V2"
709
+ )
710
+
711
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Patch, local_var_path, new_options)
712
+ if @api_client.config.debugging
713
+ @api_client.config.logger.debug "API called: MonitorsAPI#update_monitor_notification_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
714
+ end
715
+ return data, status_code, headers
716
+ end
354
717
  end
355
718
  end
@@ -102,6 +102,7 @@ module DatadogAPIClient::V2
102
102
  #
103
103
  # @param device_id [String] The ID of the device to get interfaces from.
104
104
  # @param opts [Hash] the optional parameters
105
+ # @option opts [Boolean] :get_ip_addresses Whether to get the IP addresses of the interfaces.
105
106
  # @return [Array<(GetInterfacesResponse, Integer, Hash)>] GetInterfacesResponse data, response status code and response headers
106
107
  def get_interfaces_with_http_info(device_id, opts = {})
107
108
 
@@ -118,6 +119,7 @@ module DatadogAPIClient::V2
118
119
  # query parameters
119
120
  query_params = opts[:query_params] || {}
120
121
  query_params[:'device_id'] = device_id
122
+ query_params[:'get_ip_addresses'] = opts[:'get_ip_addresses'] if !opts[:'get_ip_addresses'].nil?
121
123
 
122
124
  # header parameters
123
125
  header_params = opts[:header_params] || {}