datadog_api_client 2.30.0 → 2.31.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 (301) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +338 -22
  4. data/.generator/schemas/v2/openapi.yaml +3672 -98
  5. data/CHANGELOG.md +37 -0
  6. data/examples/v1/dashboards/CreateDashboard_1490099434.rb +65 -0
  7. data/examples/v1/dashboards/CreateDashboard_3520534424.rb +61 -0
  8. data/examples/v1/logs-indexes/DeleteLogsIndex.rb +5 -0
  9. data/examples/v1/logs-pipelines/CreateLogsPipeline_2707101123.rb +23 -0
  10. data/examples/v1/synthetics/CreateSyntheticsAPITest_1279271422.rb +1 -0
  11. data/examples/v2/agentless-scanning/CreateAwsOnDemandTask.rb +14 -0
  12. data/examples/v2/agentless-scanning/CreateAwsScanOptions.rb +18 -0
  13. data/examples/v2/agentless-scanning/DeleteAwsScanOptions.rb +5 -0
  14. data/examples/v2/agentless-scanning/GetAwsOnDemandTask.rb +5 -0
  15. data/examples/v2/agentless-scanning/ListAwsOnDemandTasks.rb +5 -0
  16. data/examples/v2/agentless-scanning/UpdateAwsScanOptions.rb +17 -0
  17. data/examples/v2/app-builder/CreateApp.rb +121 -13
  18. data/examples/v2/app-builder/DeleteApp.rb +0 -3
  19. data/examples/v2/app-builder/DeleteApps.rb +0 -3
  20. data/examples/v2/app-builder/GetApp.rb +0 -3
  21. data/examples/v2/app-builder/ListApps.rb +0 -3
  22. data/examples/v2/app-builder/PublishApp.rb +0 -3
  23. data/examples/v2/app-builder/UnpublishApp.rb +0 -3
  24. data/examples/v2/app-builder/UpdateApp.rb +0 -3
  25. data/examples/v2/application-security/CreateApplicationSecurityWafCustomRule.rb +55 -0
  26. data/examples/v2/application-security/CreateApplicationSecurityWafExclusionFilter.rb +33 -0
  27. data/examples/v2/application-security/DeleteApplicationSecurityWafCustomRule.rb +5 -0
  28. data/examples/v2/application-security/DeleteApplicationSecurityWafExclusionFilter.rb +8 -0
  29. data/examples/v2/application-security/GetApplicationSecurityWafCustomRule.rb +5 -0
  30. data/examples/v2/application-security/GetApplicationSecurityWafExclusionFilter.rb +8 -0
  31. data/examples/v2/application-security/ListApplicationSecurityWAFCustomRules.rb +5 -0
  32. data/examples/v2/application-security/ListApplicationSecurityWafExclusionFilters.rb +5 -0
  33. data/examples/v2/application-security/UpdateApplicationSecurityWafCustomRule.rb +46 -0
  34. data/examples/v2/application-security/UpdateApplicationSecurityWafExclusionFilter.rb +22 -0
  35. data/examples/v2/rum-retention-filters/CreateRetentionFilter.rb +21 -0
  36. data/examples/v2/rum-retention-filters/DeleteRetentionFilter.rb +5 -0
  37. data/examples/v2/rum-retention-filters/GetRetentionFilter.rb +5 -0
  38. data/examples/v2/rum-retention-filters/ListRetentionFilters.rb +5 -0
  39. data/examples/v2/rum-retention-filters/OrderRetentionFilters.rb +22 -0
  40. data/examples/v2/rum-retention-filters/UpdateRetentionFilter.rb +19 -0
  41. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_1965169892.rb +50 -0
  42. data/examples/v2/security-monitoring/CreateSignalNotificationRule.rb +1 -1
  43. data/examples/v2/security-monitoring/CreateVulnerabilityNotificationRule.rb +1 -1
  44. data/examples/v2/security-monitoring/DeleteSignalNotificationRule.rb +1 -1
  45. data/examples/v2/security-monitoring/DeleteVulnerabilityNotificationRule.rb +1 -1
  46. data/examples/v2/security-monitoring/GetRuleVersionHistory.rb +8 -0
  47. data/examples/v2/security-monitoring/GetRuleVersionHistory_2467565841.rb +11 -0
  48. data/examples/v2/security-monitoring/GetSBOM.rb +3 -0
  49. data/examples/v2/security-monitoring/GetSignalNotificationRule.rb +1 -1
  50. data/examples/v2/security-monitoring/GetSignalNotificationRules.rb +1 -1
  51. data/examples/v2/security-monitoring/GetVulnerabilityNotificationRule.rb +1 -1
  52. data/examples/v2/security-monitoring/GetVulnerabilityNotificationRules.rb +1 -1
  53. data/examples/v2/security-monitoring/ListVulnerabilities.rb +3 -0
  54. data/examples/v2/security-monitoring/ListVulnerableAssets.rb +3 -0
  55. data/examples/v2/security-monitoring/PatchSignalNotificationRule.rb +1 -1
  56. data/examples/v2/security-monitoring/PatchVulnerabilityNotificationRule.rb +1 -1
  57. data/examples/v2/software-catalog/UpsertCatalogEntity.rb +5 -1
  58. data/examples/v2/workflow-automation/CreateWorkflow.rb +95 -0
  59. data/examples/v2/workflow-automation/DeleteWorkflow.rb +8 -0
  60. data/examples/v2/workflow-automation/GetWorkflow.rb +8 -0
  61. data/examples/v2/workflow-automation/UpdateWorkflow.rb +99 -0
  62. data/lib/datadog_api_client/configuration.rb +4 -8
  63. data/lib/datadog_api_client/inflector.rb +188 -1
  64. data/lib/datadog_api_client/v1/api/logs_indexes_api.rb +66 -0
  65. data/lib/datadog_api_client/v1/api/monitors_api.rb +1 -1
  66. data/lib/datadog_api_client/v1/models/check_can_delete_monitor_response_data.rb +1 -1
  67. data/lib/datadog_api_client/v1/models/check_can_delete_slo_response_data.rb +1 -1
  68. data/lib/datadog_api_client/v1/models/dashboard_share_type.rb +1 -0
  69. data/lib/datadog_api_client/v1/models/logs_processor.rb +2 -1
  70. data/lib/datadog_api_client/v1/models/logs_span_remapper.rb +160 -0
  71. data/lib/datadog_api_client/v1/models/logs_span_remapper_type.rb +26 -0
  72. data/lib/datadog_api_client/v1/models/monitor_options_scheduling_options_evaluation_window.rb +14 -4
  73. data/lib/datadog_api_client/v1/models/monitor_search_result.rb +13 -1
  74. data/lib/datadog_api_client/v1/models/number_format_unit.rb +63 -0
  75. data/lib/datadog_api_client/v1/models/number_format_unit_canonical.rb +125 -0
  76. data/lib/datadog_api_client/v1/models/number_format_unit_custom.rb +137 -0
  77. data/lib/datadog_api_client/v1/models/number_format_unit_custom_type.rb +26 -0
  78. data/lib/datadog_api_client/v1/models/number_format_unit_scale.rb +115 -0
  79. data/lib/datadog_api_client/v1/models/number_format_unit_scale_type.rb +26 -0
  80. data/lib/datadog_api_client/v1/models/shared_dashboard.rb +85 -9
  81. data/lib/datadog_api_client/v1/models/shared_dashboard_invitees_items.rb +151 -0
  82. data/lib/datadog_api_client/v1/models/shared_dashboard_status.rb +27 -0
  83. data/lib/datadog_api_client/v1/models/shared_dashboard_update_request.rb +68 -3
  84. data/lib/datadog_api_client/v1/models/slo_correction_list_response.rb +1 -1
  85. data/lib/datadog_api_client/v1/models/synthetics_api_test_step.rb +11 -1
  86. data/lib/datadog_api_client/v1/models/synthetics_browser_variable_type.rb +0 -1
  87. data/lib/datadog_api_client/v1/models/synthetics_ci_test_body.rb +1 -1
  88. data/lib/datadog_api_client/v1/models/synthetics_mobile_step_params_element_user_locator.rb +1 -1
  89. data/lib/datadog_api_client/v1/models/synthetics_trigger_body.rb +1 -1
  90. data/lib/datadog_api_client/v1/models/table_widget_cell_display_mode.rb +1 -0
  91. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +3 -3
  92. data/lib/datadog_api_client/v1/models/viewing_preferences.rb +115 -0
  93. data/lib/datadog_api_client/v1/models/viewing_preferences_theme.rb +28 -0
  94. data/lib/datadog_api_client/v1/models/widget_formula.rb +21 -1
  95. data/lib/datadog_api_client/v1/models/widget_formula_cell_display_mode_options.rb +115 -0
  96. data/lib/datadog_api_client/v1/models/widget_formula_cell_display_mode_options_trend_type.rb +28 -0
  97. data/lib/datadog_api_client/v1/models/widget_formula_cell_display_mode_options_y_scale.rb +27 -0
  98. data/lib/datadog_api_client/v1/models/widget_number_format.rb +123 -0
  99. data/lib/datadog_api_client/v2/api/agentless_scanning_api.rb +398 -2
  100. data/lib/datadog_api_client/v2/api/api_management_api.rb +15 -0
  101. data/lib/datadog_api_client/v2/api/app_builder_api.rb +0 -48
  102. data/lib/datadog_api_client/v2/api/application_security_api.rb +689 -0
  103. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +1 -1
  104. data/lib/datadog_api_client/v2/api/confluent_cloud_api.rb +8 -8
  105. data/lib/datadog_api_client/v2/api/metrics_api.rb +3 -1
  106. data/lib/datadog_api_client/v2/api/rum_retention_filters_api.rb +455 -0
  107. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +116 -23
  108. data/lib/datadog_api_client/v2/api/software_catalog_api.rb +1 -2
  109. data/lib/datadog_api_client/v2/api/workflow_automation_api.rb +269 -0
  110. data/lib/datadog_api_client/v2/models/account_filtering_config.rb +129 -0
  111. data/lib/datadog_api_client/v2/models/action_query.rb +198 -0
  112. data/lib/datadog_api_client/v2/models/action_query_condition.rb +63 -0
  113. data/lib/datadog_api_client/v2/models/action_query_debounce_in_ms.rb +63 -0
  114. data/lib/datadog_api_client/v2/models/action_query_mocked_outputs.rb +63 -0
  115. data/lib/datadog_api_client/v2/models/action_query_mocked_outputs_enabled.rb +63 -0
  116. data/lib/datadog_api_client/v2/models/action_query_mocked_outputs_object.rb +133 -0
  117. data/lib/datadog_api_client/v2/models/action_query_only_trigger_manually.rb +63 -0
  118. data/lib/datadog_api_client/v2/models/action_query_polling_interval_in_ms.rb +63 -0
  119. data/lib/datadog_api_client/v2/models/action_query_properties.rb +203 -0
  120. data/lib/datadog_api_client/v2/models/action_query_requires_confirmation.rb +63 -0
  121. data/lib/datadog_api_client/v2/models/action_query_show_toast_on_error.rb +63 -0
  122. data/lib/datadog_api_client/v2/models/action_query_spec.rb +63 -0
  123. data/lib/datadog_api_client/v2/models/action_query_spec_connection_group.rb +117 -0
  124. data/lib/datadog_api_client/v2/models/action_query_spec_inputs.rb +63 -0
  125. data/lib/datadog_api_client/v2/models/action_query_spec_object.rb +153 -0
  126. data/lib/datadog_api_client/v2/models/action_query_type.rb +26 -0
  127. data/lib/datadog_api_client/v2/models/annotation.rb +165 -0
  128. data/lib/datadog_api_client/v2/models/annotation_display.rb +105 -0
  129. data/lib/datadog_api_client/v2/models/annotation_display_bounds.rb +135 -0
  130. data/lib/datadog_api_client/v2/models/annotation_markdown_text_annotation.rb +105 -0
  131. data/lib/datadog_api_client/v2/models/api_trigger.rb +105 -0
  132. data/lib/datadog_api_client/v2/models/api_trigger_wrapper.rb +135 -0
  133. data/lib/datadog_api_client/v2/models/app_trigger_wrapper.rb +135 -0
  134. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_action.rb +115 -0
  135. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_action_action.rb +27 -0
  136. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_action_parameters.rb +115 -0
  137. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_attributes.rb +253 -0
  138. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_condition.rb +144 -0
  139. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_condition_input.rb +135 -0
  140. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_condition_input_address.rb +46 -0
  141. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_condition_operator.rb +36 -0
  142. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_condition_options.rb +115 -0
  143. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_condition_parameters.rb +178 -0
  144. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_create_attributes.rb +243 -0
  145. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_create_data.rb +144 -0
  146. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_create_request.rb +123 -0
  147. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_data.rb +125 -0
  148. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_list_response.rb +107 -0
  149. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_metadata.rb +155 -0
  150. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_response.rb +105 -0
  151. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_scope.rb +144 -0
  152. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_tags.rb +145 -0
  153. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_tags_category.rb +28 -0
  154. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_type.rb +26 -0
  155. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_update_attributes.rb +243 -0
  156. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_update_data.rb +144 -0
  157. data/lib/datadog_api_client/v2/models/application_security_waf_custom_rule_update_request.rb +123 -0
  158. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_attributes.rb +213 -0
  159. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_create_attributes.rb +212 -0
  160. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_create_data.rb +144 -0
  161. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_create_request.rb +123 -0
  162. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_metadata.rb +155 -0
  163. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_on_match.rb +26 -0
  164. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_resource.rb +125 -0
  165. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_response.rb +105 -0
  166. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_rules_target.rb +115 -0
  167. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_rules_target_tags.rb +115 -0
  168. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_scope.rb +115 -0
  169. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_type.rb +26 -0
  170. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_update_attributes.rb +212 -0
  171. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_update_data.rb +144 -0
  172. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filter_update_request.rb +123 -0
  173. data/lib/datadog_api_client/v2/models/application_security_waf_exclusion_filters_response.rb +107 -0
  174. data/lib/datadog_api_client/v2/models/aws_cur_config_attributes.rb +11 -1
  175. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request_attributes.rb +12 -20
  176. data/lib/datadog_api_client/v2/models/aws_cur_config_post_request_attributes.rb +11 -1
  177. data/lib/datadog_api_client/v2/models/aws_on_demand_attributes.rb +138 -0
  178. data/lib/datadog_api_client/v2/models/aws_on_demand_create_attributes.rb +123 -0
  179. data/lib/datadog_api_client/v2/models/aws_on_demand_create_data.rb +144 -0
  180. data/lib/datadog_api_client/v2/models/aws_on_demand_create_request.rb +123 -0
  181. data/lib/datadog_api_client/v2/models/aws_on_demand_data.rb +125 -0
  182. data/lib/datadog_api_client/v2/models/aws_on_demand_list_response.rb +107 -0
  183. data/lib/datadog_api_client/v2/models/aws_on_demand_response.rb +105 -0
  184. data/lib/datadog_api_client/v2/models/aws_on_demand_type.rb +26 -0
  185. data/lib/datadog_api_client/v2/models/aws_scan_options_create_attributes.rb +186 -0
  186. data/lib/datadog_api_client/v2/models/aws_scan_options_create_data.rb +165 -0
  187. data/lib/datadog_api_client/v2/models/aws_scan_options_create_request.rb +123 -0
  188. data/lib/datadog_api_client/v2/models/aws_scan_options_list_response.rb +107 -0
  189. data/lib/datadog_api_client/v2/models/aws_scan_options_response.rb +4 -6
  190. data/lib/datadog_api_client/v2/models/aws_scan_options_update_attributes.rb +135 -0
  191. data/lib/datadog_api_client/v2/models/aws_scan_options_update_data.rb +165 -0
  192. data/lib/datadog_api_client/v2/models/aws_scan_options_update_request.rb +123 -0
  193. data/lib/datadog_api_client/v2/models/case_trigger.rb +105 -0
  194. data/lib/datadog_api_client/v2/models/case_trigger_wrapper.rb +135 -0
  195. data/lib/datadog_api_client/v2/models/change_event_trigger_wrapper.rb +135 -0
  196. data/lib/datadog_api_client/v2/models/completion_condition.rb +154 -0
  197. data/lib/datadog_api_client/v2/models/completion_condition_operator.rb +37 -0
  198. data/lib/datadog_api_client/v2/models/completion_gate.rb +144 -0
  199. data/lib/datadog_api_client/v2/models/connection.rb +144 -0
  200. data/lib/datadog_api_client/v2/models/connection_env.rb +147 -0
  201. data/lib/datadog_api_client/v2/models/connection_env_env.rb +26 -0
  202. data/lib/datadog_api_client/v2/models/connection_group.rb +167 -0
  203. data/lib/datadog_api_client/v2/models/create_workflow_request.rb +123 -0
  204. data/lib/datadog_api_client/v2/models/create_workflow_response.rb +123 -0
  205. data/lib/datadog_api_client/v2/models/dashboard_trigger_wrapper.rb +135 -0
  206. data/lib/datadog_api_client/v2/models/data_transform.rb +186 -0
  207. data/lib/datadog_api_client/v2/models/data_transform_properties.rb +105 -0
  208. data/lib/datadog_api_client/v2/models/{query_type.rb → data_transform_type.rb} +2 -4
  209. data/lib/datadog_api_client/v2/models/error_handler.rb +144 -0
  210. data/lib/datadog_api_client/v2/models/fastly_service.rb +1 -1
  211. data/lib/datadog_api_client/v2/models/get_rule_version_history_data.rb +125 -0
  212. data/lib/datadog_api_client/v2/models/get_rule_version_history_data_type.rb +26 -0
  213. data/lib/datadog_api_client/v2/models/get_rule_version_history_response.rb +105 -0
  214. data/lib/datadog_api_client/v2/models/get_workflow_response.rb +105 -0
  215. data/lib/datadog_api_client/v2/models/github_webhook_trigger.rb +105 -0
  216. data/lib/datadog_api_client/v2/models/github_webhook_trigger_wrapper.rb +135 -0
  217. data/lib/datadog_api_client/v2/models/incident_trigger.rb +105 -0
  218. data/lib/datadog_api_client/v2/models/incident_trigger_wrapper.rb +135 -0
  219. data/lib/datadog_api_client/v2/models/input_schema.rb +107 -0
  220. data/lib/datadog_api_client/v2/models/input_schema_parameters.rb +174 -0
  221. data/lib/datadog_api_client/v2/models/input_schema_parameters_type.rb +33 -0
  222. data/lib/datadog_api_client/v2/models/job_definition.rb +13 -1
  223. data/lib/datadog_api_client/v2/models/logs_archive_destination_s3.rb +11 -1
  224. data/lib/datadog_api_client/v2/models/logs_archive_storage_class_s3_type.rb +30 -0
  225. data/lib/datadog_api_client/v2/models/metric_bulk_tag_config_create_attributes.rb +50 -1
  226. data/lib/datadog_api_client/v2/models/monitor_trigger.rb +105 -0
  227. data/lib/datadog_api_client/v2/models/monitor_trigger_wrapper.rb +135 -0
  228. data/lib/datadog_api_client/v2/models/outbound_edge.rb +144 -0
  229. data/lib/datadog_api_client/v2/models/output_schema.rb +107 -0
  230. data/lib/datadog_api_client/v2/models/output_schema_parameters.rb +184 -0
  231. data/lib/datadog_api_client/v2/models/output_schema_parameters_type.rb +33 -0
  232. data/lib/datadog_api_client/v2/models/parameter.rb +144 -0
  233. data/lib/datadog_api_client/v2/models/query.rb +37 -160
  234. data/lib/datadog_api_client/v2/models/readiness_gate.rb +123 -0
  235. data/lib/datadog_api_client/v2/models/readiness_gate_threshold_type.rb +27 -0
  236. data/lib/datadog_api_client/v2/models/retry_strategy.rb +133 -0
  237. data/lib/datadog_api_client/v2/models/retry_strategy_kind.rb +26 -0
  238. data/lib/datadog_api_client/v2/models/retry_strategy_linear.rb +144 -0
  239. data/lib/datadog_api_client/v2/models/rule_types_items.rb +1 -1
  240. data/lib/datadog_api_client/v2/models/rule_version_history.rb +133 -0
  241. data/lib/datadog_api_client/v2/models/rule_version_update.rb +125 -0
  242. data/lib/datadog_api_client/v2/models/rule_version_update_type.rb +28 -0
  243. data/lib/datadog_api_client/v2/models/rule_versions.rb +117 -0
  244. data/lib/datadog_api_client/v2/models/rum_retention_filter_attributes.rb +167 -0
  245. data/lib/datadog_api_client/v2/models/rum_retention_filter_create_attributes.rb +193 -0
  246. data/lib/datadog_api_client/v2/models/rum_retention_filter_create_data.rb +154 -0
  247. data/lib/datadog_api_client/v2/models/rum_retention_filter_create_request.rb +123 -0
  248. data/lib/datadog_api_client/v2/models/rum_retention_filter_data.rb +135 -0
  249. data/lib/datadog_api_client/v2/models/rum_retention_filter_event_type.rb +32 -0
  250. data/lib/datadog_api_client/v2/models/rum_retention_filter_meta.rb +105 -0
  251. data/lib/datadog_api_client/v2/models/rum_retention_filter_response.rb +105 -0
  252. data/lib/datadog_api_client/v2/models/rum_retention_filter_source.rb +29 -0
  253. data/lib/datadog_api_client/v2/models/rum_retention_filter_type.rb +26 -0
  254. data/lib/datadog_api_client/v2/models/rum_retention_filter_update_attributes.rb +167 -0
  255. data/lib/datadog_api_client/v2/models/rum_retention_filter_update_data.rb +175 -0
  256. data/lib/datadog_api_client/v2/models/rum_retention_filter_update_request.rb +123 -0
  257. data/lib/datadog_api_client/v2/models/rum_retention_filters_order_data.rb +144 -0
  258. data/lib/datadog_api_client/v2/models/rum_retention_filters_order_request.rb +108 -0
  259. data/lib/datadog_api_client/v2/models/rum_retention_filters_order_response.rb +107 -0
  260. data/lib/datadog_api_client/v2/models/rum_retention_filters_response.rb +107 -0
  261. data/lib/datadog_api_client/v2/models/schedule_trigger.rb +123 -0
  262. data/lib/datadog_api_client/v2/models/schedule_trigger_wrapper.rb +135 -0
  263. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case.rb +13 -1
  264. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action.rb +115 -0
  265. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_options.rb +123 -0
  266. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_action_type.rb +27 -0
  267. data/lib/datadog_api_client/v2/models/security_monitoring_rule_case_create.rb +13 -1
  268. data/lib/datadog_api_client/v2/models/security_monitoring_rule_evaluation_window.rb +4 -0
  269. data/lib/datadog_api_client/v2/models/security_monitoring_rule_keep_alive.rb +2 -0
  270. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +13 -1
  271. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +13 -1
  272. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_payload.rb +13 -1
  273. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +13 -1
  274. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_test_payload.rb +13 -1
  275. data/lib/datadog_api_client/v2/models/security_trigger.rb +105 -0
  276. data/lib/datadog_api_client/v2/models/security_trigger_wrapper.rb +135 -0
  277. data/lib/datadog_api_client/v2/models/selectors.rb +1 -1
  278. data/lib/datadog_api_client/v2/models/slack_trigger_wrapper.rb +135 -0
  279. data/lib/datadog_api_client/v2/models/spec.rb +173 -0
  280. data/lib/datadog_api_client/v2/models/state_variable.rb +186 -0
  281. data/lib/datadog_api_client/v2/models/state_variable_properties.rb +105 -0
  282. data/lib/datadog_api_client/v2/models/state_variable_type.rb +26 -0
  283. data/lib/datadog_api_client/v2/models/step.rb +220 -0
  284. data/lib/datadog_api_client/v2/models/step_display.rb +105 -0
  285. data/lib/datadog_api_client/v2/models/step_display_bounds.rb +115 -0
  286. data/lib/datadog_api_client/v2/models/trigger.rb +73 -0
  287. data/lib/datadog_api_client/v2/models/trigger_rate_limit.rb +115 -0
  288. data/lib/datadog_api_client/v2/models/update_workflow_request.rb +123 -0
  289. data/lib/datadog_api_client/v2/models/update_workflow_response.rb +105 -0
  290. data/lib/datadog_api_client/v2/models/workflow_data.rb +164 -0
  291. data/lib/datadog_api_client/v2/models/workflow_data_attributes.rb +206 -0
  292. data/lib/datadog_api_client/v2/models/workflow_data_relationships.rb +115 -0
  293. data/lib/datadog_api_client/v2/models/workflow_data_type.rb +26 -0
  294. data/lib/datadog_api_client/v2/models/workflow_data_update.rb +164 -0
  295. data/lib/datadog_api_client/v2/models/workflow_data_update_attributes.rb +177 -0
  296. data/lib/datadog_api_client/v2/models/workflow_trigger_wrapper.rb +135 -0
  297. data/lib/datadog_api_client/v2/models/workflow_user_relationship.rb +105 -0
  298. data/lib/datadog_api_client/v2/models/workflow_user_relationship_data.rb +144 -0
  299. data/lib/datadog_api_client/v2/models/workflow_user_relationship_type.rb +26 -0
  300. data/lib/datadog_api_client/version.rb +1 -1
  301. metadata +223 -3
