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
@@ -0,0 +1,689 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'cgi'
17
+
18
+ module DatadogAPIClient::V2
19
+ class ApplicationSecurityAPI
20
+ attr_accessor :api_client
21
+
22
+ def initialize(api_client = DatadogAPIClient::APIClient.default)
23
+ @api_client = api_client
24
+ end
25
+
26
+ # Create a WAF custom rule.
27
+ #
28
+ # @see #create_application_security_waf_custom_rule_with_http_info
29
+ def create_application_security_waf_custom_rule(body, opts = {})
30
+ data, _status_code, _headers = create_application_security_waf_custom_rule_with_http_info(body, opts)
31
+ data
32
+ end
33
+
34
+ # Create a WAF custom rule.
35
+ #
36
+ # Create a new WAF custom rule with the given parameters.
37
+ #
38
+ # @param body [ApplicationSecurityWafCustomRuleCreateRequest] The definition of the new WAF Custom Rule.
39
+ # @param opts [Hash] the optional parameters
40
+ # @return [Array<(ApplicationSecurityWafCustomRuleResponse, Integer, Hash)>] ApplicationSecurityWafCustomRuleResponse data, response status code and response headers
41
+ def create_application_security_waf_custom_rule_with_http_info(body, opts = {})
42
+
43
+ if @api_client.config.debugging
44
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.create_application_security_waf_custom_rule ...'
45
+ end
46
+ # verify the required parameter 'body' is set
47
+ if @api_client.config.client_side_validation && body.nil?
48
+ fail ArgumentError, "Missing the required parameter 'body' when calling ApplicationSecurityAPI.create_application_security_waf_custom_rule"
49
+ end
50
+ # resource path
51
+ local_var_path = '/api/v2/remote_config/products/asm/waf/custom_rules'
52
+
53
+ # query parameters
54
+ query_params = opts[:query_params] || {}
55
+
56
+ # header parameters
57
+ header_params = opts[:header_params] || {}
58
+ # HTTP header 'Accept' (if needed)
59
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
60
+ # HTTP header 'Content-Type'
61
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
62
+
63
+ # form parameters
64
+ form_params = opts[:form_params] || {}
65
+
66
+ # http body (model)
67
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
68
+
69
+ # return_type
70
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafCustomRuleResponse'
71
+
72
+ # auth_names
73
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
74
+
75
+ new_options = opts.merge(
76
+ :operation => :create_application_security_waf_custom_rule,
77
+ :header_params => header_params,
78
+ :query_params => query_params,
79
+ :form_params => form_params,
80
+ :body => post_body,
81
+ :auth_names => auth_names,
82
+ :return_type => return_type,
83
+ :api_version => "V2"
84
+ )
85
+
86
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
87
+ if @api_client.config.debugging
88
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#create_application_security_waf_custom_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
89
+ end
90
+ return data, status_code, headers
91
+ end
92
+
93
+ # Create a WAF exclusion filter.
94
+ #
95
+ # @see #create_application_security_waf_exclusion_filter_with_http_info
96
+ def create_application_security_waf_exclusion_filter(body, opts = {})
97
+ data, _status_code, _headers = create_application_security_waf_exclusion_filter_with_http_info(body, opts)
98
+ data
99
+ end
100
+
101
+ # Create a WAF exclusion filter.
102
+ #
103
+ # Create a new WAF exclusion filter with the given parameters.
104
+ #
105
+ # A request matched by an exclusion filter will be ignored by the Application Security WAF product.
106
+ # Go to https://app.datadoghq.com/security/appsec/passlist to review existing exclusion filters (also called passlist entries).
107
+ #
108
+ # @param body [ApplicationSecurityWafExclusionFilterCreateRequest] The definition of the new WAF exclusion filter.
109
+ # @param opts [Hash] the optional parameters
110
+ # @return [Array<(ApplicationSecurityWafExclusionFilterResponse, Integer, Hash)>] ApplicationSecurityWafExclusionFilterResponse data, response status code and response headers
111
+ def create_application_security_waf_exclusion_filter_with_http_info(body, opts = {})
112
+
113
+ if @api_client.config.debugging
114
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.create_application_security_waf_exclusion_filter ...'
115
+ end
116
+ # verify the required parameter 'body' is set
117
+ if @api_client.config.client_side_validation && body.nil?
118
+ fail ArgumentError, "Missing the required parameter 'body' when calling ApplicationSecurityAPI.create_application_security_waf_exclusion_filter"
119
+ end
120
+ # resource path
121
+ local_var_path = '/api/v2/remote_config/products/asm/waf/exclusion_filters'
122
+
123
+ # query parameters
124
+ query_params = opts[:query_params] || {}
125
+
126
+ # header parameters
127
+ header_params = opts[:header_params] || {}
128
+ # HTTP header 'Accept' (if needed)
129
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
130
+ # HTTP header 'Content-Type'
131
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
132
+
133
+ # form parameters
134
+ form_params = opts[:form_params] || {}
135
+
136
+ # http body (model)
137
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
138
+
139
+ # return_type
140
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafExclusionFilterResponse'
141
+
142
+ # auth_names
143
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
144
+
145
+ new_options = opts.merge(
146
+ :operation => :create_application_security_waf_exclusion_filter,
147
+ :header_params => header_params,
148
+ :query_params => query_params,
149
+ :form_params => form_params,
150
+ :body => post_body,
151
+ :auth_names => auth_names,
152
+ :return_type => return_type,
153
+ :api_version => "V2"
154
+ )
155
+
156
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
157
+ if @api_client.config.debugging
158
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#create_application_security_waf_exclusion_filter\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
159
+ end
160
+ return data, status_code, headers
161
+ end
162
+
163
+ # Delete a WAF Custom Rule.
164
+ #
165
+ # @see #delete_application_security_waf_custom_rule_with_http_info
166
+ def delete_application_security_waf_custom_rule(custom_rule_id, opts = {})
167
+ delete_application_security_waf_custom_rule_with_http_info(custom_rule_id, opts)
168
+ nil
169
+ end
170
+
171
+ # Delete a WAF Custom Rule.
172
+ #
173
+ # Delete a specific WAF custom rule.
174
+ #
175
+ # @param custom_rule_id [String] The ID of the custom rule.
176
+ # @param opts [Hash] the optional parameters
177
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
178
+ def delete_application_security_waf_custom_rule_with_http_info(custom_rule_id, opts = {})
179
+
180
+ if @api_client.config.debugging
181
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.delete_application_security_waf_custom_rule ...'
182
+ end
183
+ # verify the required parameter 'custom_rule_id' is set
184
+ if @api_client.config.client_side_validation && custom_rule_id.nil?
185
+ fail ArgumentError, "Missing the required parameter 'custom_rule_id' when calling ApplicationSecurityAPI.delete_application_security_waf_custom_rule"
186
+ end
187
+ # resource path
188
+ local_var_path = '/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'.sub('{custom_rule_id}', CGI.escape(custom_rule_id.to_s).gsub('%2F', '/'))
189
+
190
+ # query parameters
191
+ query_params = opts[:query_params] || {}
192
+
193
+ # header parameters
194
+ header_params = opts[:header_params] || {}
195
+ # HTTP header 'Accept' (if needed)
196
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
197
+
198
+ # form parameters
199
+ form_params = opts[:form_params] || {}
200
+
201
+ # http body (model)
202
+ post_body = opts[:debug_body]
203
+
204
+ # return_type
205
+ return_type = opts[:debug_return_type]
206
+
207
+ # auth_names
208
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
209
+
210
+ new_options = opts.merge(
211
+ :operation => :delete_application_security_waf_custom_rule,
212
+ :header_params => header_params,
213
+ :query_params => query_params,
214
+ :form_params => form_params,
215
+ :body => post_body,
216
+ :auth_names => auth_names,
217
+ :return_type => return_type,
218
+ :api_version => "V2"
219
+ )
220
+
221
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
222
+ if @api_client.config.debugging
223
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#delete_application_security_waf_custom_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
224
+ end
225
+ return data, status_code, headers
226
+ end
227
+
228
+ # Delete a WAF exclusion filter.
229
+ #
230
+ # @see #delete_application_security_waf_exclusion_filter_with_http_info
231
+ def delete_application_security_waf_exclusion_filter(exclusion_filter_id, opts = {})
232
+ delete_application_security_waf_exclusion_filter_with_http_info(exclusion_filter_id, opts)
233
+ nil
234
+ end
235
+
236
+ # Delete a WAF exclusion filter.
237
+ #
238
+ # Delete a specific WAF exclusion filter using its identifier.
239
+ #
240
+ # @param exclusion_filter_id [String] The identifier of the WAF exclusion filter.
241
+ # @param opts [Hash] the optional parameters
242
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
243
+ def delete_application_security_waf_exclusion_filter_with_http_info(exclusion_filter_id, opts = {})
244
+
245
+ if @api_client.config.debugging
246
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.delete_application_security_waf_exclusion_filter ...'
247
+ end
248
+ # verify the required parameter 'exclusion_filter_id' is set
249
+ if @api_client.config.client_side_validation && exclusion_filter_id.nil?
250
+ fail ArgumentError, "Missing the required parameter 'exclusion_filter_id' when calling ApplicationSecurityAPI.delete_application_security_waf_exclusion_filter"
251
+ end
252
+ # resource path
253
+ local_var_path = '/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id}'.sub('{exclusion_filter_id}', CGI.escape(exclusion_filter_id.to_s).gsub('%2F', '/'))
254
+
255
+ # query parameters
256
+ query_params = opts[:query_params] || {}
257
+
258
+ # header parameters
259
+ header_params = opts[:header_params] || {}
260
+ # HTTP header 'Accept' (if needed)
261
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
262
+
263
+ # form parameters
264
+ form_params = opts[:form_params] || {}
265
+
266
+ # http body (model)
267
+ post_body = opts[:debug_body]
268
+
269
+ # return_type
270
+ return_type = opts[:debug_return_type]
271
+
272
+ # auth_names
273
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
274
+
275
+ new_options = opts.merge(
276
+ :operation => :delete_application_security_waf_exclusion_filter,
277
+ :header_params => header_params,
278
+ :query_params => query_params,
279
+ :form_params => form_params,
280
+ :body => post_body,
281
+ :auth_names => auth_names,
282
+ :return_type => return_type,
283
+ :api_version => "V2"
284
+ )
285
+
286
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
287
+ if @api_client.config.debugging
288
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#delete_application_security_waf_exclusion_filter\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
289
+ end
290
+ return data, status_code, headers
291
+ end
292
+
293
+ # Get a WAF custom rule.
294
+ #
295
+ # @see #get_application_security_waf_custom_rule_with_http_info
296
+ def get_application_security_waf_custom_rule(custom_rule_id, opts = {})
297
+ data, _status_code, _headers = get_application_security_waf_custom_rule_with_http_info(custom_rule_id, opts)
298
+ data
299
+ end
300
+
301
+ # Get a WAF custom rule.
302
+ #
303
+ # Retrieve a WAF custom rule by ID.
304
+ #
305
+ # @param custom_rule_id [String] The ID of the custom rule.
306
+ # @param opts [Hash] the optional parameters
307
+ # @return [Array<(ApplicationSecurityWafCustomRuleResponse, Integer, Hash)>] ApplicationSecurityWafCustomRuleResponse data, response status code and response headers
308
+ def get_application_security_waf_custom_rule_with_http_info(custom_rule_id, opts = {})
309
+
310
+ if @api_client.config.debugging
311
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.get_application_security_waf_custom_rule ...'
312
+ end
313
+ # verify the required parameter 'custom_rule_id' is set
314
+ if @api_client.config.client_side_validation && custom_rule_id.nil?
315
+ fail ArgumentError, "Missing the required parameter 'custom_rule_id' when calling ApplicationSecurityAPI.get_application_security_waf_custom_rule"
316
+ end
317
+ # resource path
318
+ local_var_path = '/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'.sub('{custom_rule_id}', CGI.escape(custom_rule_id.to_s).gsub('%2F', '/'))
319
+
320
+ # query parameters
321
+ query_params = opts[:query_params] || {}
322
+
323
+ # header parameters
324
+ header_params = opts[:header_params] || {}
325
+ # HTTP header 'Accept' (if needed)
326
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
327
+
328
+ # form parameters
329
+ form_params = opts[:form_params] || {}
330
+
331
+ # http body (model)
332
+ post_body = opts[:debug_body]
333
+
334
+ # return_type
335
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafCustomRuleResponse'
336
+
337
+ # auth_names
338
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
339
+
340
+ new_options = opts.merge(
341
+ :operation => :get_application_security_waf_custom_rule,
342
+ :header_params => header_params,
343
+ :query_params => query_params,
344
+ :form_params => form_params,
345
+ :body => post_body,
346
+ :auth_names => auth_names,
347
+ :return_type => return_type,
348
+ :api_version => "V2"
349
+ )
350
+
351
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
352
+ if @api_client.config.debugging
353
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#get_application_security_waf_custom_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
354
+ end
355
+ return data, status_code, headers
356
+ end
357
+
358
+ # Get a WAF exclusion filter.
359
+ #
360
+ # @see #get_application_security_waf_exclusion_filter_with_http_info
361
+ def get_application_security_waf_exclusion_filter(exclusion_filter_id, opts = {})
362
+ data, _status_code, _headers = get_application_security_waf_exclusion_filter_with_http_info(exclusion_filter_id, opts)
363
+ data
364
+ end
365
+
366
+ # Get a WAF exclusion filter.
367
+ #
368
+ # Retrieve a specific WAF exclusion filter using its identifier.
369
+ #
370
+ # @param exclusion_filter_id [String] The identifier of the WAF exclusion filter.
371
+ # @param opts [Hash] the optional parameters
372
+ # @return [Array<(ApplicationSecurityWafExclusionFilterResponse, Integer, Hash)>] ApplicationSecurityWafExclusionFilterResponse data, response status code and response headers
373
+ def get_application_security_waf_exclusion_filter_with_http_info(exclusion_filter_id, opts = {})
374
+
375
+ if @api_client.config.debugging
376
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.get_application_security_waf_exclusion_filter ...'
377
+ end
378
+ # verify the required parameter 'exclusion_filter_id' is set
379
+ if @api_client.config.client_side_validation && exclusion_filter_id.nil?
380
+ fail ArgumentError, "Missing the required parameter 'exclusion_filter_id' when calling ApplicationSecurityAPI.get_application_security_waf_exclusion_filter"
381
+ end
382
+ # resource path
383
+ local_var_path = '/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id}'.sub('{exclusion_filter_id}', CGI.escape(exclusion_filter_id.to_s).gsub('%2F', '/'))
384
+
385
+ # query parameters
386
+ query_params = opts[:query_params] || {}
387
+
388
+ # header parameters
389
+ header_params = opts[:header_params] || {}
390
+ # HTTP header 'Accept' (if needed)
391
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
392
+
393
+ # form parameters
394
+ form_params = opts[:form_params] || {}
395
+
396
+ # http body (model)
397
+ post_body = opts[:debug_body]
398
+
399
+ # return_type
400
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafExclusionFilterResponse'
401
+
402
+ # auth_names
403
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
404
+
405
+ new_options = opts.merge(
406
+ :operation => :get_application_security_waf_exclusion_filter,
407
+ :header_params => header_params,
408
+ :query_params => query_params,
409
+ :form_params => form_params,
410
+ :body => post_body,
411
+ :auth_names => auth_names,
412
+ :return_type => return_type,
413
+ :api_version => "V2"
414
+ )
415
+
416
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
417
+ if @api_client.config.debugging
418
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#get_application_security_waf_exclusion_filter\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
419
+ end
420
+ return data, status_code, headers
421
+ end
422
+
423
+ # List all WAF custom rules.
424
+ #
425
+ # @see #list_application_security_waf_custom_rules_with_http_info
426
+ def list_application_security_waf_custom_rules(opts = {})
427
+ data, _status_code, _headers = list_application_security_waf_custom_rules_with_http_info(opts)
428
+ data
429
+ end
430
+
431
+ # List all WAF custom rules.
432
+ #
433
+ # Retrieve a list of WAF custom rule.
434
+ #
435
+ # @param opts [Hash] the optional parameters
436
+ # @return [Array<(ApplicationSecurityWafCustomRuleListResponse, Integer, Hash)>] ApplicationSecurityWafCustomRuleListResponse data, response status code and response headers
437
+ def list_application_security_waf_custom_rules_with_http_info(opts = {})
438
+
439
+ if @api_client.config.debugging
440
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.list_application_security_waf_custom_rules ...'
441
+ end
442
+ # resource path
443
+ local_var_path = '/api/v2/remote_config/products/asm/waf/custom_rules'
444
+
445
+ # query parameters
446
+ query_params = opts[:query_params] || {}
447
+
448
+ # header parameters
449
+ header_params = opts[:header_params] || {}
450
+ # HTTP header 'Accept' (if needed)
451
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
452
+
453
+ # form parameters
454
+ form_params = opts[:form_params] || {}
455
+
456
+ # http body (model)
457
+ post_body = opts[:debug_body]
458
+
459
+ # return_type
460
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafCustomRuleListResponse'
461
+
462
+ # auth_names
463
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
464
+
465
+ new_options = opts.merge(
466
+ :operation => :list_application_security_waf_custom_rules,
467
+ :header_params => header_params,
468
+ :query_params => query_params,
469
+ :form_params => form_params,
470
+ :body => post_body,
471
+ :auth_names => auth_names,
472
+ :return_type => return_type,
473
+ :api_version => "V2"
474
+ )
475
+
476
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
477
+ if @api_client.config.debugging
478
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#list_application_security_waf_custom_rules\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
479
+ end
480
+ return data, status_code, headers
481
+ end
482
+
483
+ # List all WAF exclusion filters.
484
+ #
485
+ # @see #list_application_security_waf_exclusion_filters_with_http_info
486
+ def list_application_security_waf_exclusion_filters(opts = {})
487
+ data, _status_code, _headers = list_application_security_waf_exclusion_filters_with_http_info(opts)
488
+ data
489
+ end
490
+
491
+ # List all WAF exclusion filters.
492
+ #
493
+ # Retrieve a list of WAF exclusion filters.
494
+ #
495
+ # @param opts [Hash] the optional parameters
496
+ # @return [Array<(ApplicationSecurityWafExclusionFiltersResponse, Integer, Hash)>] ApplicationSecurityWafExclusionFiltersResponse data, response status code and response headers
497
+ def list_application_security_waf_exclusion_filters_with_http_info(opts = {})
498
+
499
+ if @api_client.config.debugging
500
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.list_application_security_waf_exclusion_filters ...'
501
+ end
502
+ # resource path
503
+ local_var_path = '/api/v2/remote_config/products/asm/waf/exclusion_filters'
504
+
505
+ # query parameters
506
+ query_params = opts[:query_params] || {}
507
+
508
+ # header parameters
509
+ header_params = opts[:header_params] || {}
510
+ # HTTP header 'Accept' (if needed)
511
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
512
+
513
+ # form parameters
514
+ form_params = opts[:form_params] || {}
515
+
516
+ # http body (model)
517
+ post_body = opts[:debug_body]
518
+
519
+ # return_type
520
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafExclusionFiltersResponse'
521
+
522
+ # auth_names
523
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
524
+
525
+ new_options = opts.merge(
526
+ :operation => :list_application_security_waf_exclusion_filters,
527
+ :header_params => header_params,
528
+ :query_params => query_params,
529
+ :form_params => form_params,
530
+ :body => post_body,
531
+ :auth_names => auth_names,
532
+ :return_type => return_type,
533
+ :api_version => "V2"
534
+ )
535
+
536
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
537
+ if @api_client.config.debugging
538
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#list_application_security_waf_exclusion_filters\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
539
+ end
540
+ return data, status_code, headers
541
+ end
542
+
543
+ # Update a WAF Custom Rule.
544
+ #
545
+ # @see #update_application_security_waf_custom_rule_with_http_info
546
+ def update_application_security_waf_custom_rule(custom_rule_id, body, opts = {})
547
+ data, _status_code, _headers = update_application_security_waf_custom_rule_with_http_info(custom_rule_id, body, opts)
548
+ data
549
+ end
550
+
551
+ # Update a WAF Custom Rule.
552
+ #
553
+ # Update a specific WAF custom Rule.
554
+ # Returns the Custom Rule object when the request is successful.
555
+ #
556
+ # @param custom_rule_id [String] The ID of the custom rule.
557
+ # @param body [ApplicationSecurityWafCustomRuleUpdateRequest] New definition of the WAF Custom Rule.
558
+ # @param opts [Hash] the optional parameters
559
+ # @return [Array<(ApplicationSecurityWafCustomRuleResponse, Integer, Hash)>] ApplicationSecurityWafCustomRuleResponse data, response status code and response headers
560
+ def update_application_security_waf_custom_rule_with_http_info(custom_rule_id, body, opts = {})
561
+
562
+ if @api_client.config.debugging
563
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.update_application_security_waf_custom_rule ...'
564
+ end
565
+ # verify the required parameter 'custom_rule_id' is set
566
+ if @api_client.config.client_side_validation && custom_rule_id.nil?
567
+ fail ArgumentError, "Missing the required parameter 'custom_rule_id' when calling ApplicationSecurityAPI.update_application_security_waf_custom_rule"
568
+ end
569
+ # verify the required parameter 'body' is set
570
+ if @api_client.config.client_side_validation && body.nil?
571
+ fail ArgumentError, "Missing the required parameter 'body' when calling ApplicationSecurityAPI.update_application_security_waf_custom_rule"
572
+ end
573
+ # resource path
574
+ local_var_path = '/api/v2/remote_config/products/asm/waf/custom_rules/{custom_rule_id}'.sub('{custom_rule_id}', CGI.escape(custom_rule_id.to_s).gsub('%2F', '/'))
575
+
576
+ # query parameters
577
+ query_params = opts[:query_params] || {}
578
+
579
+ # header parameters
580
+ header_params = opts[:header_params] || {}
581
+ # HTTP header 'Accept' (if needed)
582
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
583
+ # HTTP header 'Content-Type'
584
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
585
+
586
+ # form parameters
587
+ form_params = opts[:form_params] || {}
588
+
589
+ # http body (model)
590
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
591
+
592
+ # return_type
593
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafCustomRuleResponse'
594
+
595
+ # auth_names
596
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
597
+
598
+ new_options = opts.merge(
599
+ :operation => :update_application_security_waf_custom_rule,
600
+ :header_params => header_params,
601
+ :query_params => query_params,
602
+ :form_params => form_params,
603
+ :body => post_body,
604
+ :auth_names => auth_names,
605
+ :return_type => return_type,
606
+ :api_version => "V2"
607
+ )
608
+
609
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Put, local_var_path, new_options)
610
+ if @api_client.config.debugging
611
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#update_application_security_waf_custom_rule\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
612
+ end
613
+ return data, status_code, headers
614
+ end
615
+
616
+ # Update a WAF exclusion filter.
617
+ #
618
+ # @see #update_application_security_waf_exclusion_filter_with_http_info
619
+ def update_application_security_waf_exclusion_filter(exclusion_filter_id, body, opts = {})
620
+ data, _status_code, _headers = update_application_security_waf_exclusion_filter_with_http_info(exclusion_filter_id, body, opts)
621
+ data
622
+ end
623
+
624
+ # Update a WAF exclusion filter.
625
+ #
626
+ # Update a specific WAF exclusion filter using its identifier.
627
+ # Returns the exclusion filter object when the request is successful.
628
+ #
629
+ # @param exclusion_filter_id [String] The identifier of the WAF exclusion filter.
630
+ # @param body [ApplicationSecurityWafExclusionFilterUpdateRequest] The exclusion filter to update.
631
+ # @param opts [Hash] the optional parameters
632
+ # @return [Array<(ApplicationSecurityWafExclusionFilterResponse, Integer, Hash)>] ApplicationSecurityWafExclusionFilterResponse data, response status code and response headers
633
+ def update_application_security_waf_exclusion_filter_with_http_info(exclusion_filter_id, body, opts = {})
634
+
635
+ if @api_client.config.debugging
636
+ @api_client.config.logger.debug 'Calling API: ApplicationSecurityAPI.update_application_security_waf_exclusion_filter ...'
637
+ end
638
+ # verify the required parameter 'exclusion_filter_id' is set
639
+ if @api_client.config.client_side_validation && exclusion_filter_id.nil?
640
+ fail ArgumentError, "Missing the required parameter 'exclusion_filter_id' when calling ApplicationSecurityAPI.update_application_security_waf_exclusion_filter"
641
+ end
642
+ # verify the required parameter 'body' is set
643
+ if @api_client.config.client_side_validation && body.nil?
644
+ fail ArgumentError, "Missing the required parameter 'body' when calling ApplicationSecurityAPI.update_application_security_waf_exclusion_filter"
645
+ end
646
+ # resource path
647
+ local_var_path = '/api/v2/remote_config/products/asm/waf/exclusion_filters/{exclusion_filter_id}'.sub('{exclusion_filter_id}', CGI.escape(exclusion_filter_id.to_s).gsub('%2F', '/'))
648
+
649
+ # query parameters
650
+ query_params = opts[:query_params] || {}
651
+
652
+ # header parameters
653
+ header_params = opts[:header_params] || {}
654
+ # HTTP header 'Accept' (if needed)
655
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
656
+ # HTTP header 'Content-Type'
657
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
658
+
659
+ # form parameters
660
+ form_params = opts[:form_params] || {}
661
+
662
+ # http body (model)
663
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
664
+
665
+ # return_type
666
+ return_type = opts[:debug_return_type] || 'ApplicationSecurityWafExclusionFilterResponse'
667
+
668
+ # auth_names
669
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth]
670
+
671
+ new_options = opts.merge(
672
+ :operation => :update_application_security_waf_exclusion_filter,
673
+ :header_params => header_params,
674
+ :query_params => query_params,
675
+ :form_params => form_params,
676
+ :body => post_body,
677
+ :auth_names => auth_names,
678
+ :return_type => return_type,
679
+ :api_version => "V2"
680
+ )
681
+
682
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Put, local_var_path, new_options)
683
+ if @api_client.config.debugging
684
+ @api_client.config.logger.debug "API called: ApplicationSecurityAPI#update_application_security_waf_exclusion_filter\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
685
+ end
686
+ return data, status_code, headers
687
+ end
688
+ end
689
+ end