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,155 @@
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
+ # Extra information about the exclusion filter.
21
+ class ApplicationSecurityWafExclusionFilterMetadata
22
+ include BaseGenericModel
23
+
24
+ # The creation date of the exclusion filter.
25
+ attr_accessor :added_at
26
+
27
+ # The handle of the user who created the exclusion filter.
28
+ attr_accessor :added_by
29
+
30
+ # The name of the user who created the exclusion filter.
31
+ attr_accessor :added_by_name
32
+
33
+ # The last modification date of the exclusion filter.
34
+ attr_accessor :modified_at
35
+
36
+ # The handle of the user who last modified the exclusion filter.
37
+ attr_accessor :modified_by
38
+
39
+ # The name of the user who last modified the exclusion filter.
40
+ attr_accessor :modified_by_name
41
+
42
+ attr_accessor :additional_properties
43
+
44
+ # Attribute mapping from ruby-style variable name to JSON key.
45
+ # @!visibility private
46
+ def self.attribute_map
47
+ {
48
+ :'added_at' => :'added_at',
49
+ :'added_by' => :'added_by',
50
+ :'added_by_name' => :'added_by_name',
51
+ :'modified_at' => :'modified_at',
52
+ :'modified_by' => :'modified_by',
53
+ :'modified_by_name' => :'modified_by_name'
54
+ }
55
+ end
56
+
57
+ # Attribute type mapping.
58
+ # @!visibility private
59
+ def self.openapi_types
60
+ {
61
+ :'added_at' => :'Time',
62
+ :'added_by' => :'String',
63
+ :'added_by_name' => :'String',
64
+ :'modified_at' => :'Time',
65
+ :'modified_by' => :'String',
66
+ :'modified_by_name' => :'String'
67
+ }
68
+ end
69
+
70
+ # Initializes the object
71
+ # @param attributes [Hash] Model attributes in the form of hash
72
+ # @!visibility private
73
+ def initialize(attributes = {})
74
+ if (!attributes.is_a?(Hash))
75
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterMetadata` initialize method"
76
+ end
77
+
78
+ self.additional_properties = {}
79
+ # check to see if the attribute exists and convert string to symbol for hash key
80
+ attributes = attributes.each_with_object({}) { |(k, v), h|
81
+ if (!self.class.attribute_map.key?(k.to_sym))
82
+ self.additional_properties[k.to_sym] = v
83
+ else
84
+ h[k.to_sym] = v
85
+ end
86
+ }
87
+
88
+ if attributes.key?(:'added_at')
89
+ self.added_at = attributes[:'added_at']
90
+ end
91
+
92
+ if attributes.key?(:'added_by')
93
+ self.added_by = attributes[:'added_by']
94
+ end
95
+
96
+ if attributes.key?(:'added_by_name')
97
+ self.added_by_name = attributes[:'added_by_name']
98
+ end
99
+
100
+ if attributes.key?(:'modified_at')
101
+ self.modified_at = attributes[:'modified_at']
102
+ end
103
+
104
+ if attributes.key?(:'modified_by')
105
+ self.modified_by = attributes[:'modified_by']
106
+ end
107
+
108
+ if attributes.key?(:'modified_by_name')
109
+ self.modified_by_name = attributes[:'modified_by_name']
110
+ end
111
+ end
112
+
113
+ # Returns the object in the form of hash, with additionalProperties support.
114
+ # @return [Hash] Returns the object in the form of hash
115
+ # @!visibility private
116
+ def to_hash
117
+ hash = {}
118
+ self.class.attribute_map.each_pair do |attr, param|
119
+ value = self.send(attr)
120
+ if value.nil?
121
+ is_nullable = self.class.openapi_nullable.include?(attr)
122
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
123
+ end
124
+
125
+ hash[param] = _to_hash(value)
126
+ end
127
+ self.additional_properties.each_pair do |attr, value|
128
+ hash[attr] = value
129
+ end
130
+ hash
131
+ end
132
+
133
+ # Checks equality by comparing each attribute.
134
+ # @param o [Object] Object to be compared
135
+ # @!visibility private
136
+ def ==(o)
137
+ return true if self.equal?(o)
138
+ self.class == o.class &&
139
+ added_at == o.added_at &&
140
+ added_by == o.added_by &&
141
+ added_by_name == o.added_by_name &&
142
+ modified_at == o.modified_at &&
143
+ modified_by == o.modified_by &&
144
+ modified_by_name == o.modified_by_name &&
145
+ additional_properties == o.additional_properties
146
+ end
147
+
148
+ # Calculates hash code according to all attributes.
149
+ # @return [Integer] Hash code
150
+ # @!visibility private
151
+ def hash
152
+ [added_at, added_by, added_by_name, modified_at, modified_by, modified_by_name, additional_properties].hash
153
+ end
154
+ end
155
+ end
@@ -0,0 +1,26 @@
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
+ # 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.
21
+ class ApplicationSecurityWafExclusionFilterOnMatch
22
+ include BaseEnumModel
23
+
24
+ MONITOR = "monitor".freeze
25
+ end
26
+ end
@@ -0,0 +1,125 @@
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
+ # A JSON:API resource for an WAF exclusion filter.
21
+ class ApplicationSecurityWafExclusionFilterResource
22
+ include BaseGenericModel
23
+
24
+ # Attributes describing a WAF exclusion filter.
25
+ attr_accessor :attributes
26
+
27
+ # The identifier of the WAF exclusion filter.
28
+ attr_accessor :id
29
+
30
+ # Type of the resource. The value should always be `exclusion_filter`.
31
+ attr_accessor :type
32
+
33
+ attr_accessor :additional_properties
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ # @!visibility private
37
+ def self.attribute_map
38
+ {
39
+ :'attributes' => :'attributes',
40
+ :'id' => :'id',
41
+ :'type' => :'type'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'attributes' => :'ApplicationSecurityWafExclusionFilterAttributes',
50
+ :'id' => :'String',
51
+ :'type' => :'ApplicationSecurityWafExclusionFilterType'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param attributes [Hash] Model attributes in the form of hash
57
+ # @!visibility private
58
+ def initialize(attributes = {})
59
+ if (!attributes.is_a?(Hash))
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::ApplicationSecurityWafExclusionFilterResource` initialize method"
61
+ end
62
+
63
+ self.additional_properties = {}
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h|
66
+ if (!self.class.attribute_map.key?(k.to_sym))
67
+ self.additional_properties[k.to_sym] = v
68
+ else
69
+ h[k.to_sym] = v
70
+ end
71
+ }
72
+
73
+ if attributes.key?(:'attributes')
74
+ self.attributes = attributes[:'attributes']
75
+ end
76
+
77
+ if attributes.key?(:'id')
78
+ self.id = attributes[:'id']
79
+ end
80
+
81
+ if attributes.key?(:'type')
82
+ self.type = attributes[:'type']
83
+ end
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
+ attributes == o.attributes &&
113
+ id == o.id &&
114
+ type == o.type &&
115
+ additional_properties == o.additional_properties
116
+ end
117
+
118
+ # Calculates hash code according to all attributes.
119
+ # @return [Integer] Hash code
120
+ # @!visibility private
121
+ def hash
122
+ [attributes, id, type, additional_properties].hash
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,105 @@
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
+ # Response object for a single WAF exclusion filter.
21
+ class ApplicationSecurityWafExclusionFilterResponse
22
+ include BaseGenericModel
23
+
24
+ # A JSON:API resource for an WAF exclusion filter.
25
+ attr_accessor :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' => :'ApplicationSecurityWafExclusionFilterResource'
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::ApplicationSecurityWafExclusionFilterResponse` 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
+ # Returns the object in the form of hash, with additionalProperties support.
69
+ # @return [Hash] Returns the object in the form of hash
70
+ # @!visibility private
71
+ def to_hash
72
+ hash = {}
73
+ self.class.attribute_map.each_pair do |attr, param|
74
+ value = self.send(attr)
75
+ if value.nil?
76
+ is_nullable = self.class.openapi_nullable.include?(attr)
77
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
78
+ end
79
+
80
+ hash[param] = _to_hash(value)
81
+ end
82
+ self.additional_properties.each_pair do |attr, value|
83
+ hash[attr] = value
84
+ end
85
+ hash
86
+ end
87
+
88
+ # Checks equality by comparing each attribute.
89
+ # @param o [Object] Object to be compared
90
+ # @!visibility private
91
+ def ==(o)
92
+ return true if self.equal?(o)
93
+ self.class == o.class &&
94
+ data == o.data &&
95
+ additional_properties == o.additional_properties
96
+ end
97
+
98
+ # Calculates hash code according to all attributes.
99
+ # @return [Integer] Hash code
100
+ # @!visibility private
101
+ def hash
102
+ [data, additional_properties].hash
103
+ end
104
+ end
105
+ end
@@ -0,0 +1,115 @@
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
+ # Target WAF rules based either on an identifier or tags.
21
+ class ApplicationSecurityWafExclusionFilterRulesTarget
22
+ include BaseGenericModel
23
+
24
+ # Target a single WAF rule based on its identifier.
25
+ attr_accessor :rule_id
26
+
27
+ # Target multiple WAF rules based on their tags.
28
+ attr_accessor :tags
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
+ :'rule_id' => :'rule_id',
37
+ :'tags' => :'tags'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'rule_id' => :'String',
46
+ :'tags' => :'ApplicationSecurityWafExclusionFilterRulesTargetTags'
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::ApplicationSecurityWafExclusionFilterRulesTarget` 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?(:'rule_id')
69
+ self.rule_id = attributes[:'rule_id']
70
+ end
71
+
72
+ if attributes.key?(:'tags')
73
+ self.tags = attributes[:'tags']
74
+ end
75
+ end
76
+
77
+ # Returns the object in the form of hash, with additionalProperties support.
78
+ # @return [Hash] Returns the object in the form of hash
79
+ # @!visibility private
80
+ def to_hash
81
+ hash = {}
82
+ self.class.attribute_map.each_pair do |attr, param|
83
+ value = self.send(attr)
84
+ if value.nil?
85
+ is_nullable = self.class.openapi_nullable.include?(attr)
86
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
87
+ end
88
+
89
+ hash[param] = _to_hash(value)
90
+ end
91
+ self.additional_properties.each_pair do |attr, value|
92
+ hash[attr] = value
93
+ end
94
+ hash
95
+ end
96
+
97
+ # Checks equality by comparing each attribute.
98
+ # @param o [Object] Object to be compared
99
+ # @!visibility private
100
+ def ==(o)
101
+ return true if self.equal?(o)
102
+ self.class == o.class &&
103
+ rule_id == o.rule_id &&
104
+ tags == o.tags &&
105
+ additional_properties == o.additional_properties
106
+ end
107
+
108
+ # Calculates hash code according to all attributes.
109
+ # @return [Integer] Hash code
110
+ # @!visibility private
111
+ def hash
112
+ [rule_id, tags, additional_properties].hash
113
+ end
114
+ end
115
+ end
@@ -0,0 +1,115 @@
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
+ # Target multiple WAF rules based on their tags.
21
+ class ApplicationSecurityWafExclusionFilterRulesTargetTags
22
+ include BaseGenericModel
23
+
24
+ # The category of the targeted WAF rules.
25
+ attr_accessor :category
26
+
27
+ # The type of the targeted WAF rules.
28
+ attr_accessor :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
+ :'category' => :'category',
37
+ :'type' => :'type'
38
+ }
39
+ end
40
+
41
+ # Attribute type mapping.
42
+ # @!visibility private
43
+ def self.openapi_types
44
+ {
45
+ :'category' => :'String',
46
+ :'type' => :'String'
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::ApplicationSecurityWafExclusionFilterRulesTargetTags` 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?(:'category')
69
+ self.category = attributes[:'category']
70
+ end
71
+
72
+ if attributes.key?(:'type')
73
+ self.type = attributes[:'type']
74
+ end
75
+ end
76
+
77
+ # Returns the object in the form of hash, with additionalProperties support.
78
+ # @return [Hash] Returns the object in the form of hash
79
+ # @!visibility private
80
+ def to_hash
81
+ hash = {}
82
+ self.class.attribute_map.each_pair do |attr, param|
83
+ value = self.send(attr)
84
+ if value.nil?
85
+ is_nullable = self.class.openapi_nullable.include?(attr)
86
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
87
+ end
88
+
89
+ hash[param] = _to_hash(value)
90
+ end
91
+ self.additional_properties.each_pair do |attr, value|
92
+ hash[attr] = value
93
+ end
94
+ hash
95
+ end
96
+
97
+ # Checks equality by comparing each attribute.
98
+ # @param o [Object] Object to be compared
99
+ # @!visibility private
100
+ def ==(o)
101
+ return true if self.equal?(o)
102
+ self.class == o.class &&
103
+ category == o.category &&
104
+ type == o.type &&
105
+ additional_properties == o.additional_properties
106
+ end
107
+
108
+ # Calculates hash code according to all attributes.
109
+ # @return [Integer] Hash code
110
+ # @!visibility private
111
+ def hash
112
+ [category, type, additional_properties].hash
113
+ end
114
+ end
115
+ end