data/CHANGELOG.md CHANGED
@@ -1,5 +1,42 @@
1
1
  # CHANGELOG
2
2
 
3
+ ## 2.31.0 / 2025-03-11
4
+
5
+ ### Fixed
6
+ * Remove `javascript` browser variable type by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2235
7
+ * Additional rules to inject openapi type by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2255
8
+ * Fix `ListCatalogEntity` pagination endpoint to use correct offset value by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2271
9
+ ### Added
10
+ * add new related_assets filter query parameter to the get a list of metrics V2 API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2200
11
+ * Add actions and groupSignalsBy field in detection rules API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2237
12
+ * Add Workflows CRUD Public API Endpoints by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2226
13
+ * Add endpoint to retrieve Security Monitoring rule version history by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2206
14
+ * Adds override_existing_configurations and include_actively_queried_configurations to bulk tag config endpoint by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2246
15
+ * Add `number_format` to each formula in widget by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2248
16
+ * Add `trend` support for `cell_display_mode` by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2245
17
+ * Add support for span id remapper in logs pipelines processors by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2256
18
+ * Add evaluation_window and keep_alive for Security monitoring rule by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2257
19
+ * Add `extractedValuesFromScript` to multistep API tests by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2261
20
+ * Update timezone for cumulative window by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2260
21
+ * Document Agentless AWS scan options routes by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2268
22
+ * Create types for app builder queries explicitly, remove experimental flag by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2239
23
+ * Document Agentless AWS on demand routes by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2272
24
+ * Add quality_issues to monitor schema on monitor search API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2274
25
+ * Introduce public v2 endpoints for Application Security by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2262
26
+ * Add delete log index to public API by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2273
27
+ * Add v2 endpoints for RUM retention filters. by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2270
28
+ * Added storage class information to the S3 archive destination by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2279
29
+ ### Changed
30
+ * Revert GetSBOM to `x-unstable` by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2240
31
+ * Update documentation with account filtering info for aws_cur_config endpoints by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2251
32
+ * Update sharing APIs to match server by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2259
33
+ * Update Vulnerabilities endpoints documentation by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2263
34
+ ### Deprecated
35
+ * Deprecate API management endpoints by @api-clients-generation-pipeline in https://github.com/DataDog/datadog-api-client-ruby/pull/2250
36
+
37
+
38
+ **Full Changelog**: https://github.com/DataDog/datadog-api-client-ruby/compare/v2.30.0...v2.31.0
39
+
3
40
  ## 2.30.0 / 2025-02-05
