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
@@ -14,6 +14,11 @@ jobs:
14
14
  build:
15
15
  name: Build + Publish
16
16
  runs-on: ubuntu-latest
17
+
18
+ permissions:
19
+ id-token: write # IMPORTANT: this permission is mandatory for trusted publishing
20
+ contents: write # IMPORTANT: this permission is required for `rake release` to push the release tag
21
+
17
22
  if: github.event_name == 'workflow_dispatch' || (github.event_name == 'release' && github.event.action == 'published')
18
23
  steps:
19
24
  - uses: actions/checkout@v3
@@ -28,12 +33,4 @@ jobs:
28
33
  - run: bundle install
29
34
 
30
35
  - name: Publish to RubyGems
31
- run: |
32
- mkdir -p $HOME/.gem
33
- touch $HOME/.gem/credentials
34
- chmod 0600 $HOME/.gem/credentials
35
- printf -- "---\n:rubygems_api_key: ${GEM_HOST_API_KEY}\n" > $HOME/.gem/credentials
36
- gem build *.gemspec
37
- gem push *.gem
38
- env:
39
- GEM_HOST_API_KEY: "${{secrets.RUBYGEMS_AUTH_TOKEN}}"
36
+ uses: rubygems/release-gem@a25424ba2ba8b387abc8ef40807c2c85b96cbe32 # v1.1.1
@@ -77,7 +77,7 @@ jobs:
77
77
  test:
78
78
  strategy:
79
79
  matrix:
80
- ruby-version: ["2.7", "3.2", "jruby"]
80
+ ruby-version: ["2.7", "3.2", "jruby-9.4.12.0"]
81
81
  platform: [ubuntu-latest]
82
82
  runs-on: ${{ matrix.platform }}
83
83
  if: (github.event.pull_request.draft == false && !contains(github.event.pull_request.labels.*.name, 'ci/skip') && !contains(github.event.pull_request.head.ref, 'datadog-api-spec/test/')) || github.event_name == 'schedule'
data/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2.33.0 / 2025-05-01
4
+
5
+ ### Fixed
6
+ * Set required properties for schedules in OnCall API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2342
7
+ * Update On-Call Escalation policies endpoints schemas and description by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2353
8
+ ### Added
9
+ * Update NDM GetInterfaces documentation to add get_ip_addresses param by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2330
10
+ * Add OnCall Escalation Policy v2 endpoints by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2341
11
+ * datadog_integration_gcp_sts Add Support for IsPerProjectQuotaEnabled for GCP STS Service Accounts by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2349
12
+ * Complete Observability Pipelines API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2358
13
+ * Add budgeting endpoints by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2337
14
+ ### Changed
15
+ * Add Monitor Notification Rules v2 API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2317
16
+ * Remove `uuidtools` while maintaining validation logic by @AlexMooney in https://github.com/DataDog/datadog-api-client-ruby/pull/2320
17
+
18
+ ## New Contributors
19
+ * @AlexMooney made their first contribution in https://github.com/DataDog/datadog-api-client-ruby/pull/2320
20
+
21
+ **Full Changelog**: https://github.com/DataDog/datadog-api-client-ruby/compare/v2.32.0...v2.33.0
22
+
3
23
  ## 2.32.0 / 2025-04-14
4
24
 
5
25
  ### Fixed
data/Gemfile CHANGED
@@ -19,7 +19,6 @@ group :development, :test do
19
19
  gem 'webmock'
20
20
  gem 'zstandard'
21
21
  gem 'pry'
22
- gem 'uuidtools'
23
22
  end
24
23
 
25
24
  group :docs do
data/LICENSE-3rdparty.csv CHANGED
@@ -71,7 +71,6 @@ tomlrb,MIT,Francois Bernier
71
71
  typhoeus,MIT,"David Balatero, Paul Dix, Hans Hasselberg"
72
72
  tzinfo,MIT,Philip Ross
73
73
  unicode-display_width,MIT,Jan Lelis
74
- uuidtools,Apache-2.0,Bob Aman
75
74
  vcr,"Hippocratic-2.1,MIT","Myron Marston, Kurtis Rainbolt-Greene, Olle Jonsson"
