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,213 @@
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 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Attributes describing a WAF exclusion filter.
21
+ class ApplicationSecurityWafExclusionFilterAttributes
22
+ include BaseGenericModel
23
+
24
+ # A description for the exclusion filter.
25
+ attr_accessor :description
26
+
27
+ # Indicates whether the exclusion filter is enabled.
28
+ attr_accessor :enabled
29
+
30
+ # The event query matched by the legacy exclusion filter. Cannot be created nor updated.
31
+ attr_accessor :event_query
32
+
33
+ # The client IP addresses matched by the exclusion filter (CIDR notation is supported).
34
+ attr_accessor :ip_list
35
+
36
+ # Extra information about the exclusion filter.
37
+ attr_accessor :metadata
38
+
39
+ # The action taken when the exclusion filter matches. When set to `monitor`, security traces are emitted but the requests are not blocked. By default, security traces are not emitted and the requests are not blocked.
40
+ attr_accessor :on_match
41
+
42
+ # A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character.
43
+ attr_accessor :parameters
44
+
45
+ # The HTTP path glob expression matched by the exclusion filter.
46
+ attr_accessor :path_glob
47
+
48
+ # The WAF rules targeted by the exclusion filter.
49
+ attr_accessor :rules_target
50
+
51
+ # The services where the exclusion filter is deployed.
52
+ attr_accessor :scope
53
+
54
+ # Generated event search query for traces matching the exclusion filter.
55
+ attr_accessor :search_query
56
+
57
+ attr_accessor :additional_properties
58
+
59
+ # Attribute mapping from ruby-style variable name to JSON key.
60
+ # @!visibility private
61
+ def self.attribute_map
62
+ {
63
+ :'description' => :'description',
64
+ :'enabled' => :'enabled',
65
+ :'event_query' => :'event_query',
66
+ :'ip_list' => :'ip_list',
67
+ :'metadata' => :'metadata',
68
+ :'on_match' => :'on_match',
69
+ :'parameters' => :'parameters',
70
+ :'path_glob' => :'path_glob',
71
+ :'rules_target' => :'rules_target',
72
+ :'scope' => :'scope',
73
+ :'search_query' => :'search_query'
74
+ }
75
+ end
76
+
77
+ # Attribute type mapping.
78
+ # @!visibility private
79
+ def self.openapi_types
80
+ {
81
+ :'description' => :'String',
82
+ :'enabled' => :'Boolean',
83
+ :'event_query' => :'String',
84
+ :'ip_list' => :'Array<String>',
85
+ :'metadata' => :'ApplicationSecurityWafExclusionFilterMetadata',
86
+ :'on_match' => :'ApplicationSecurityWafExclusionFilterOnMatch',
87
+ :'parameters' => :'Array<String>',
88
+ :'path_glob' => :'String',
89
+ :'rules_target' => :'Array<ApplicationSecurityWafExclusionFilterRulesTarget>',
90
+ :'scope' => :'Array<ApplicationSecurityWafExclusionFilterScope>',
91
+ :'search_query' => :'String'
92
+ }
93
+ end
94
+
95
+ # Initializes the object
96
+ # @param attributes [Hash] Model attributes in the form of hash
97
+ # @!visibility private
98
+ def initialize(attributes = {})
99
+ if (!attributes.is_a?(Hash))
100
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterAttributes` initialize method"
101
+ end
102
+
103
+ self.additional_properties = {}
104
+ # check to see if the attribute exists and convert string to symbol for hash key
105
+ attributes = attributes.each_with_object({}) { |(k, v), h|
106
+ if (!self.class.attribute_map.key?(k.to_sym))
107
+ self.additional_properties[k.to_sym] = v
108
+ else
109
+ h[k.to_sym] = v
110
+ end
111
+ }
112
+
113
+ if attributes.key?(:'description')
114
+ self.description = attributes[:'description']
115
+ end
116
+
117
+ if attributes.key?(:'enabled')
118
+ self.enabled = attributes[:'enabled']
119
+ end
120
+
121
+ if attributes.key?(:'event_query')
122
+ self.event_query = attributes[:'event_query']
123
+ end
124
+
125
+ if attributes.key?(:'ip_list')
126
+ if (value = attributes[:'ip_list']).is_a?(Array)
127
+ self.ip_list = value
128
+ end
129
+ end
130
+
131
+ if attributes.key?(:'metadata')
132
+ self.metadata = attributes[:'metadata']
133
+ end
134
+
135
+ if attributes.key?(:'on_match')
136
+ self.on_match = attributes[:'on_match']
137
+ end
138
+
139
+ if attributes.key?(:'parameters')
140
+ if (value = attributes[:'parameters']).is_a?(Array)
141
+ self.parameters = value
142
+ end
143
+ end
144
+
145
+ if attributes.key?(:'path_glob')
146
+ self.path_glob = attributes[:'path_glob']
147
+ end
148
+
149
+ if attributes.key?(:'rules_target')
150
+ if (value = attributes[:'rules_target']).is_a?(Array)
151
+ self.rules_target = value
152
+ end
153
+ end
154
+
155
+ if attributes.key?(:'scope')
156
+ if (value = attributes[:'scope']).is_a?(Array)
157
+ self.scope = value
158
+ end
159
+ end
160
+
161
+ if attributes.key?(:'search_query')
162
+ self.search_query = attributes[:'search_query']
163
+ end
164
+ end
165
+
166
+ # Returns the object in the form of hash, with additionalProperties support.
167
+ # @return [Hash] Returns the object in the form of hash
168
+ # @!visibility private
169
+ def to_hash
170
+ hash = {}
171
+ self.class.attribute_map.each_pair do |attr, param|
172
+ value = self.send(attr)
173
+ if value.nil?
174
+ is_nullable = self.class.openapi_nullable.include?(attr)
175
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
176
+ end
177
+
178
+ hash[param] = _to_hash(value)
179
+ end
180
+ self.additional_properties.each_pair do |attr, value|
181
+ hash[attr] = value
182
+ end
183
+ hash
184
+ end
185
+
186
+ # Checks equality by comparing each attribute.
187
+ # @param o [Object] Object to be compared
188
+ # @!visibility private
189
+ def ==(o)
190
+ return true if self.equal?(o)
191
+ self.class == o.class &&
192
+ description == o.description &&
193
+ enabled == o.enabled &&
194
+ event_query == o.event_query &&
195
+ ip_list == o.ip_list &&
196
+ metadata == o.metadata &&
197
+ on_match == o.on_match &&
198
+ parameters == o.parameters &&
199
+ path_glob == o.path_glob &&
200
+ rules_target == o.rules_target &&
201
+ scope == o.scope &&
202
+ search_query == o.search_query &&
203
+ additional_properties == o.additional_properties
204
+ end
205
+
206
+ # Calculates hash code according to all attributes.
207
+ # @return [Integer] Hash code
208
+ # @!visibility private
209
+ def hash
210
+ [description, enabled, event_query, ip_list, metadata, on_match, parameters, path_glob, rules_target, scope, search_query, additional_properties].hash
211
+ end
212
+ end
213
+ end
@@ -0,0 +1,212 @@
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 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Attributes for creating a WAF exclusion filter.
21
+ class ApplicationSecurityWafExclusionFilterCreateAttributes
22
+ include BaseGenericModel
23
+
24
+ # A description for the exclusion filter.
25
+ attr_reader :description
26
+
27
+ # Indicates whether the exclusion filter is enabled.
28
+ attr_reader :enabled
29
+
30
+ # The client IP addresses matched by the exclusion filter (CIDR notation is supported).
31
+ attr_accessor :ip_list
32
+
33
+ # The action taken when the exclusion filter matches. When set to `monitor`, security traces are emitted but the requests are not blocked. By default, security traces are not emitted and the requests are not blocked.
34
+ attr_accessor :on_match
35
+
36
+ # A list of parameters matched by the exclusion filter in the HTTP query string and HTTP request body. Nested parameters can be matched by joining fields with a dot character.
37
+ attr_accessor :parameters
38
+
39
+ # The HTTP path glob expression matched by the exclusion filter.
40
+ attr_accessor :path_glob
41
+
42
+ # The WAF rules targeted by the exclusion filter.
43
+ attr_accessor :rules_target
44
+
45
+ # The services where the exclusion filter is deployed.
46
+ attr_accessor :scope
47
+
48
+ attr_accessor :additional_properties
49
+
50
+ # Attribute mapping from ruby-style variable name to JSON key.
51
+ # @!visibility private
52
+ def self.attribute_map
53
+ {
54
+ :'description' => :'description',
55
+ :'enabled' => :'enabled',
56
+ :'ip_list' => :'ip_list',
57
+ :'on_match' => :'on_match',
58
+ :'parameters' => :'parameters',
59
+ :'path_glob' => :'path_glob',
60
+ :'rules_target' => :'rules_target',
61
+ :'scope' => :'scope'
62
+ }
63
+ end
64
+
65
+ # Attribute type mapping.
66
+ # @!visibility private
67
+ def self.openapi_types
68
+ {
69
+ :'description' => :'String',
70
+ :'enabled' => :'Boolean',
71
+ :'ip_list' => :'Array<String>',
72
+ :'on_match' => :'ApplicationSecurityWafExclusionFilterOnMatch',
73
+ :'parameters' => :'Array<String>',
74
+ :'path_glob' => :'String',
75
+ :'rules_target' => :'Array<ApplicationSecurityWafExclusionFilterRulesTarget>',
76
+ :'scope' => :'Array<ApplicationSecurityWafExclusionFilterScope>'
77
+ }
78
+ end
79
+
80
+ # Initializes the object
81
+ # @param attributes [Hash] Model attributes in the form of hash
82
+ # @!visibility private
83
+ def initialize(attributes = {})
84
+ if (!attributes.is_a?(Hash))
85
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterCreateAttributes` initialize method"
86
+ end
87
+
88
+ self.additional_properties = {}
89
+ # check to see if the attribute exists and convert string to symbol for hash key
90
+ attributes = attributes.each_with_object({}) { |(k, v), h|
91
+ if (!self.class.attribute_map.key?(k.to_sym))
92
+ self.additional_properties[k.to_sym] = v
93
+ else
94
+ h[k.to_sym] = v
95
+ end
96
+ }
97
+
98
+ if attributes.key?(:'description')
99
+ self.description = attributes[:'description']
100
+ end
101
+
102
+ if attributes.key?(:'enabled')
103
+ self.enabled = attributes[:'enabled']
104
+ end
105
+
106
+ if attributes.key?(:'ip_list')
107
+ if (value = attributes[:'ip_list']).is_a?(Array)
108
+ self.ip_list = value
109
+ end
110
+ end
111
+
112
+ if attributes.key?(:'on_match')
113
+ self.on_match = attributes[:'on_match']
114
+ end
115
+
116
+ if attributes.key?(:'parameters')
117
+ if (value = attributes[:'parameters']).is_a?(Array)
118
+ self.parameters = value
119
+ end
120
+ end
121
+
122
+ if attributes.key?(:'path_glob')
123
+ self.path_glob = attributes[:'path_glob']
124
+ end
125
+
126
+ if attributes.key?(:'rules_target')
127
+ if (value = attributes[:'rules_target']).is_a?(Array)
128
+ self.rules_target = value
129
+ end
130
+ end
131
+
132
+ if attributes.key?(:'scope')
133
+ if (value = attributes[:'scope']).is_a?(Array)
134
+ self.scope = value
135
+ end
136
+ end
137
+ end
138
+
139
+ # Check to see if the all the properties in the model are valid
140
+ # @return true if the model is valid
141
+ # @!visibility private
142
+ def valid?
143
+ return false if @description.nil?
144
+ return false if @enabled.nil?
145
+ true
146
+ end
147
+
148
+ # Custom attribute writer method with validation
149
+ # @param description [Object] Object to be assigned
150
+ # @!visibility private
151
+ def description=(description)
152
+ if description.nil?
153
+ fail ArgumentError, 'invalid value for "description", description cannot be nil.'
154
+ end
155
+ @description = description
156
+ end
157
+
158
+ # Custom attribute writer method with validation
159
+ # @param enabled [Object] Object to be assigned
160
+ # @!visibility private
161
+ def enabled=(enabled)
162
+ if enabled.nil?
163
+ fail ArgumentError, 'invalid value for "enabled", enabled cannot be nil.'
164
+ end
165
+ @enabled = enabled
166
+ end
167
+
168
+ # Returns the object in the form of hash, with additionalProperties support.
169
+ # @return [Hash] Returns the object in the form of hash
170
+ # @!visibility private
171
+ def to_hash
172
+ hash = {}
173
+ self.class.attribute_map.each_pair do |attr, param|
174
+ value = self.send(attr)
175
+ if value.nil?
176
+ is_nullable = self.class.openapi_nullable.include?(attr)
177
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
178
+ end
179
+
180
+ hash[param] = _to_hash(value)
181
+ end
182
+ self.additional_properties.each_pair do |attr, value|
183
+ hash[attr] = value
184
+ end
185
+ hash
186
+ end
187
+
188
+ # Checks equality by comparing each attribute.
189
+ # @param o [Object] Object to be compared
190
+ # @!visibility private
191
+ def ==(o)
192
+ return true if self.equal?(o)
193
+ self.class == o.class &&
194
+ description == o.description &&
195
+ enabled == o.enabled &&
196
+ ip_list == o.ip_list &&
197
+ on_match == o.on_match &&
198
+ parameters == o.parameters &&
199
+ path_glob == o.path_glob &&
200
+ rules_target == o.rules_target &&
201
+ scope == o.scope &&
202
+ additional_properties == o.additional_properties
203
+ end
204
+
205
+ # Calculates hash code according to all attributes.
206
+ # @return [Integer] Hash code
207
+ # @!visibility private
208
+ def hash
209
+ [description, enabled, ip_list, on_match, parameters, path_glob, rules_target, scope, additional_properties].hash
210
+ end
211
+ end
212
+ end
@@ -0,0 +1,144 @@
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 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Object for creating a single WAF exclusion filter.
21
+ class ApplicationSecurityWafExclusionFilterCreateData
22
+ include BaseGenericModel
23
+
24
+ # Attributes for creating a WAF exclusion filter.
25
+ attr_reader :attributes
26
+
27
+ # Type of the resource. The value should always be `exclusion_filter`.
28
+ attr_reader :type
29
+
30
+ attr_accessor :additional_properties
31
+
32
+ # Attribute mapping from ruby-style variable name to JSON key.
33
+ # @!visibility private
34
+ def self.attribute_map
35
+ {
36
+ :'attributes' => :'attributes',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'attributes' => :'ApplicationSecurityWafExclusionFilterCreateAttributes',
46
+ :'type' => :'ApplicationSecurityWafExclusionFilterType'
47
+ }
48
+ end
49
+
50
+ # Initializes the object
51
+ # @param attributes [Hash] Model attributes in the form of hash
52
+ # @!visibility private
53
+ def initialize(attributes = {})
54
+ if (!attributes.is_a?(Hash))
55
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterCreateData` initialize method"
56
+ end
57
+
58
+ self.additional_properties = {}
59
+ # check to see if the attribute exists and convert string to symbol for hash key
60
+ attributes = attributes.each_with_object({}) { |(k, v), h|
61
+ if (!self.class.attribute_map.key?(k.to_sym))
62
+ self.additional_properties[k.to_sym] = v
63
+ else
64
+ h[k.to_sym] = v
65
+ end
66
+ }
67
+
68
+ if attributes.key?(:'attributes')
69
+ self.attributes = attributes[:'attributes']
70
+ end
71
+
72
+ if attributes.key?(:'type')
73
+ self.type = attributes[:'type']
74
+ end
75
+ end
76
+
77
+ # Check to see if the all the properties in the model are valid
78
+ # @return true if the model is valid
79
+ # @!visibility private
80
+ def valid?
81
+ return false if @attributes.nil?
82
+ return false if @type.nil?
83
+ true
84
+ end
85
+
86
+ # Custom attribute writer method with validation
87
+ # @param attributes [Object] Object to be assigned
88
+ # @!visibility private
89
+ def attributes=(attributes)
90
+ if attributes.nil?
91
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
92
+ end
93
+ @attributes = attributes
94
+ end
95
+
96
+ # Custom attribute writer method with validation
97
+ # @param type [Object] Object to be assigned
98
+ # @!visibility private
99
+ def type=(type)
100
+ if type.nil?
101
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
102
+ end
103
+ @type = type
104
+ end
105
+
106
+ # Returns the object in the form of hash, with additionalProperties support.
107
+ # @return [Hash] Returns the object in the form of hash
108
+ # @!visibility private
109
+ def to_hash
110
+ hash = {}
111
+ self.class.attribute_map.each_pair do |attr, param|
112
+ value = self.send(attr)
113
+ if value.nil?
114
+ is_nullable = self.class.openapi_nullable.include?(attr)
115
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
116
+ end
117
+
118
+ hash[param] = _to_hash(value)
119
+ end
120
+ self.additional_properties.each_pair do |attr, value|
121
+ hash[attr] = value
122
+ end
123
+ hash
124
+ end
125
+
126
+ # Checks equality by comparing each attribute.
127
+ # @param o [Object] Object to be compared
128
+ # @!visibility private
129
+ def ==(o)
130
+ return true if self.equal?(o)
131
+ self.class == o.class &&
132
+ attributes == o.attributes &&
133
+ type == o.type &&
134
+ additional_properties == o.additional_properties
135
+ end
136
+
137
+ # Calculates hash code according to all attributes.
138
+ # @return [Integer] Hash code
139
+ # @!visibility private
140
+ def hash
141
+ [attributes, type, additional_properties].hash
142
+ end
143
+ end
144
+ end
@@ -0,0 +1,123 @@
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 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Request object for creating a single WAF exclusion filter.
21
+ class ApplicationSecurityWafExclusionFilterCreateRequest
22
+ include BaseGenericModel
23
+
24
+ # Object for creating a single WAF exclusion filter.
25
+ attr_reader :data
26
+
27
+ attr_accessor :additional_properties
28
+
29
+ # Attribute mapping from ruby-style variable name to JSON key.
30
+ # @!visibility private
31
+ def self.attribute_map
32
+ {
33
+ :'data' => :'data'
34
+ }
35
+ end
36
+
37
+ # Attribute type mapping.
38
+ # @!visibility private
39
+ def self.openapi_types
40
+ {
41
+ :'data' => :'ApplicationSecurityWafExclusionFilterCreateData'
42
+ }
43
+ end
44
+
45
+ # Initializes the object
46
+ # @param attributes [Hash] Model attributes in the form of hash
47
+ # @!visibility private
48
+ def initialize(attributes = {})
49
+ if (!attributes.is_a?(Hash))
50
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterCreateRequest` initialize method"
51
+ end
52
+
53
+ self.additional_properties = {}
54
+ # check to see if the attribute exists and convert string to symbol for hash key
55
+ attributes = attributes.each_with_object({}) { |(k, v), h|
56
+ if (!self.class.attribute_map.key?(k.to_sym))
57
+ self.additional_properties[k.to_sym] = v
58
+ else
59
+ h[k.to_sym] = v
60
+ end
61
+ }
62
+
63
+ if attributes.key?(:'data')
64
+ self.data = attributes[:'data']
65
+ end
66
+ end
67
+
68
+ # Check to see if the all the properties in the model are valid
69
+ # @return true if the model is valid
70
+ # @!visibility private
71
+ def valid?
72
+ return false if @data.nil?
73
+ true
74
+ end
75
+
76
+ # Custom attribute writer method with validation
77
+ # @param data [Object] Object to be assigned
78
+ # @!visibility private
79
+ def data=(data)
80
+ if data.nil?
81
+ fail ArgumentError, 'invalid value for "data", data cannot be nil.'
82
+ end
83
+ @data = data
84
+ end
85
+
86
+ # Returns the object in the form of hash, with additionalProperties support.
87
+ # @return [Hash] Returns the object in the form of hash
88
+ # @!visibility private
89
+ def to_hash
90
+ hash = {}
91
+ self.class.attribute_map.each_pair do |attr, param|
92
+ value = self.send(attr)
93
+ if value.nil?
94
+ is_nullable = self.class.openapi_nullable.include?(attr)
95
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
96
+ end
97
+
98
+ hash[param] = _to_hash(value)
99
+ end
100
+ self.additional_properties.each_pair do |attr, value|
101
+ hash[attr] = value
102
+ end
103
+ hash
104
+ end
105
+
106
+ # Checks equality by comparing each attribute.
107
+ # @param o [Object] Object to be compared
108
+ # @!visibility private
109
+ def ==(o)
110
+ return true if self.equal?(o)
111
+ self.class == o.class &&
112
+ data == o.data &&
113
+ additional_properties == o.additional_properties
114
+ end
115
+
116
+ # Calculates hash code according to all attributes.
117
+ # @return [Integer] Hash code
118
+ # @!visibility private
119
+ def hash
120
+ [data, additional_properties].hash
121
+ end
122
+ end
123
+ end