4
41
 
5
42
  ### Fixed
@@ -0,0 +1,65 @@
1
+ # Create a new dashboard with query_table widget and cell_display_mode is trend
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::Dashboard.new({
7
+ title: "Example-Dashboard",
8
+ description: "",
9
+ widgets: [
10
+ DatadogAPIClient::V1::Widget.new({
11
+ layout: DatadogAPIClient::V1::WidgetLayout.new({
12
+ x: 0,
13
+ y: 0,
14
+ width: 54,
15
+ height: 32,
16
+ }),
17
+ definition: DatadogAPIClient::V1::TableWidgetDefinition.new({
18
+ title: "",
19
+ title_size: "16",
20
+ title_align: DatadogAPIClient::V1::WidgetTextAlign::LEFT,
21
+ time: DatadogAPIClient::V1::WidgetLegacyLiveSpan.new({}),
22
+ type: DatadogAPIClient::V1::TableWidgetDefinitionType::QUERY_TABLE,
23
+ requests: [
24
+ DatadogAPIClient::V1::TableWidgetRequest.new({
25
+ queries: [
26
+ DatadogAPIClient::V1::FormulaAndFunctionMetricQueryDefinition.new({
27
+ data_source: DatadogAPIClient::V1::FormulaAndFunctionMetricDataSource::METRICS,
28
+ name: "query1",
29
+ query: "avg:system.cpu.user{*} by {host}",
30
+ aggregator: DatadogAPIClient::V1::FormulaAndFunctionMetricAggregation::AVG,
31
+ }),
32
+ ],
33
+ formulas: [
34
+ DatadogAPIClient::V1::WidgetFormula.new({
35
+ formula: "query1",
36
+ conditional_formats: [],
37
+ cell_display_mode: DatadogAPIClient::V1::TableWidgetCellDisplayMode::TREND,
38
+ cell_display_mode_options: DatadogAPIClient::V1::WidgetFormulaCellDisplayModeOptions.new({
39
+ trend_type: DatadogAPIClient::V1::WidgetFormulaCellDisplayModeOptionsTrendType::LINE,
40
+ y_scale: DatadogAPIClient::V1::WidgetFormulaCellDisplayModeOptionsYScale::SHARED,
41
+ }),
42
+ }),
43
+ ],
44
+ sort: DatadogAPIClient::V1::WidgetSortBy.new({
45
+ count: 500,
46
+ order_by: [
47
+ DatadogAPIClient::V1::WidgetFormulaSort.new({
48
+ type: DatadogAPIClient::V1::FormulaType::FORMULA,
49
+ index: 0,
50
+ order: DatadogAPIClient::V1::WidgetSort::DESCENDING,
51
+ }),
52
+ ],
53
+ }),
54
+ response_format: DatadogAPIClient::V1::FormulaAndFunctionResponseFormat::SCALAR,
55
+ }),
56
+ ],
57
+ has_search_bar: DatadogAPIClient::V1::TableWidgetHasSearchBar::AUTO,
58
+ }),
59
+ }),
60
+ ],
61
+ template_variables: [],
62
+ layout_type: DatadogAPIClient::V1::DashboardLayoutType::FREE,
63
+ notify_list: [],
64
+ })
65
+ p api_instance.create_dashboard(body)
@@ -0,0 +1,61 @@
1
+ # Create a new dashboard with timeseries widget with custom_unit
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::DashboardsAPI.new
5
+
6
+ body = DatadogAPIClient::V1::Dashboard.new({
7
+ title: "Example-Dashboard",
8
+ description: "",
9
+ widgets: [
10
+ DatadogAPIClient::V1::Widget.new({
11
+ definition: DatadogAPIClient::V1::TimeseriesWidgetDefinition.new({
12
+ title: "",
13
+ title_size: "16",
14
+ title_align: DatadogAPIClient::V1::WidgetTextAlign::LEFT,
15
+ show_legend: true,
16
+ legend_layout: DatadogAPIClient::V1::TimeseriesWidgetLegendLayout::AUTO,
17
+ time: DatadogAPIClient::V1::WidgetLegacyLiveSpan.new({}),
18
+ type: DatadogAPIClient::V1::TimeseriesWidgetDefinitionType::TIMESERIES,
19
+ requests: [
20
+ DatadogAPIClient::V1::TimeseriesWidgetRequest.new({
21
+ formulas: [
22
+ DatadogAPIClient::V1::WidgetFormula.new({
23
+ formula: "query1",
24
+ number_format: DatadogAPIClient::V1::WidgetNumberFormat.new({
25
+ unit_scale: DatadogAPIClient::V1::NumberFormatUnitScale.new({
26
+ type: DatadogAPIClient::V1::NumberFormatUnitScaleType::CANONICAL_UNIT,
27
+ unit_name: "apdex",
28
+ }),
29
+ unit: DatadogAPIClient::V1::NumberFormatUnitCanonical.new({
30
+ type: DatadogAPIClient::V1::NumberFormatUnitScaleType::CANONICAL_UNIT,
31
+ unit_name: "fraction",
32
+ }),
33
+ }),
34
+ }),
35
+ ],
36
+ queries: [
37
+ DatadogAPIClient::V1::FormulaAndFunctionMetricQueryDefinition.new({
38
+ data_source: DatadogAPIClient::V1::FormulaAndFunctionMetricDataSource::METRICS,
39
+ name: "query1",
40
+ query: "avg:system.cpu.user{*}",
41
+ }),
42
+ ],
43
+ response_format: DatadogAPIClient::V1::FormulaAndFunctionResponseFormat::TIMESERIES,
44
+ display_type: DatadogAPIClient::V1::WidgetDisplayType::LINE,
45
+ }),
46
+ ],
47
+ }),
48
+ layout: DatadogAPIClient::V1::WidgetLayout.new({
49
+ x: 0,
50
+ y: 0,
51
+ width: 12,
52
+ height: 5,
53
+ }),
54
+ }),
55
+ ],
56
+ template_variables: [],
57
+ layout_type: DatadogAPIClient::V1::DashboardLayoutType::ORDERED,
58
+ notify_list: [],
59
+ reflow_type: DatadogAPIClient::V1::DashboardReflowType::FIXED,
60
+ })
61
+ p api_instance.create_dashboard(body)
@@ -0,0 +1,5 @@
1
+ # Delete an index returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsIndexesAPI.new
5
+ p api_instance.delete_logs_index("name")
@@ -0,0 +1,23 @@
1
+ # Create a pipeline with Span Id Remapper returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V1::LogsPipelinesAPI.new
5
+
6
+ body = DatadogAPIClient::V1::LogsPipeline.new({
7
+ filter: DatadogAPIClient::V1::LogsFilter.new({
8
+ query: "source:python",
9
+ }),
10
+ name: "testPipeline",
11
+ processors: [
12
+ DatadogAPIClient::V1::LogsSpanRemapper.new({
13
+ type: DatadogAPIClient::V1::LogsSpanRemapperType::SPAN_ID_REMAPPER,
14
+ is_enabled: true,
15
+ name: "test_filter",
16
+ sources: [
17
+ "dd.span_id",
18
+ ],
19
+ }),
20
+ ],
21
+ tags: [],
22
+ })
23
+ p api_instance.create_logs_pipeline(body)
@@ -48,6 +48,7 @@ body = DatadogAPIClient::V1::SyntheticsAPITest.new({
48
48
  interval: 1000,
49
49
  }),