76
75
  webmock,MIT,Bartosz Blimke
77
76
  with_env,MIT,Zach Dennis
data/Rakefile CHANGED
@@ -1,8 +1,11 @@
1
+ require 'bundler/gem_tasks'
1
2
  require 'rubygems'
2
3
  require 'cucumber'
3
4
  require 'cucumber/rake/task'
4
5
  require 'yard'
5
6
 
7
+ require_relative "lib/datadog_api_client/version"
8
+
6
9
  Cucumber::Rake::Task.new(:features)
7
10
 
8
11
  YARD::Rake::YardocTask.new(:docs) do |t|
@@ -26,8 +26,6 @@ Gem::Specification.new do |spec|
26
26
 
27
27
  spec.add_runtime_dependency "zeitwerk", "~> 2.6", ">= 2.6.0"
28
28
 
29
- spec.add_runtime_dependency "uuidtools", "~> 2.1.5", ">= 2.1.5"
30
-
31
29
  spec.add_development_dependency "rspec", "~> 3.6", ">= 3.6.0"
32
30
 
33
31
  spec.files = `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features|cassettes)/}) }
@@ -0,0 +1,5 @@
1
+ # Delete a budget returns "No Content" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+ api_instance.delete_budget("budget_id")
@@ -0,0 +1,5 @@
1
+ # Get a budget returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+ p api_instance.get_budget("budget_id")
@@ -0,0 +1,5 @@
1
+ # List budgets returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+ p api_instance.list_budgets()
@@ -0,0 +1,35 @@
1
+ # Create or update a budget returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::CloudCostManagementAPI.new
5
+
6
+ body = DatadogAPIClient::V2::BudgetWithEntries.new({
7
+ data: DatadogAPIClient::V2::BudgetWithEntriesData.new({
8
+ attributes: DatadogAPIClient::V2::BudgetAttributes.new({
9
+ created_at: 1738258683590,
10
+ created_by: "00000000-0a0a-0a0a-aaa0-00000000000a",
11
+ end_month: 202502,
12
+ entries: [
13
+ DatadogAPIClient::V2::BudgetEntry.new({
14
+ amount: 500,
15
+ month: 202501,
16
+ tag_filters: [
17
+ DatadogAPIClient::V2::TagFilter.new({
18
+ tag_key: "service",
19
+ tag_value: "ec2",
20
+ }),
21
+ ],
22
+ }),
23
+ ],
24
+ metrics_query: "aws.cost.amortized{service:ec2} by {service}",
25
+ name: "my budget",
26
+ org_id: 123,
27
+ start_month: 202501,
28
+ total_amount: 1000,
29
+ updated_at: 1738258683590,
30
+ updated_by: "00000000-0a0a-0a0a-aaa0-00000000000a",
31
+ }),
32
+ id: "00000000-0a0a-0a0a-aaa0-00000000000a",
33
+ }),
34
+ })
35
+ p api_instance.upsert_budget(body)
@@ -0,0 +1,26 @@
1
+ # Create a monitor notification rule returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.create_monitor_notification_rule".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
8
+
9
+ body = DatadogAPIClient::V2::MonitorNotificationRuleCreateRequest.new({
10
+ data: DatadogAPIClient::V2::MonitorNotificationRuleCreateRequestData.new({
11
+ attributes: DatadogAPIClient::V2::MonitorNotificationRuleAttributes.new({
12
+ filter: DatadogAPIClient::V2::MonitorNotificationRuleFilterTags.new({
13
+ tags: [
14
+ "test:example-monitor",
15
+ ],
16
+ }),
17
+ name: "test rule",
18
+ recipients: [
19
+ "slack-test-channel",
20
+ "jira-test",
21
+ ],
22
+ }),
23
+ type: DatadogAPIClient::V2::MonitorNotificationRuleResourceType::MONITOR_NOTIFICATION_RULE,
24
+ }),
25
+ })
26
+ p api_instance.create_monitor_notification_rule(body)
@@ -0,0 +1,11 @@
1
+ # Delete a monitor notification rule returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.delete_monitor_notification_rule".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
8
+
9
+ # there is a valid "monitor_notification_rule" in the system
10
+ MONITOR_NOTIFICATION_RULE_DATA_ID = ENV["MONITOR_NOTIFICATION_RULE_DATA_ID"]
11
+ api_instance.delete_monitor_notification_rule(MONITOR_NOTIFICATION_RULE_DATA_ID)
@@ -0,0 +1,11 @@
1
+ # Get a monitor notification rule returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.get_monitor_notification_rule".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
8
+
9
+ # there is a valid "monitor_notification_rule" in the system
10
+ MONITOR_NOTIFICATION_RULE_DATA_ID = ENV["MONITOR_NOTIFICATION_RULE_DATA_ID"]
11
+ p api_instance.get_monitor_notification_rule(MONITOR_NOTIFICATION_RULE_DATA_ID)
@@ -0,0 +1,8 @@
1
+ # Get all monitor notification rules returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.get_monitor_notification_rules".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
8
+ p api_instance.get_monitor_notification_rules()
@@ -0,0 +1,30 @@
1
+ # Update a monitor notification rule returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.update_monitor_notification_rule".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::MonitorsAPI.new
8
+
9
+ # there is a valid "monitor_notification_rule" in the system
10
+ MONITOR_NOTIFICATION_RULE_DATA_ID = ENV["MONITOR_NOTIFICATION_RULE_DATA_ID"]
11
+
12
+ body = DatadogAPIClient::V2::MonitorNotificationRuleUpdateRequest.new({
13
+ data: DatadogAPIClient::V2::MonitorNotificationRuleUpdateRequestData.new({
14
+ attributes: DatadogAPIClient::V2::MonitorNotificationRuleAttributes.new({
15
+ filter: DatadogAPIClient::V2::MonitorNotificationRuleFilterTags.new({
16
+ tags: [
17
+ "test:example-monitor",
18
+ "host:abc",
19
+ ],
20
+ }),
21
+ name: "updated rule",
22
+ recipients: [
23
+ "slack-test-channel",
24
+ ],
25
+ }),
26
+ id: MONITOR_NOTIFICATION_RULE_DATA_ID,
27
+ type: DatadogAPIClient::V2::MonitorNotificationRuleResourceType::MONITOR_NOTIFICATION_RULE,
28
+ }),
29
+ })
30
+ p api_instance.update_monitor_notification_rule(MONITOR_NOTIFICATION_RULE_DATA_ID, body)
@@ -2,4 +2,7 @@
2
2
 
3
3
  require "datadog_api_client"
4
4
  api_instance = DatadogAPIClient::V2::NetworkDeviceMonitoringAPI.new
5
- p api_instance.get_interfaces("default:1.2.3.4")
5
+ opts = {
6
+ get_ip_addresses: true,
7
+ }
8
+ p api_instance.get_interfaces("default:1.2.3.4", opts)
@@ -6,8 +6,8 @@ DatadogAPIClient.configure do |config|
6
6
  end
7
7
  api_instance = DatadogAPIClient::V2::ObservabilityPipelinesAPI.new
8
8
 
9
- body = DatadogAPIClient::V2::ObservabilityPipelineCreateRequest.new({
10
- data: DatadogAPIClient::V2::ObservabilityPipelineCreateRequestData.new({
9
+ body = DatadogAPIClient::V2::ObservabilityPipelineSpec.new({
10
+ data: DatadogAPIClient::V2::ObservabilityPipelineSpecData.new({
11
11
  attributes: DatadogAPIClient::V2::ObservabilityPipelineDataAttributes.new({
12
12
  config: DatadogAPIClient::V2::ObservabilityPipelineConfig.new({
13
13
  destinations: [
@@ -0,0 +1,8 @@
1
+ # List pipelines returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.list_pipelines".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::ObservabilityPipelinesAPI.new
8
+ p api_instance.list_pipelines()
@@ -0,0 +1,44 @@
1
+ # Validate an observability pipeline returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ DatadogAPIClient.configure do |config|
5
+ config.unstable_operations["v2.validate_pipeline".to_sym] = true
6
+ end
7
+ api_instance = DatadogAPIClient::V2::ObservabilityPipelinesAPI.new
8
+
9
+ body = DatadogAPIClient::V2::ObservabilityPipelineSpec.new({
10
+ data: DatadogAPIClient::V2::ObservabilityPipelineSpecData.new({
11
+ attributes: DatadogAPIClient::V2::ObservabilityPipelineDataAttributes.new({
12
+ config: DatadogAPIClient::V2::ObservabilityPipelineConfig.new({
13
+ destinations: [
14
+ DatadogAPIClient::V2::ObservabilityPipelineDatadogLogsDestination.new({
15
+ id: "datadog-logs-destination",
16
+ inputs: [
17
+ "filter-processor",
18
+ ],
19
+ type: DatadogAPIClient::V2::ObservabilityPipelineDatadogLogsDestinationType::DATADOG_LOGS,
20
+ }),
21
+ ],
22
+ processors: [
23
+ DatadogAPIClient::V2::ObservabilityPipelineFilterProcessor.new({
24
+ id: "filter-processor",
25
+ include: "service:my-service",
26
+ inputs: [
27
+ "datadog-agent-source",
28
+ ],
29
+ type: DatadogAPIClient::V2::ObservabilityPipelineFilterProcessorType::FILTER,
30
+ }),
31
+ ],
32
+ sources: [
33
+ DatadogAPIClient::V2::ObservabilityPipelineDatadogAgentSource.new({
34
+ id: "datadog-agent-source",
35
+ type: DatadogAPIClient::V2::ObservabilityPipelineDatadogAgentSourceType::DATADOG_AGENT,
36
+ }),
37
+ ],
38
+ }),
39
+ name: "Main Observability Pipeline",
40
+ }),
41
+ type: "pipelines",
42
+ }),
43
+ })
44
+ p api_instance.validate_pipeline(body)
@@ -0,0 +1,66 @@
1
+ # Create on-call escalation policy returns "Created" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::On - CallAPI.new
5
+
6
+ # there is a valid "user" in the system
7
+ USER_DATA_ID = ENV["USER_DATA_ID"]
8
+
9
+ # there is a valid "schedule" in the system
10
+ SCHEDULE_DATA_ID = ENV["SCHEDULE_DATA_ID"]
11
+
12
+ # there is a valid "dd_team" in the system
13
+ DD_TEAM_DATA_ID = ENV["DD_TEAM_DATA_ID"]
14
+
15
+ body = DatadogAPIClient::V2::EscalationPolicyCreateRequest.new({
16
+ data: DatadogAPIClient::V2::EscalationPolicyCreateRequestData.new({
17
+ attributes: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributes.new({
18
+ description: "Escalation Policy 1 description",
19
+ name: "Example-On-Call",
20
+ resolve_page_on_policy_end: true,
21
+ retries: 2,
22
+ steps: [
23
+ DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItems.new({
24
+ assignment: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsAssignment::DEFAULT,
25
+ escalate_after_seconds: 3600,
26
+ targets: [
27
+ DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItems.new({
28
+ id: USER_DATA_ID,
29
+ type: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItemsType::USERS,
30
+ }),
31
+ DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItems.new({
32
+ id: SCHEDULE_DATA_ID,
33
+ type: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItemsType::SCHEDULES,
34
+ }),
35
+ DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItems.new({
36
+ id: DD_TEAM_DATA_ID,
37
+ type: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItemsType::TEAMS,
38
+ }),
39
+ ],
40
+ }),
41
+ DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItems.new({
42
+ assignment: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsAssignment::ROUND_ROBIN,
43
+ escalate_after_seconds: 3600,
44
+ targets: [
45
+ DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItems.new({
46
+ id: DD_TEAM_DATA_ID,
47
+ type: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataAttributesStepsItemsTargetsItemsType::TEAMS,
48
+ }),
49
+ ],
50
+ }),
51
+ ],
52
+ }),
53
+ relationships: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataRelationships.new({
54
+ teams: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataRelationshipsTeams.new({
55
+ data: [
56
+ DatadogAPIClient::V2::EscalationPolicyCreateRequestDataRelationshipsTeamsDataItems.new({
57
+ id: DD_TEAM_DATA_ID,
58
+ type: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataRelationshipsTeamsDataItemsType::TEAMS,
59
+ }),
60
+ ],
61
+ }),
62
+ }),
63
+ type: DatadogAPIClient::V2::EscalationPolicyCreateRequestDataType::POLICIES,
64
+ }),
65
+ })
66
+ p api_instance.create_on_call_escalation_policy(body)
@@ -6,8 +6,8 @@ api_instance = DatadogAPIClient::V2::On - CallAPI.new
6
6
  # there is a valid "user" in the system
7
7
  USER_DATA_ID = ENV["USER_DATA_ID"]
8
8
 
9
- # there is a valid "team" in the system
10
- TEAM_DATA_ID = ENV["TEAM_DATA_ID"]
9
+ # there is a valid "dd_team" in the system
10
+ DD_TEAM_DATA_ID = ENV["DD_TEAM_DATA_ID"]
11
11
 
12
12
  body = DatadogAPIClient::V2::ScheduleCreateRequest.new({
13
13
  data: DatadogAPIClient::V2::ScheduleCreateRequestData.new({
@@ -49,7 +49,7 @@ body = DatadogAPIClient::V2::ScheduleCreateRequest.new({
49
49
  teams: DatadogAPIClient::V2::ScheduleCreateRequestDataRelationshipsTeams.new({
50
50
  data: [
51
51
  DatadogAPIClient::V2::ScheduleCreateRequestDataRelationshipsTeamsDataItems.new({
52
- id: TEAM_DATA_ID,
52
+ id: DD_TEAM_DATA_ID,
53
53
  type: DatadogAPIClient::V2::ScheduleCreateRequestDataRelationshipsTeamsDataItemsType::TEAMS,
54
54
  }),
55
55
  ],
@@ -0,0 +1,8 @@
1
+ # Delete on-call escalation policy returns "No Content" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::On - CallAPI.new
5
+
6
+ # there is a valid "escalation_policy" in the system
7
+ ESCALATION_POLICY_DATA_ID = ENV["ESCALATION_POLICY_DATA_ID"]
8
+ api_instance.delete_on_call_escalation_policy(ESCALATION_POLICY_DATA_ID)
@@ -0,0 +1,8 @@
1
+ # Get on-call escalation policy returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::On - CallAPI.new
5
+
6
+ # there is a valid "escalation_policy" in the system
7
+ ESCALATION_POLICY_DATA_ID = ENV["ESCALATION_POLICY_DATA_ID"]
8
+ p api_instance.get_on_call_escalation_policy(ESCALATION_POLICY_DATA_ID)
@@ -0,0 +1,51 @@
1
+ # Update on-call escalation policy returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::On - CallAPI.new
5
+
6
+ # there is a valid "escalation_policy" in the system
7
+ ESCALATION_POLICY_DATA_ID = ENV["ESCALATION_POLICY_DATA_ID"]
8
+ ESCALATION_POLICY_DATA_RELATIONSHIPS_STEPS_DATA_0_ID = ENV["ESCALATION_POLICY_DATA_RELATIONSHIPS_STEPS_DATA_0_ID"]
9
+
10
+ # there is a valid "user" in the system
11
+ USER_DATA_ID = ENV["USER_DATA_ID"]
12
+
13
+ # there is a valid "dd_team" in the system
14
+ DD_TEAM_DATA_ID = ENV["DD_TEAM_DATA_ID"]
15
+
16
+ body = DatadogAPIClient::V2::EscalationPolicyUpdateRequest.new({
17
+ data: DatadogAPIClient::V2::EscalationPolicyUpdateRequestData.new({
18
+ attributes: DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataAttributes.new({
19
+ description: "Example-On-Call",
20
+ name: "Example-On-Call-updated",
21
+ resolve_page_on_policy_end: false,
22
+ retries: 0,
23
+ steps: [
24
+ DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataAttributesStepsItems.new({
25
+ assignment: DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataAttributesStepsItemsAssignment::DEFAULT,
26
+ escalate_after_seconds: 3600,
27
+ id: ESCALATION_POLICY_DATA_RELATIONSHIPS_STEPS_DATA_0_ID,
28
+ targets: [
29
+ DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataAttributesStepsItemsTargetsItems.new({
30
+ id: USER_DATA_ID,
31
+ type: DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataAttributesStepsItemsTargetsItemsType::USERS,
32
+ }),
33
+ ],
34
+ }),
35
+ ],
36
+ }),
37
+ id: ESCALATION_POLICY_DATA_ID,
38
+ relationships: DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataRelationships.new({
39
+ teams: DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataRelationshipsTeams.new({
40
+ data: [
41
+ DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataRelationshipsTeamsDataItems.new({
42
+ id: DD_TEAM_DATA_ID,
43
+ type: DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataRelationshipsTeamsDataItemsType::TEAMS,
44
+ }),
45
+ ],
46
+ }),
47
+ }),
48
+ type: DatadogAPIClient::V2::EscalationPolicyUpdateRequestDataType::POLICIES,
49
+ }),
50
+ })
51
+ p api_instance.update_on_call_escalation_policy(ESCALATION_POLICY_DATA_ID, body)
@@ -10,8 +10,8 @@ SCHEDULE_DATA_RELATIONSHIPS_LAYERS_DATA_0_ID = ENV["SCHEDULE_DATA_RELATIONSHIPS_
10
10
  # there is a valid "user" in the system
11
11
  USER_DATA_ID = ENV["USER_DATA_ID"]
12
12
 
13
- # there is a valid "team" in the system
14
- TEAM_DATA_ID = ENV["TEAM_DATA_ID"]
13
+ # there is a valid "dd_team" in the system
14
+ DD_TEAM_DATA_ID = ENV["DD_TEAM_DATA_ID"]
15
15
 
16
16
  body = DatadogAPIClient::V2::ScheduleUpdateRequest.new({
17
17
  data: DatadogAPIClient::V2::ScheduleUpdateRequestData.new({
@@ -56,7 +56,7 @@ body = DatadogAPIClient::V2::ScheduleUpdateRequest.new({
56
56
  teams: DatadogAPIClient::V2::ScheduleUpdateRequestDataRelationshipsTeams.new({
57
57
  data: [
58
58
  DatadogAPIClient::V2::ScheduleUpdateRequestDataRelationshipsTeamsDataItems.new({
59
- id: TEAM_DATA_ID,
59
+ id: DD_TEAM_DATA_ID,
60
60
  type: DatadogAPIClient::V2::ScheduleUpdateRequestDataRelationshipsTeamsDataItemsType::TEAMS,
61
61
  }),
62
62
  ],
@@ -0,0 +1,30 @@
1
+ # Create a custom framework returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
5
+
6
+ body = DatadogAPIClient::V2::CreateCustomFrameworkRequest.new({
7
+ data: DatadogAPIClient::V2::CustomFrameworkData.new({
8
+ type: DatadogAPIClient::V2::CustomFrameworkType::CUSTOM_FRAMEWORK,
9
+ attributes: DatadogAPIClient::V2::CustomFrameworkDataAttributes.new({
10
+ name: "name",
11
+ handle: "create-framework-new",
12
+ version: "10",
13
+ icon_url: "test-url",
14
+ requirements: [
15
+ DatadogAPIClient::V2::CustomFrameworkRequirement.new({
16
+ name: "requirement",
17
+ controls: [
18
+ DatadogAPIClient::V2::CustomFrameworkControl.new({
19
+ name: "control",
20
+ rules_id: [
21
+ "def-000-be9",
22
+ ],
23
+ }),
24
+ ],
25
+ }),
26
+ ],
27
+ }),
28
+ }),
29
+ })
30
+ p api_instance.create_custom_framework(body)
@@ -0,0 +1,5 @@
1
+ # Delete a custom framework returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
5
+ p api_instance.delete_custom_framework("create-framework-new", "10")
@@ -0,0 +1,5 @@
1
+ # Get a custom framework returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
5
+ p api_instance.get_custom_framework("create-framework-new", "10")
@@ -0,0 +1,30 @@
1
+ # Update a custom framework returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::SecurityMonitoringAPI.new
5
+
6
+ body = DatadogAPIClient::V2::UpdateCustomFrameworkRequest.new({
7
+ data: DatadogAPIClient::V2::CustomFrameworkData.new({
8
+ type: DatadogAPIClient::V2::CustomFrameworkType::CUSTOM_FRAMEWORK,
9
+ attributes: DatadogAPIClient::V2::CustomFrameworkDataAttributes.new({
10
+ name: "name",
11
+ handle: "create-framework-new",
12
+ version: "10",
13
+ icon_url: "test-url",
14
+ requirements: [
15
+ DatadogAPIClient::V2::CustomFrameworkRequirement.new({
16
+ name: "requirement",
17
+ controls: [
18
+ DatadogAPIClient::V2::CustomFrameworkControl.new({
19
+ name: "control",
20
+ rules_id: [
21
+ "def-000-be9",
22
+ ],
23
+ }),
24
+ ],
25
+ }),
26
+ ],
27
+ }),
28
+ }),
29
+ })
30
+ p api_instance.update_custom_framework("create-framework-new", "10", body)
@@ -194,6 +194,19 @@ module DatadogAPIClient
194
194
  "v2.get_open_api": false,
195
195
  "v2.list_apis": false,
196
196
  "v2.update_open_api": false,
197
+ "v2.cancel_historical_job": false,
198
+ "v2.convert_job_result_to_signal": false,
199
+ "v2.delete_historical_job": false,
200
+ "v2.get_finding": false,
201
+ "v2.get_historical_job": false,
202
+ "v2.get_rule_version_history": false,
203
+ "v2.get_sbom": false,
204
+ "v2.list_findings": false,
205
+ "v2.list_historical_jobs": false,
206
+ "v2.list_vulnerabilities": false,
207
+ "v2.list_vulnerable_assets": false,
208
+ "v2.mute_findings": false,
209
+ "v2.run_historical_job": false,
197
210
  "v2.cancel_data_deletion_request": false,
198
211
  "v2.create_data_deletion_request": false,
199
212
  "v2.get_data_deletion_requests": false,
@@ -230,24 +243,18 @@ module DatadogAPIClient
230
243
  "v2.list_aws_namespaces": false,
231
244
  "v2.update_aws_account": false,
232
245
  "v2.list_aws_logs_services": false,
246
+ "v2.create_monitor_notification_rule": false,
247
+ "v2.delete_monitor_notification_rule": false,
248
+ "v2.get_monitor_notification_rule": false,
249
+ "v2.get_monitor_notification_rules": false,
250
+ "v2.update_monitor_notification_rule": false,
233
251
  "v2.get_aggregated_connections": false,
234
- "v2.cancel_historical_job": false,
235
- "v2.convert_job_result_to_signal": false,
236
- "v2.delete_historical_job": false,
237
- "v2.get_finding": false,
238
- "v2.get_historical_job": false,
239
- "v2.get_rule_version_history": false,
240
- "v2.get_sbom": false,
241
- "v2.list_findings": false,
242
- "v2.list_historical_jobs": false,
243
- "v2.list_vulnerabilities": false,
244
- "v2.list_vulnerable_assets": false,
245
- "v2.mute_findings": false,
246
- "v2.run_historical_job": false,
247
252
  "v2.create_pipeline": false,
248
253
  "v2.delete_pipeline": false,
249
254
  "v2.get_pipeline": false,
255
+ "v2.list_pipelines": false,
250
256
  "v2.update_pipeline": false,
257
+ "v2.validate_pipeline": false,
251
258
  "v2.create_scorecard_outcomes_batch": false,
252
259
  "v2.create_scorecard_rule": false,
253
260
  "v2.delete_scorecard_rule": false,