datadog_api_client 2.18.0 → 2.20.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.apigentools-info +4 -4
- data/.generator/conftest.py +1 -1
- data/.generator/poetry.lock +69 -69
- data/.generator/schemas/v1/openapi.yaml +286 -55
- data/.generator/schemas/v2/openapi.yaml +2021 -226
- data/.generator/src/generator/templates/api.j2 +5 -5
- data/.generator/src/generator/templates/model_generic.j2 +2 -2
- data/CHANGELOG.md +38 -0
- data/examples/v1/azure-integration/CreateAzureIntegration.rb +4 -4
- data/examples/v1/azure-integration/DeleteAzureIntegration.rb +2 -15
- data/examples/v1/azure-integration/UpdateAzureIntegration.rb +4 -4
- data/examples/v1/gcp-integration/CreateGCPIntegration.rb +4 -5
- data/examples/v1/gcp-integration/DeleteGCPIntegration.rb +2 -14
- data/examples/v1/gcp-integration/UpdateGCPIntegration.rb +4 -5
- data/examples/v1/logs-indexes/CreateLogsIndex.rb +5 -0
- data/examples/v1/logs-indexes/UpdateLogsIndex.rb +5 -0
- data/examples/v1/service-level-objectives/CreateSLO_3765703239.rb +46 -0
- data/examples/v1/synthetics/CreateSyntheticsAPITest.rb +1 -1
- data/examples/v1/synthetics/CreateSyntheticsBrowserTest.rb +1 -1
- data/examples/v1/synthetics/TriggerCITests.rb +1 -1
- data/examples/v1/synthetics/UpdateBrowserTest.rb +1 -1
- data/examples/v1/usage-metering/GetUsageLambda.rb +5 -2
- data/examples/v2/api-management/CreateOpenAPI.rb +11 -0
- data/examples/v2/api-management/DeleteOpenAPI.rb +11 -0
- data/examples/v2/api-management/GetOpenAPI.rb +11 -0
- data/examples/v2/api-management/UpdateOpenAPI.rb +14 -0
- data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent.rb +0 -3
- data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +0 -3
- data/examples/v2/cloud-cost-management/CreateCostAWSCURConfig.rb +18 -0
- data/examples/v2/cloud-cost-management/CreateCostAzureUCConfigs.rb +29 -0
- data/examples/v2/cloud-cost-management/DeleteCostAWSCURConfig.rb +5 -0
- data/examples/v2/cloud-cost-management/DeleteCostAzureUCConfig.rb +5 -0
- data/examples/v2/cloud-cost-management/GetCloudCostActivity.rb +5 -0
- data/examples/v2/cloud-cost-management/ListAWSRelatedAccounts.rb +5 -0
- data/examples/v2/cloud-cost-management/ListCostAWSCURConfigs.rb +5 -0
- data/examples/v2/cloud-cost-management/ListCostAzureUCConfigs.rb +5 -0
- data/examples/v2/cloud-cost-management/UpdateCostAWSCURConfig.rb +14 -0
- data/examples/v2/cloud-cost-management/UpdateCostAzureUCConfigs.rb +14 -0
- data/examples/v2/cloudflare-integration/CreateCloudflareAccount.rb +1 -1
- data/examples/v2/cloudflare-integration/UpdateCloudflareAccount.rb +4 -1
- data/examples/v2/downtimes/ListMonitorDowntimes_3316718253.rb +5 -0
- data/examples/v2/gcp-integration/CreateGCPSTSAccount_130557025.rb +16 -0
- data/examples/v2/gcp-integration/CreateGCPSTSAccount_2597004741.rb +16 -0
- data/examples/v2/gcp-integration/CreateGCPSTSAccount_4235664992.rb +17 -0
- data/examples/v2/gcp-integration/UpdateGCPSTSAccount_3205636354.rb +19 -0
- data/examples/v2/okta-integration/CreateOktaAccount.rb +1 -1
- data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_3367706049.rb +46 -0
- data/examples/v2/security-monitoring/CreateSecurityMonitoringSuppression.rb +19 -0
- data/examples/v2/security-monitoring/DeleteSecurityMonitoringSuppression.rb +8 -0
- data/examples/v2/security-monitoring/GetSecurityMonitoringSuppression.rb +8 -0
- data/examples/v2/security-monitoring/ListSecurityMonitoringSuppressions.rb +5 -0
- data/examples/v2/security-monitoring/UpdateSecurityMonitoringSuppression.rb +17 -0
- data/examples/v2/sensitive-data-scanner/CreateScanningRule.rb +7 -0
- data/examples/v2/sensitive-data-scanner/UpdateScanningRule.rb +7 -10
- data/examples/v2/teams/CreateTeamMembership.rb +6 -0
- data/examples/v2/teams/GetTeamMemberships_3799131168.rb +8 -0
- data/examples/v2/usage-metering/GetUsageLambdaTracedInvocations.rb +1 -1
- data/lib/datadog_api_client/configuration.rb +4 -1
- data/lib/datadog_api_client/inflector.rb +74 -0
- data/lib/datadog_api_client/v1/api/downtimes_api.rb +28 -7
- data/lib/datadog_api_client/v1/api/monitors_api.rb +1 -1
- data/lib/datadog_api_client/v1/api/organizations_api.rb +1 -1
- data/lib/datadog_api_client/v1/api/usage_metering_api.rb +3 -3
- data/lib/datadog_api_client/v1/models/dashboard.rb +5 -1
- data/lib/datadog_api_client/v1/models/dashboard_summary_definition.rb +2 -0
- data/lib/datadog_api_client/v1/models/gcp_account.rb +22 -2
- data/lib/datadog_api_client/v1/models/log.rb +1 -1
- data/lib/datadog_api_client/v1/models/logs_daily_limit_reset.rb +90 -0
- data/lib/datadog_api_client/v1/models/logs_index.rb +36 -1
- data/lib/datadog_api_client/v1/models/logs_index_update_request.rb +36 -1
- data/lib/datadog_api_client/v1/models/metrics_payload.rb +1 -1
- data/lib/datadog_api_client/v1/models/metrics_query_metadata.rb +1 -1
- data/lib/datadog_api_client/v1/models/organization.rb +1 -1
- data/lib/datadog_api_client/v1/models/service_level_objective.rb +11 -1
- data/lib/datadog_api_client/v1/models/service_level_objective_request.rb +11 -1
- data/lib/datadog_api_client/v1/models/slo_correction_create_request_attributes.rb +1 -1
- data/lib/datadog_api_client/v1/models/slo_correction_response_attributes.rb +1 -1
- data/lib/datadog_api_client/v1/models/slo_correction_update_request_attributes.rb +1 -1
- data/lib/datadog_api_client/v1/models/slo_data_source_query_definition.rb +62 -0
- data/lib/datadog_api_client/v1/models/slo_formula.rb +98 -0
- data/lib/datadog_api_client/v1/models/slo_history_metrics.rb +2 -2
- data/lib/datadog_api_client/v1/models/slo_history_metrics_series.rb +1 -1
- data/lib/datadog_api_client/v1/models/slo_history_monitor.rb +1 -1
- data/lib/datadog_api_client/v1/models/slo_history_sli_data.rb +1 -1
- data/lib/datadog_api_client/v1/models/slo_response_data.rb +11 -1
- data/lib/datadog_api_client/v1/models/slo_sli_spec.rb +62 -0
- data/lib/datadog_api_client/v1/models/slo_time_slice_comparator.rb +29 -0
- data/lib/datadog_api_client/v1/models/slo_time_slice_condition.rb +141 -0
- data/lib/datadog_api_client/v1/models/slo_time_slice_query.rb +131 -0
- data/lib/datadog_api_client/v1/models/slo_time_slice_spec.rb +99 -0
- data/lib/datadog_api_client/v1/models/slo_type.rb +1 -0
- data/lib/datadog_api_client/v1/models/slo_type_numeric.rb +1 -0
- data/lib/datadog_api_client/v1/models/split_config.rb +6 -6
- data/lib/datadog_api_client/v1/models/synthetics_test_request.rb +11 -1
- data/lib/datadog_api_client/v1/models/usage_lambda_hour.rb +1 -1
- data/lib/datadog_api_client/v1/models/usage_lambda_response.rb +1 -1
- data/lib/datadog_api_client/v1/models/usage_summary_date.rb +11 -1
- data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +11 -1
- data/lib/datadog_api_client/v1/models/usage_summary_response.rb +11 -1
- data/lib/datadog_api_client/v2/api/api_management_api.rb +319 -0
- data/lib/datadog_api_client/v2/api/ci_visibility_pipelines_api.rb +0 -6
- data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +680 -0
- data/lib/datadog_api_client/v2/api/downtimes_api.rb +25 -0
- data/lib/datadog_api_client/v2/api/metrics_api.rb +3 -2
- data/lib/datadog_api_client/v2/api/organizations_api.rb +1 -1
- data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +329 -0
- data/lib/datadog_api_client/v2/api/teams_api.rb +22 -0
- data/lib/datadog_api_client/v2/api/usage_metering_api.rb +3 -3
- data/lib/datadog_api_client/v2/models/aws_cur_config.rb +129 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_attributes.rb +305 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_patch_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request_attributes.rb +98 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_post_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_post_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_post_request_attributes.rb +202 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_post_request_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_response.rb +80 -0
- data/lib/datadog_api_client/v2/models/aws_cur_config_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/aws_cur_configs_response.rb +82 -0
- data/lib/datadog_api_client/v2/models/aws_related_account.rb +129 -0
- data/lib/datadog_api_client/v2/models/aws_related_account_attributes.rb +90 -0
- data/lib/datadog_api_client/v2/models/aws_related_account_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/aws_related_accounts_response.rb +82 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config.rb +378 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_pair.rb +129 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_pair_attributes.rb +110 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_pair_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_pairs_response.rb +80 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_patch_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request_attributes.rb +98 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_post_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_post_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_post_request_attributes.rb +192 -0
- data/lib/datadog_api_client/v2/models/azure_uc_config_post_request_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/azure_uc_configs_response.rb +82 -0
- data/lib/datadog_api_client/v2/models/bill_config.rb +161 -0
- data/lib/datadog_api_client/v2/models/ci_app_git_info.rb +2 -2
- data/lib/datadog_api_client/v2/models/cloud_cost_activity.rb +119 -0
- data/lib/datadog_api_client/v2/models/cloud_cost_activity_attributes.rb +98 -0
- data/lib/datadog_api_client/v2/models/cloud_cost_activity_response.rb +80 -0
- data/lib/datadog_api_client/v2/models/cloud_cost_activity_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/cloudflare_account_create_request_attributes.rb +28 -4
- data/lib/datadog_api_client/v2/models/cloudflare_account_response_attributes.rb +28 -4
- data/lib/datadog_api_client/v2/models/cloudflare_account_update_request_attributes.rb +28 -4
- data/lib/datadog_api_client/v2/models/create_open_api_response.rb +80 -0
- data/lib/datadog_api_client/v2/models/create_open_api_response_attributes.rb +82 -0
- data/lib/datadog_api_client/v2/models/create_open_api_response_data.rb +90 -0
- data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +11 -1
- data/lib/datadog_api_client/v2/models/dora_git_info.rb +2 -2
- data/lib/datadog_api_client/v2/models/dora_incident_request_attributes.rb +11 -1
- data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +25 -5
- data/lib/datadog_api_client/v2/models/metric_payload.rb +1 -1
- data/lib/datadog_api_client/v2/models/open_api_endpoint.rb +90 -0
- data/lib/datadog_api_client/v2/models/open_api_file.rb +80 -0
- data/lib/datadog_api_client/v2/models/relationship_to_user_team_team.rb +98 -0
- data/lib/datadog_api_client/v2/models/relationship_to_user_team_team_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +14 -4
- data/lib/datadog_api_client/v2/models/security_monitoring_rule_third_party_options.rb +114 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +13 -1
- data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +13 -1
- data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +13 -1
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression.rb +100 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_attributes.rb +198 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_create_attributes.rb +181 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_create_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_create_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_response.rb +80 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_type.rb +26 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_update_attributes.rb +166 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_update_data.rb +119 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppression_update_request.rb +98 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_suppressions_response.rb +82 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_third_party_root_query.rb +92 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_third_party_rule_case.rb +112 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_third_party_rule_case_create.rb +130 -0
- data/lib/datadog_api_client/v2/models/security_monitoring_user.rb +98 -0
- data/lib/datadog_api_client/v2/models/sensitive_data_scanner_included_keyword_configuration.rb +134 -0
- data/lib/datadog_api_client/v2/models/sensitive_data_scanner_rule_attributes.rb +46 -1
- data/lib/datadog_api_client/v2/models/sensitive_data_scanner_standard_pattern_attributes.rb +33 -1
- data/lib/datadog_api_client/v2/models/update_open_api_response.rb +80 -0
- data/lib/datadog_api_client/v2/models/update_open_api_response_attributes.rb +82 -0
- data/lib/datadog_api_client/v2/models/update_open_api_response_data.rb +90 -0
- data/lib/datadog_api_client/v2/models/user_team_attributes.rb +24 -1
- data/lib/datadog_api_client/v2/models/user_team_relationships.rb +11 -1
- data/lib/datadog_api_client/v2/models/user_team_team_type.rb +26 -0
- data/lib/datadog_api_client/version.rb +1 -1
- metadata +103 -3
- data/examples/v1/usage-metering/GetUsageLambda_3132428705.rb +0 -8
@@ -55,6 +55,9 @@ module DatadogAPIClient::V2
|
|
55
55
|
# Options on new value rules.
|
56
56
|
attr_accessor :new_value_options
|
57
57
|
|
58
|
+
# Options on third party rules.
|
59
|
+
attr_accessor :third_party_rule_options
|
60
|
+
|
58
61
|
# Attribute mapping from ruby-style variable name to JSON key.
|
59
62
|
# @!visibility private
|
60
63
|
def self.attribute_map
|
@@ -67,7 +70,8 @@ module DatadogAPIClient::V2
|
|
67
70
|
:'impossible_travel_options' => :'impossibleTravelOptions',
|
68
71
|
:'keep_alive' => :'keepAlive',
|
69
72
|
:'max_signal_duration' => :'maxSignalDuration',
|
70
|
-
:'new_value_options' => :'newValueOptions'
|
73
|
+
:'new_value_options' => :'newValueOptions',
|
74
|
+
:'third_party_rule_options' => :'thirdPartyRuleOptions'
|
71
75
|
}
|
72
76
|
end
|
73
77
|
|
@@ -83,7 +87,8 @@ module DatadogAPIClient::V2
|
|
83
87
|
:'impossible_travel_options' => :'SecurityMonitoringRuleImpossibleTravelOptions',
|
84
88
|
:'keep_alive' => :'SecurityMonitoringRuleKeepAlive',
|
85
89
|
:'max_signal_duration' => :'SecurityMonitoringRuleMaxSignalDuration',
|
86
|
-
:'new_value_options' => :'SecurityMonitoringRuleNewValueOptions'
|
90
|
+
:'new_value_options' => :'SecurityMonitoringRuleNewValueOptions',
|
91
|
+
:'third_party_rule_options' => :'SecurityMonitoringRuleThirdPartyOptions'
|
87
92
|
}
|
88
93
|
end
|
89
94
|
|
@@ -138,6 +143,10 @@ module DatadogAPIClient::V2
|
|
138
143
|
if attributes.key?(:'new_value_options')
|
139
144
|
self.new_value_options = attributes[:'new_value_options']
|
140
145
|
end
|
146
|
+
|
147
|
+
if attributes.key?(:'third_party_rule_options')
|
148
|
+
self.third_party_rule_options = attributes[:'third_party_rule_options']
|
149
|
+
end
|
141
150
|
end
|
142
151
|
|
143
152
|
# Checks equality by comparing each attribute.
|
@@ -154,14 +163,15 @@ module DatadogAPIClient::V2
|
|
154
163
|
impossible_travel_options == o.impossible_travel_options &&
|
155
164
|
keep_alive == o.keep_alive &&
|
156
165
|
max_signal_duration == o.max_signal_duration &&
|
157
|
-
new_value_options == o.new_value_options
|
166
|
+
new_value_options == o.new_value_options &&
|
167
|
+
third_party_rule_options == o.third_party_rule_options
|
158
168
|
end
|
159
169
|
|
160
170
|
# Calculates hash code according to all attributes.
|
161
171
|
# @return [Integer] Hash code
|
162
172
|
# @!visibility private
|
163
173
|
def hash
|
164
|
-
[compliance_rule_options, decrease_criticality_based_on_env, detection_method, evaluation_window, hardcoded_evaluator_type, impossible_travel_options, keep_alive, max_signal_duration, new_value_options].hash
|
174
|
+
[compliance_rule_options, decrease_criticality_based_on_env, detection_method, evaluation_window, hardcoded_evaluator_type, impossible_travel_options, keep_alive, max_signal_duration, new_value_options, third_party_rule_options].hash
|
165
175
|
end
|
166
176
|
end
|
167
177
|
end
|
@@ -0,0 +1,114 @@
|
|
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
|
+
# Options on third party rules.
|
21
|
+
class SecurityMonitoringRuleThirdPartyOptions
|
22
|
+
include BaseGenericModel
|
23
|
+
|
24
|
+
# Notification targets for the logs that do not correspond to any of the cases.
|
25
|
+
attr_accessor :default_notifications
|
26
|
+
|
27
|
+
# Severity of the Security Signal.
|
28
|
+
attr_accessor :default_status
|
29
|
+
|
30
|
+
# Queries to be combined with third party case queries. Each of them can have different group by fields, to aggregate differently based on the type of alert.
|
31
|
+
attr_accessor :root_queries
|
32
|
+
|
33
|
+
# A template for the signal title; if omitted, the title is generated based on the case name.
|
34
|
+
attr_accessor :signal_title_template
|
35
|
+
|
36
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
37
|
+
# @!visibility private
|
38
|
+
def self.attribute_map
|
39
|
+
{
|
40
|
+
:'default_notifications' => :'defaultNotifications',
|
41
|
+
:'default_status' => :'defaultStatus',
|
42
|
+
:'root_queries' => :'rootQueries',
|
43
|
+
:'signal_title_template' => :'signalTitleTemplate'
|
44
|
+
}
|
45
|
+
end
|
46
|
+
|
47
|
+
# Attribute type mapping.
|
48
|
+
# @!visibility private
|
49
|
+
def self.openapi_types
|
50
|
+
{
|
51
|
+
:'default_notifications' => :'Array<String>',
|
52
|
+
:'default_status' => :'SecurityMonitoringRuleSeverity',
|
53
|
+
:'root_queries' => :'Array<SecurityMonitoringThirdPartyRootQuery>',
|
54
|
+
:'signal_title_template' => :'String'
|
55
|
+
}
|
56
|
+
end
|
57
|
+
|
58
|
+
# Initializes the object
|
59
|
+
# @param attributes [Hash] Model attributes in the form of hash
|
60
|
+
# @!visibility private
|
61
|
+
def initialize(attributes = {})
|
62
|
+
if (!attributes.is_a?(Hash))
|
63
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringRuleThirdPartyOptions` initialize method"
|
64
|
+
end
|
65
|
+
|
66
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
67
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
68
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
69
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::SecurityMonitoringRuleThirdPartyOptions`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
70
|
+
end
|
71
|
+
h[k.to_sym] = v
|
72
|
+
}
|
73
|
+
|
74
|
+
if attributes.key?(:'default_notifications')
|
75
|
+
if (value = attributes[:'default_notifications']).is_a?(Array)
|
76
|
+
self.default_notifications = value
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
if attributes.key?(:'default_status')
|
81
|
+
self.default_status = attributes[:'default_status']
|
82
|
+
end
|
83
|
+
|
84
|
+
if attributes.key?(:'root_queries')
|
85
|
+
if (value = attributes[:'root_queries']).is_a?(Array)
|
86
|
+
self.root_queries = value
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
if attributes.key?(:'signal_title_template')
|
91
|
+
self.signal_title_template = attributes[:'signal_title_template']
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
# Checks equality by comparing each attribute.
|
96
|
+
# @param o [Object] Object to be compared
|
97
|
+
# @!visibility private
|
98
|
+
def ==(o)
|
99
|
+
return true if self.equal?(o)
|
100
|
+
self.class == o.class &&
|
101
|
+
default_notifications == o.default_notifications &&
|
102
|
+
default_status == o.default_status &&
|
103
|
+
root_queries == o.root_queries &&
|
104
|
+
signal_title_template == o.signal_title_template
|
105
|
+
end
|
106
|
+
|
107
|
+
# Calculates hash code according to all attributes.
|
108
|
+
# @return [Integer] Hash code
|
109
|
+
# @!visibility private
|
110
|
+
def hash
|
111
|
+
[default_notifications, default_status, root_queries, signal_title_template].hash
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
@@ -51,6 +51,9 @@ module DatadogAPIClient::V2
|
|
51
51
|
# Tags for generated signals.
|
52
52
|
attr_accessor :tags
|
53
53
|
|
54
|
+
# Cases for generating signals from third party rules. Only available for third party rules.
|
55
|
+
attr_accessor :third_party_cases
|
56
|
+
|
54
57
|
# The version of the rule being updated.
|
55
58
|
attr_reader :version
|
56
59
|
|
@@ -68,6 +71,7 @@ module DatadogAPIClient::V2
|
|
68
71
|
:'options' => :'options',
|
69
72
|
:'queries' => :'queries',
|
70
73
|
:'tags' => :'tags',
|
74
|
+
:'third_party_cases' => :'thirdPartyCases',
|
71
75
|
:'version' => :'version'
|
72
76
|
}
|
73
77
|
end
|
@@ -86,6 +90,7 @@ module DatadogAPIClient::V2
|
|
86
90
|
:'options' => :'SecurityMonitoringRuleOptions',
|
87
91
|
:'queries' => :'Array<SecurityMonitoringRuleQuery>',
|
88
92
|
:'tags' => :'Array<String>',
|
93
|
+
:'third_party_cases' => :'Array<SecurityMonitoringThirdPartyRuleCase>',
|
89
94
|
:'version' => :'Integer'
|
90
95
|
}
|
91
96
|
end
|
@@ -154,6 +159,12 @@ module DatadogAPIClient::V2
|
|
154
159
|
end
|
155
160
|
end
|
156
161
|
|
162
|
+
if attributes.key?(:'third_party_cases')
|
163
|
+
if (value = attributes[:'third_party_cases']).is_a?(Array)
|
164
|
+
self.third_party_cases = value
|
165
|
+
end
|
166
|
+
end
|
167
|
+
|
157
168
|
if attributes.key?(:'version')
|
158
169
|
self.version = attributes[:'version']
|
159
170
|
end
|
@@ -193,6 +204,7 @@ module DatadogAPIClient::V2
|
|
193
204
|
options == o.options &&
|
194
205
|
queries == o.queries &&
|
195
206
|
tags == o.tags &&
|
207
|
+
third_party_cases == o.third_party_cases &&
|
196
208
|
version == o.version
|
197
209
|
end
|
198
210
|
|
@@ -200,7 +212,7 @@ module DatadogAPIClient::V2
|
|
200
212
|
# @return [Integer] Hash code
|
201
213
|
# @!visibility private
|
202
214
|
def hash
|
203
|
-
[cases, compliance_signal_options, filters, has_extended_title, is_enabled, message, name, options, queries, tags, version].hash
|
215
|
+
[cases, compliance_signal_options, filters, has_extended_title, is_enabled, message, name, options, queries, tags, third_party_cases, version].hash
|
204
216
|
end
|
205
217
|
end
|
206
218
|
end
|
@@ -48,6 +48,9 @@ module DatadogAPIClient::V2
|
|
48
48
|
# Tags for generated signals.
|
49
49
|
attr_accessor :tags
|
50
50
|
|
51
|
+
# Cases for generating signals from third party rules. Only available for third party rules.
|
52
|
+
attr_accessor :third_party_cases
|
53
|
+
|
51
54
|
# The rule type.
|
52
55
|
attr_accessor :type
|
53
56
|
|
@@ -64,6 +67,7 @@ module DatadogAPIClient::V2
|
|
64
67
|
:'options' => :'options',
|
65
68
|
:'queries' => :'queries',
|
66
69
|
:'tags' => :'tags',
|
70
|
+
:'third_party_cases' => :'thirdPartyCases',
|
67
71
|
:'type' => :'type'
|
68
72
|
}
|
69
73
|
end
|
@@ -81,6 +85,7 @@ module DatadogAPIClient::V2
|
|
81
85
|
:'options' => :'SecurityMonitoringRuleOptions',
|
82
86
|
:'queries' => :'Array<SecurityMonitoringStandardRuleQuery>',
|
83
87
|
:'tags' => :'Array<String>',
|
88
|
+
:'third_party_cases' => :'Array<SecurityMonitoringThirdPartyRuleCaseCreate>',
|
84
89
|
:'type' => :'SecurityMonitoringRuleTypeCreate'
|
85
90
|
}
|
86
91
|
end
|
@@ -145,6 +150,12 @@ module DatadogAPIClient::V2
|
|
145
150
|
end
|
146
151
|
end
|
147
152
|
|
153
|
+
if attributes.key?(:'third_party_cases')
|
154
|
+
if (value = attributes[:'third_party_cases']).is_a?(Array)
|
155
|
+
self.third_party_cases = value
|
156
|
+
end
|
157
|
+
end
|
158
|
+
|
148
159
|
if attributes.key?(:'type')
|
149
160
|
self.type = attributes[:'type']
|
150
161
|
end
|
@@ -238,6 +249,7 @@ module DatadogAPIClient::V2
|
|
238
249
|
options == o.options &&
|
239
250
|
queries == o.queries &&
|
240
251
|
tags == o.tags &&
|
252
|
+
third_party_cases == o.third_party_cases &&
|
241
253
|
type == o.type
|
242
254
|
end
|
243
255
|
|
@@ -245,7 +257,7 @@ module DatadogAPIClient::V2
|
|
245
257
|
# @return [Integer] Hash code
|
246
258
|
# @!visibility private
|
247
259
|
def hash
|
248
|
-
[cases, filters, has_extended_title, is_enabled, message, name, options, queries, tags, type].hash
|
260
|
+
[cases, filters, has_extended_title, is_enabled, message, name, options, queries, tags, third_party_cases, type].hash
|
249
261
|
end
|
250
262
|
end
|
251
263
|
end
|
@@ -69,6 +69,9 @@ module DatadogAPIClient::V2
|
|
69
69
|
# Tags for generated signals.
|
70
70
|
attr_accessor :tags
|
71
71
|
|
72
|
+
# Cases for generating signals from third party rules. Only available for third party rules.
|
73
|
+
attr_accessor :third_party_cases
|
74
|
+
|
72
75
|
# The rule type.
|
73
76
|
attr_accessor :type
|
74
77
|
|
@@ -98,6 +101,7 @@ module DatadogAPIClient::V2
|
|
98
101
|
:'options' => :'options',
|
99
102
|
:'queries' => :'queries',
|
100
103
|
:'tags' => :'tags',
|
104
|
+
:'third_party_cases' => :'thirdPartyCases',
|
101
105
|
:'type' => :'type',
|
102
106
|
:'update_author_id' => :'updateAuthorId',
|
103
107
|
:'version' => :'version'
|
@@ -124,6 +128,7 @@ module DatadogAPIClient::V2
|
|
124
128
|
:'options' => :'SecurityMonitoringRuleOptions',
|
125
129
|
:'queries' => :'Array<SecurityMonitoringStandardRuleQuery>',
|
126
130
|
:'tags' => :'Array<String>',
|
131
|
+
:'third_party_cases' => :'Array<SecurityMonitoringThirdPartyRuleCase>',
|
127
132
|
:'type' => :'SecurityMonitoringRuleTypeRead',
|
128
133
|
:'update_author_id' => :'Integer',
|
129
134
|
:'version' => :'Integer'
|
@@ -218,6 +223,12 @@ module DatadogAPIClient::V2
|
|
218
223
|
end
|
219
224
|
end
|
220
225
|
|
226
|
+
if attributes.key?(:'third_party_cases')
|
227
|
+
if (value = attributes[:'third_party_cases']).is_a?(Array)
|
228
|
+
self.third_party_cases = value
|
229
|
+
end
|
230
|
+
end
|
231
|
+
|
221
232
|
if attributes.key?(:'type')
|
222
233
|
self.type = attributes[:'type']
|
223
234
|
end
|
@@ -253,6 +264,7 @@ module DatadogAPIClient::V2
|
|
253
264
|
options == o.options &&
|
254
265
|
queries == o.queries &&
|
255
266
|
tags == o.tags &&
|
267
|
+
third_party_cases == o.third_party_cases &&
|
256
268
|
type == o.type &&
|
257
269
|
update_author_id == o.update_author_id &&
|
258
270
|
version == o.version
|
@@ -262,7 +274,7 @@ module DatadogAPIClient::V2
|
|
262
274
|
# @return [Integer] Hash code
|
263
275
|
# @!visibility private
|
264
276
|
def hash
|
265
|
-
[cases, compliance_signal_options, created_at, creation_author_id, deprecation_date, filters, has_extended_title, id, is_default, is_deleted, is_enabled, message, name, options, queries, tags, type, update_author_id, version].hash
|
277
|
+
[cases, compliance_signal_options, created_at, creation_author_id, deprecation_date, filters, has_extended_title, id, is_default, is_deleted, is_enabled, message, name, options, queries, tags, third_party_cases, type, update_author_id, version].hash
|
266
278
|
end
|
267
279
|
end
|
268
280
|
end
|
@@ -0,0 +1,100 @@
|
|
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 suppression rule's properties.
|
21
|
+
class SecurityMonitoringSuppression
|
22
|
+
include BaseGenericModel
|
23
|
+
|
24
|
+
# The attributes of the suppression rule.
|
25
|
+
attr_accessor :attributes
|
26
|
+
|
27
|
+
# The ID of the suppression rule.
|
28
|
+
attr_accessor :id
|
29
|
+
|
30
|
+
# The type of the resource. The value should always be `suppressions`.
|
31
|
+
attr_accessor :type
|
32
|
+
|
33
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
34
|
+
# @!visibility private
|
35
|
+
def self.attribute_map
|
36
|
+
{
|
37
|
+
:'attributes' => :'attributes',
|
38
|
+
:'id' => :'id',
|
39
|
+
:'type' => :'type'
|
40
|
+
}
|
41
|
+
end
|
42
|
+
|
43
|
+
# Attribute type mapping.
|
44
|
+
# @!visibility private
|
45
|
+
def self.openapi_types
|
46
|
+
{
|
47
|
+
:'attributes' => :'SecurityMonitoringSuppressionAttributes',
|
48
|
+
:'id' => :'String',
|
49
|
+
:'type' => :'SecurityMonitoringSuppressionType'
|
50
|
+
}
|
51
|
+
end
|
52
|
+
|
53
|
+
# Initializes the object
|
54
|
+
# @param attributes [Hash] Model attributes in the form of hash
|
55
|
+
# @!visibility private
|
56
|
+
def initialize(attributes = {})
|
57
|
+
if (!attributes.is_a?(Hash))
|
58
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringSuppression` initialize method"
|
59
|
+
end
|
60
|
+
|
61
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
62
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
63
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
64
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::SecurityMonitoringSuppression`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
65
|
+
end
|
66
|
+
h[k.to_sym] = v
|
67
|
+
}
|
68
|
+
|
69
|
+
if attributes.key?(:'attributes')
|
70
|
+
self.attributes = attributes[:'attributes']
|
71
|
+
end
|
72
|
+
|
73
|
+
if attributes.key?(:'id')
|
74
|
+
self.id = attributes[:'id']
|
75
|
+
end
|
76
|
+
|
77
|
+
if attributes.key?(:'type')
|
78
|
+
self.type = attributes[:'type']
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
# Checks equality by comparing each attribute.
|
83
|
+
# @param o [Object] Object to be compared
|
84
|
+
# @!visibility private
|
85
|
+
def ==(o)
|
86
|
+
return true if self.equal?(o)
|
87
|
+
self.class == o.class &&
|
88
|
+
attributes == o.attributes &&
|
89
|
+
id == o.id &&
|
90
|
+
type == o.type
|
91
|
+
end
|
92
|
+
|
93
|
+
# Calculates hash code according to all attributes.
|
94
|
+
# @return [Integer] Hash code
|
95
|
+
# @!visibility private
|
96
|
+
def hash
|
97
|
+
[attributes, id, type].hash
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
@@ -0,0 +1,198 @@
|
|
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 attributes of the suppression rule.
|
21
|
+
class SecurityMonitoringSuppressionAttributes
|
22
|
+
include BaseGenericModel
|
23
|
+
|
24
|
+
# A Unix millisecond timestamp given the creation date of the suppression rule.
|
25
|
+
attr_accessor :creation_date
|
26
|
+
|
27
|
+
# A user.
|
28
|
+
attr_accessor :creator
|
29
|
+
|
30
|
+
# A description for the suppression rule.
|
31
|
+
attr_accessor :description
|
32
|
+
|
33
|
+
# Whether the suppression rule is enabled.
|
34
|
+
attr_accessor :enabled
|
35
|
+
|
36
|
+
# A Unix millisecond timestamp giving an expiration date for the suppression rule. After this date, it won't suppress signals anymore.
|
37
|
+
attr_accessor :expiration_date
|
38
|
+
|
39
|
+
# The name of the suppression rule.
|
40
|
+
attr_accessor :name
|
41
|
+
|
42
|
+
# The rule query of the suppression rule, with the same syntax as the search bar for detection rules.
|
43
|
+
attr_accessor :rule_query
|
44
|
+
|
45
|
+
# The suppression query of the suppression rule. If a signal matches this query, it is suppressed and not triggered. Same syntax as the queries to search signals in the signal explorer.
|
46
|
+
attr_accessor :suppression_query
|
47
|
+
|
48
|
+
# A Unix millisecond timestamp given the update date of the suppression rule.
|
49
|
+
attr_accessor :update_date
|
50
|
+
|
51
|
+
# A user.
|
52
|
+
attr_accessor :updater
|
53
|
+
|
54
|
+
# The version of the suppression rule; it starts at 1, and is incremented at each update.
|
55
|
+
attr_reader :version
|
56
|
+
|
57
|
+
# Attribute mapping from ruby-style variable name to JSON key.
|
58
|
+
# @!visibility private
|
59
|
+
def self.attribute_map
|
60
|
+
{
|
61
|
+
:'creation_date' => :'creation_date',
|
62
|
+
:'creator' => :'creator',
|
63
|
+
:'description' => :'description',
|
64
|
+
:'enabled' => :'enabled',
|
65
|
+
:'expiration_date' => :'expiration_date',
|
66
|
+
:'name' => :'name',
|
67
|
+
:'rule_query' => :'rule_query',
|
68
|
+
:'suppression_query' => :'suppression_query',
|
69
|
+
:'update_date' => :'update_date',
|
70
|
+
:'updater' => :'updater',
|
71
|
+
:'version' => :'version'
|
72
|
+
}
|
73
|
+
end
|
74
|
+
|
75
|
+
# Attribute type mapping.
|
76
|
+
# @!visibility private
|
77
|
+
def self.openapi_types
|
78
|
+
{
|
79
|
+
:'creation_date' => :'Integer',
|
80
|
+
:'creator' => :'SecurityMonitoringUser',
|
81
|
+
:'description' => :'String',
|
82
|
+
:'enabled' => :'Boolean',
|
83
|
+
:'expiration_date' => :'Integer',
|
84
|
+
:'name' => :'String',
|
85
|
+
:'rule_query' => :'String',
|
86
|
+
:'suppression_query' => :'String',
|
87
|
+
:'update_date' => :'Integer',
|
88
|
+
:'updater' => :'SecurityMonitoringUser',
|
89
|
+
:'version' => :'Integer'
|
90
|
+
}
|
91
|
+
end
|
92
|
+
|
93
|
+
# Initializes the object
|
94
|
+
# @param attributes [Hash] Model attributes in the form of hash
|
95
|
+
# @!visibility private
|
96
|
+
def initialize(attributes = {})
|
97
|
+
if (!attributes.is_a?(Hash))
|
98
|
+
fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::SecurityMonitoringSuppressionAttributes` initialize method"
|
99
|
+
end
|
100
|
+
|
101
|
+
# check to see if the attribute exists and convert string to symbol for hash key
|
102
|
+
attributes = attributes.each_with_object({}) { |(k, v), h|
|
103
|
+
if (!self.class.attribute_map.key?(k.to_sym))
|
104
|
+
fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::SecurityMonitoringSuppressionAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
|
105
|
+
end
|
106
|
+
h[k.to_sym] = v
|
107
|
+
}
|
108
|
+
|
109
|
+
if attributes.key?(:'creation_date')
|
110
|
+
self.creation_date = attributes[:'creation_date']
|
111
|
+
end
|
112
|
+
|
113
|
+
if attributes.key?(:'creator')
|
114
|
+
self.creator = attributes[:'creator']
|
115
|
+
end
|
116
|
+
|
117
|
+
if attributes.key?(:'description')
|
118
|
+
self.description = attributes[:'description']
|
119
|
+
end
|
120
|
+
|
121
|
+
if attributes.key?(:'enabled')
|
122
|
+
self.enabled = attributes[:'enabled']
|
123
|
+
end
|
124
|
+
|
125
|
+
if attributes.key?(:'expiration_date')
|
126
|
+
self.expiration_date = attributes[:'expiration_date']
|
127
|
+
end
|
128
|
+
|
129
|
+
if attributes.key?(:'name')
|
130
|
+
self.name = attributes[:'name']
|
131
|
+
end
|
132
|
+
|
133
|
+
if attributes.key?(:'rule_query')
|
134
|
+
self.rule_query = attributes[:'rule_query']
|
135
|
+
end
|
136
|
+
|
137
|
+
if attributes.key?(:'suppression_query')
|
138
|
+
self.suppression_query = attributes[:'suppression_query']
|
139
|
+
end
|
140
|
+
|
141
|
+
if attributes.key?(:'update_date')
|
142
|
+
self.update_date = attributes[:'update_date']
|
143
|
+
end
|
144
|
+
|
145
|
+
if attributes.key?(:'updater')
|
146
|
+
self.updater = attributes[:'updater']
|
147
|
+
end
|
148
|
+
|
149
|
+
if attributes.key?(:'version')
|
150
|
+
self.version = attributes[:'version']
|
151
|
+
end
|
152
|
+
end
|
153
|
+
|
154
|
+
# Check to see if the all the properties in the model are valid
|
155
|
+
# @return true if the model is valid
|
156
|
+
# @!visibility private
|
157
|
+
def valid?
|
158
|
+
return false if !@version.nil? && @version > 2147483647
|
159
|
+
true
|
160
|
+
end
|
161
|
+
|
162
|
+
# Custom attribute writer method with validation
|
163
|
+
# @param version [Object] Object to be assigned
|
164
|
+
# @!visibility private
|
165
|
+
def version=(version)
|
166
|
+
if !version.nil? && version > 2147483647
|
167
|
+
fail ArgumentError, 'invalid value for "version", must be smaller than or equal to 2147483647.'
|
168
|
+
end
|
169
|
+
@version = version
|
170
|
+
end
|
171
|
+
|
172
|
+
# Checks equality by comparing each attribute.
|
173
|
+
# @param o [Object] Object to be compared
|
174
|
+
# @!visibility private
|
175
|
+
def ==(o)
|
176
|
+
return true if self.equal?(o)
|
177
|
+
self.class == o.class &&
|
178
|
+
creation_date == o.creation_date &&
|
179
|
+
creator == o.creator &&
|
180
|
+
description == o.description &&
|
181
|
+
enabled == o.enabled &&
|
182
|
+
expiration_date == o.expiration_date &&
|
183
|
+
name == o.name &&
|
184
|
+
rule_query == o.rule_query &&
|
185
|
+
suppression_query == o.suppression_query &&
|
186
|
+
update_date == o.update_date &&
|
187
|
+
updater == o.updater &&
|
188
|
+
version == o.version
|
189
|
+
end
|
190
|
+
|
191
|
+
# Calculates hash code according to all attributes.
|
192
|
+
# @return [Integer] Hash code
|
193
|
+
# @!visibility private
|
194
|
+
def hash
|
195
|
+
[creation_date, creator, description, enabled, expiration_date, name, rule_query, suppression_query, update_date, updater, version].hash
|
196
|
+
end
|
197
|
+
end
|
198
|
+
end
|