50
50
  subtype: DatadogAPIClient::V1::SyntheticsAPITestStepSubtype::HTTP,
51
+ extracted_values_from_script: "dd.variable.set('STATUS_CODE', dd.response.statusCode);",
51
52
  }),
52
53
  DatadogAPIClient::V1::SyntheticsAPIWaitStep.new({
53
54
  name: "Wait",
@@ -0,0 +1,14 @@
1
+ # Post an AWS on demand task returns "AWS on demand task created successfully." response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::AgentlessScanningAPI.new
5
+
6
+ body = DatadogAPIClient::V2::AwsOnDemandCreateRequest.new({
7
+ data: DatadogAPIClient::V2::AwsOnDemandCreateData.new({
8
+ attributes: DatadogAPIClient::V2::AwsOnDemandCreateAttributes.new({
9
+ arn: "arn:aws:lambda:eu-west-3:376334461865:function:This-Is-An-Api-Spec-Test",
10
+ }),
11
+ type: DatadogAPIClient::V2::AwsOnDemandType::AWS_RESOURCE,
12
+ }),
13
+ })
14
+ p api_instance.create_aws_on_demand_task(body)
@@ -0,0 +1,18 @@
1
+ # Post AWS Scan Options returns "Agentless scan options enabled successfully." response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::AgentlessScanningAPI.new
5
+
6
+ body = DatadogAPIClient::V2::AwsScanOptionsCreateRequest.new({
7
+ data: DatadogAPIClient::V2::AwsScanOptionsCreateData.new({
8
+ id: "000000000003",
9
+ type: DatadogAPIClient::V2::AwsScanOptionsType::AWS_SCAN_OPTIONS,
10
+ attributes: DatadogAPIClient::V2::AwsScanOptionsCreateAttributes.new({
11
+ lambda: true,
12
+ sensitive_data: false,
13
+ vuln_containers_os: true,
14
+ vuln_host_os: true,
15
+ }),
16
+ }),
17
+ })
18
+ p api_instance.create_aws_scan_options(body)
@@ -0,0 +1,5 @@
1
+ # Delete AWS Scan Options returns "No Content" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::AgentlessScanningAPI.new
5
+ api_instance.delete_aws_scan_options("account_id")
@@ -0,0 +1,5 @@
1
+ # Get AWS On Demand task by id returns "OK." response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::AgentlessScanningAPI.new
5
+ p api_instance.get_aws_on_demand_task("63d6b4f5-e5d0-4d90-824a-9580f05f026a")
@@ -0,0 +1,5 @@
1
+ # Get AWS On Demand tasks returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::AgentlessScanningAPI.new
5
+ p api_instance.list_aws_on_demand_tasks()
@@ -0,0 +1,17 @@
1
+ # Patch AWS Scan Options returns "No Content" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::AgentlessScanningAPI.new
5
+
6
+ body = DatadogAPIClient::V2::AwsScanOptionsUpdateRequest.new({
7
+ data: DatadogAPIClient::V2::AwsScanOptionsUpdateData.new({
8
+ type: DatadogAPIClient::V2::AwsScanOptionsType::AWS_SCAN_OPTIONS,
9
+ id: "000000000002",
10
+ attributes: DatadogAPIClient::V2::AwsScanOptionsUpdateAttributes.new({
11
+ vuln_host_os: true,
12
+ vuln_containers_os: true,
13
+ lambda: false,
14
+ }),
15
+ }),
16
+ })
17
+ api_instance.update_aws_scan_options("000000000002", body)
@@ -1,49 +1,157 @@
1
1
  # Create App returns "Created" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.create_app".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
 
9
6
  body = DatadogAPIClient::V2::CreateAppRequest.new({
10
7
  data: DatadogAPIClient::V2::CreateAppRequestData.new({
8
+ type: DatadogAPIClient::V2::AppDefinitionType::APPDEFINITIONS,
11
9
  attributes: DatadogAPIClient::V2::CreateAppRequestDataAttributes.new({
10
+ root_instance_name: "grid0",
12
11
  components: [
13
12
  DatadogAPIClient::V2::ComponentGrid.new({
14
- events: [],
15
13
  name: "grid0",
14
+ type: DatadogAPIClient::V2::ComponentGridType::GRID,
16
15
  properties: DatadogAPIClient::V2::ComponentGridProperties.new({
17
16
  children: [
18
17
  DatadogAPIClient::V2::Component.new({
19
- events: [],
18
+ type: DatadogAPIClient::V2::ComponentType::GRIDCELL,
20
19
  name: "gridCell0",
21
20
  properties: DatadogAPIClient::V2::ComponentProperties.new({
22
21
  children: [
23
22
  DatadogAPIClient::V2::Component.new({
23
+ name: "text0",
24
+ type: DatadogAPIClient::V2::ComponentType::TEXT,
25
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
26
+ is_visible: true,
27
+ }),
28
+ events: [],
29
+ }),
30
+ ],
31
+ is_visible: "true",
32
+ }),
33
+ events: [],
34
+ }),
35
+ DatadogAPIClient::V2::Component.new({
36
+ type: DatadogAPIClient::V2::ComponentType::GRIDCELL,
37
+ name: "gridCell2",
38
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
39
+ children: [
40
+ DatadogAPIClient::V2::Component.new({
41
+ name: "table0",
42
+ type: DatadogAPIClient::V2::ComponentType::TABLE,
43
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
44
+ is_visible: true,
45
+ }),
46
+ events: [],
47
+ }),
48
+ ],
49
+ is_visible: "true",
50
+ }),
51
+ events: [],
52
+ }),
53
+ DatadogAPIClient::V2::Component.new({
54
+ type: DatadogAPIClient::V2::ComponentType::GRIDCELL,
55
+ name: "gridCell1",
56
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
57
+ children: [
58
+ DatadogAPIClient::V2::Component.new({
59
+ name: "text1",
60
+ type: DatadogAPIClient::V2::ComponentType::TEXT,
61
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
62
+ is_visible: true,
63
+ }),
24
64
  events: [],
25
- name: "calloutValue0",
65
+ }),
66
+ ],
67
+ is_visible: "true",
68
+ }),
69
+ events: [],
70
+ }),
71
+ DatadogAPIClient::V2::Component.new({
72
+ type: DatadogAPIClient::V2::ComponentType::GRIDCELL,
73
+ name: "gridCell3",
74
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
75
+ children: [
76
+ DatadogAPIClient::V2::Component.new({
77
+ name: "button0",
78
+ type: DatadogAPIClient::V2::ComponentType::BUTTON,
26
79
  properties: DatadogAPIClient::V2::ComponentProperties.new({
27
80
  is_visible: true,
28
81
  }),
29
- type: DatadogAPIClient::V2::ComponentType::CALLOUTVALUE,
82
+ events: [
83
+ DatadogAPIClient::V2::AppBuilderEvent.new({
84
+ name: DatadogAPIClient::V2::AppBuilderEventName::CLICK,
85
+ type: DatadogAPIClient::V2::AppBuilderEventType::SETSTATEVARIABLEVALUE,
86
+ }),
87
+ ],
30
88
  }),
31
89
  ],
32
90
  is_visible: "true",
33
91
  }),
92
+ events: [],
93
+ }),
94
+ DatadogAPIClient::V2::Component.new({
34
95
  type: DatadogAPIClient::V2::ComponentType::GRIDCELL,
96
+ name: "gridCell4",
97
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
98
+ children: [
99
+ DatadogAPIClient::V2::Component.new({
100
+ name: "button1",
101
+ type: DatadogAPIClient::V2::ComponentType::BUTTON,
102
+ properties: DatadogAPIClient::V2::ComponentProperties.new({
103
+ is_visible: true,
104
+ }),
105
+ events: [
106
+ DatadogAPIClient::V2::AppBuilderEvent.new({
107
+ name: DatadogAPIClient::V2::AppBuilderEventName::CLICK,
108
+ type: DatadogAPIClient::V2::AppBuilderEventType::SETSTATEVARIABLEVALUE,
109
+ }),
110
+ ],
111
+ }),
112
+ ],
113
+ is_visible: "true",
114
+ }),
115
+ events: [],
35
116
  }),
36
117
  ],
118
+ background_color: "default",
37
119
  }),
38
- type: DatadogAPIClient::V2::ComponentGridType::GRID,
120
+ events: [],
39
121
  }),
40
122
  ],
41
- description: "This is a simple example app",
42
- queries: [],
43
- name: "Example App",
44
- root_instance_name: "grid0",
123
+ queries: [
124
+ DatadogAPIClient::V2::ActionQuery.new({
125
+ id: "92ff0bb8-553b-4f31-87c7-ef5bd16d47d5",
126
+ type: DatadogAPIClient::V2::ActionQueryType::ACTION,
127
+ name: "fetchFacts",
128
+ events: [],
129
+ properties: DatadogAPIClient::V2::ActionQueryProperties.new({
130
+ spec: {
131
+ "fqn": "com.datadoghq.http.request", "connectionId": "5e63f4a8-4ce6-47de-ba11-f6617c1d54f3", "inputs": "{'verb': 'GET', 'url': 'https://catfact.ninja/facts', 'urlParams': [{'key': 'limit', 'value': '${pageSize.value.toString()}'}, {'key': 'page', 'value': '${(table0.pageIndex + 1).toString()}'}]}",
132
+ },
133
+ }),
134
+ }),
135
+ DatadogAPIClient::V2::StateVariable.new({
136
+ type: DatadogAPIClient::V2::StateVariableType::STATEVARIABLE,
137
+ name: "pageSize",
138
+ properties: DatadogAPIClient::V2::StateVariableProperties.new({
139
+ default_value: "${20}",
140
+ }),
141
+ id: "afd03c81-4075-4432-8618-ba09d52d2f2d",
142
+ }),
143
+ DatadogAPIClient::V2::DataTransform.new({
144
+ type: DatadogAPIClient::V2::DataTransformType::DATATRANSFORM,
145
+ name: "randomFact",
146
+ properties: DatadogAPIClient::V2::DataTransformProperties.new({
147
+ outputs: '${(() => {const facts = fetchFacts.outputs.body.data\nreturn facts[Math.floor(Math.random()*facts.length)]\n})()}',
148
+ }),
149
+ id: "0fb22859-47dc-4137-9e41-7b67d04c525c",
150
+ }),
151
+ ],
152
+ name: "Example Cat Facts Viewer",
153
+ description: "This is a slightly complicated example app that fetches and displays cat facts",
45
154
  }),
46
- type: DatadogAPIClient::V2::AppDefinitionType::APPDEFINITIONS,
47
155
  }),
48
156
  })
49
157
  p api_instance.create_app(body)
@@ -1,9 +1,6 @@
1
1
  # Delete App returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.delete_app".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
 
9
6
  # there is a valid "app" in the system
@@ -1,9 +1,6 @@
1
1
  # Delete Multiple Apps returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.delete_apps".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
 
9
6
  # there is a valid "app" in the system
@@ -1,9 +1,6 @@
1
1
  # Get App returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.get_app".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
 
9
6
  # there is a valid "app" in the system
@@ -1,8 +1,5 @@
1
1
  # List Apps returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.list_apps".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
  p api_instance.list_apps()
@@ -1,9 +1,6 @@
1
1
  # Publish App returns "Created" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.publish_app".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
 
9
6
  # there is a valid "app" in the system
@@ -1,9 +1,6 @@
1
1
  # Unpublish App returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.unpublish_app".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
 
9
6
  # there is a valid "app" in the system
@@ -1,9 +1,6 @@
1
1
  # Update App returns "OK" response
2
2
 
3
3
  require "datadog_api_client"
4
- DatadogAPIClient.configure do |config|
5
- config.unstable_operations["v2.update_app".to_sym] = true
6
- end
7
4
  api_instance = DatadogAPIClient::V2::AppBuilderAPI.new
8
5
 
9
6
  # there is a valid "app" in the system
@@ -0,0 +1,55 @@
1
+ # Create a WAF custom rule returns "Created" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::ApplicationSecurityAPI.new
5
+
6
+ body = DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleCreateRequest.new({
7
+ data: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleCreateData.new({
8
+ attributes: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleCreateAttributes.new({
9
+ action: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleAction.new({
10
+ action: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleActionAction::BLOCK_REQUEST,
11
+ parameters: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleActionParameters.new({
12
+ location: "/blocking",
13
+ status_code: 403,
14
+ }),
15
+ }),
16
+ blocking: false,
17
+ conditions: [
18
+ DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleCondition.new({
19
+ operator: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleConditionOperator::MATCH_REGEX,
20
+ parameters: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleConditionParameters.new({
21
+ data: "blocked_users",
22
+ inputs: [
23
+ DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleConditionInput.new({
24
+ address: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleConditionInputAddress::SERVER_DB_STATEMENT,
25
+ key_path: [],
26
+ }),
27
+ ],
28
+ list: [],
29
+ options: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleConditionOptions.new({
30
+ case_sensitive: false,
31
+ min_length: 0,
32
+ }),
33
+ regex: "path.*",
34
+ value: "custom_tag",
35
+ }),
36
+ }),
37
+ ],
38
+ enabled: false,
39
+ name: "Block request from a bad useragent",
40
+ path_glob: "/api/search/*",
41
+ scope: [
42
+ DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleScope.new({
43
+ env: "prod",
44
+ service: "billing-service",
45
+ }),
46
+ ],
47
+ tags: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleTags.new({
48
+ category: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleTagsCategory::BUSINESS_LOGIC,
49
+ type: "users.login.success",
50
+ }),
51
+ }),
52
+ type: DatadogAPIClient::V2::ApplicationSecurityWafCustomRuleType::CUSTOM_RULE,
53
+ }),
54
+ })
55
+ p api_instance.create_application_security_waf_custom_rule(body)
@@ -0,0 +1,33 @@
1
+ # Create a WAF exclusion filter returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::ApplicationSecurityAPI.new
5
+
6
+ body = DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterCreateRequest.new({
7
+ data: DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterCreateData.new({
8
+ attributes: DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterCreateAttributes.new({
9
+ description: "Exclude false positives on a path",
10
+ enabled: true,
11
+ parameters: [
12
+ "list.search.query",
13
+ ],
14
+ path_glob: "/accounts/*",
15
+ rules_target: [
16
+ DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterRulesTarget.new({
17
+ tags: DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterRulesTargetTags.new({
18
+ category: "attack_attempt",
19
+ type: "lfi",
20
+ }),
21
+ }),
22
+ ],
23
+ scope: [
24
+ DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterScope.new({
25
+ env: "www",
26
+ service: "prod",
27
+ }),
28
+ ],
29
+ }),
30
+ type: DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterType::EXCLUSION_FILTER,
31
+ }),
32
+ })
33
+ p api_instance.create_application_security_waf_exclusion_filter(body)
@@ -0,0 +1,5 @@
1
+ # Delete a WAF Custom Rule returns "No Content" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::ApplicationSecurityAPI.new
5
+ api_instance.delete_application_security_waf_custom_rule("custom_rule_id")
@@ -0,0 +1,8 @@
1
+ # Delete a WAF exclusion filter returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::ApplicationSecurityAPI.new
5
+
6
+ # there is a valid "exclusion_filter" in the system
7
+ EXCLUSION_FILTER_DATA_ID = ENV["EXCLUSION_FILTER_DATA_ID"]
8
+ api_instance.delete_application_security_waf_exclusion_filter(EXCLUSION_FILTER_DATA_ID)
@@ -0,0 +1,5 @@
1
+ # Get a WAF custom rule returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::ApplicationSecurityAPI.new
5
+ p api_instance.get_application_security_waf_custom_rule("custom_rule_id")
@@ -0,0 +1,8 @@
1
+ # Get a WAF exclusion filter returns "OK" response
2
+
3
+ require "datadog_api_client"
4
+ api_instance = DatadogAPIClient::V2::ApplicationSecurityAPI.new
5
+
6
+ # there is a valid "exclusion_filter" in the system
7
+ EXCLUSION_FILTER_DATA_ID = ENV["EXCLUSION_FILTER_DATA_ID"]
8
+ p api_instance.get_application_security_waf_exclusion_filter(EXCLUSION_FILTER_DATA_ID)