datadog_api_client 2.18.0 → 2.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/conftest.py +1 -1
  4. data/.generator/poetry.lock +69 -69
  5. data/.generator/schemas/v1/openapi.yaml +189 -11
  6. data/.generator/schemas/v2/openapi.yaml +1321 -188
  7. data/.generator/src/generator/templates/model_generic.j2 +2 -2
  8. data/CHANGELOG.md +18 -0
  9. data/examples/v1/azure-integration/CreateAzureIntegration.rb +4 -4
  10. data/examples/v1/azure-integration/DeleteAzureIntegration.rb +2 -15
  11. data/examples/v1/azure-integration/UpdateAzureIntegration.rb +4 -4
  12. data/examples/v1/gcp-integration/CreateGCPIntegration.rb +4 -5
  13. data/examples/v1/gcp-integration/DeleteGCPIntegration.rb +2 -14
  14. data/examples/v1/gcp-integration/UpdateGCPIntegration.rb +4 -5
  15. data/examples/v1/service-level-objectives/CreateSLO_3765703239.rb +46 -0
  16. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent.rb +0 -3
  17. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +0 -3
  18. data/examples/v2/cloud-cost-management/CreateCostAWSCURConfig.rb +18 -0
  19. data/examples/v2/cloud-cost-management/CreateCostAzureUCConfigs.rb +29 -0
  20. data/examples/v2/cloud-cost-management/DeleteCostAWSCURConfig.rb +5 -0
  21. data/examples/v2/cloud-cost-management/DeleteCostAzureUCConfig.rb +5 -0
  22. data/examples/v2/cloud-cost-management/GetCloudCostActivity.rb +5 -0
  23. data/examples/v2/cloud-cost-management/ListAWSRelatedAccounts.rb +5 -0
  24. data/examples/v2/cloud-cost-management/ListCostAWSCURConfigs.rb +5 -0
  25. data/examples/v2/cloud-cost-management/ListCostAzureUCConfigs.rb +5 -0
  26. data/examples/v2/cloud-cost-management/UpdateCostAWSCURConfig.rb +14 -0
  27. data/examples/v2/cloud-cost-management/UpdateCostAzureUCConfigs.rb +14 -0
  28. data/examples/v2/cloudflare-integration/CreateCloudflareAccount.rb +1 -1
  29. data/examples/v2/cloudflare-integration/UpdateCloudflareAccount.rb +4 -1
  30. data/examples/v2/downtimes/ListMonitorDowntimes_3316718253.rb +5 -0
  31. data/examples/v2/gcp-integration/CreateGCPSTSAccount_130557025.rb +16 -0
  32. data/examples/v2/gcp-integration/CreateGCPSTSAccount_2597004741.rb +16 -0
  33. data/examples/v2/gcp-integration/CreateGCPSTSAccount_4235664992.rb +17 -0
  34. data/examples/v2/gcp-integration/UpdateGCPSTSAccount_3205636354.rb +19 -0
  35. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_3367706049.rb +46 -0
  36. data/examples/v2/sensitive-data-scanner/CreateScanningRule.rb +7 -0
  37. data/examples/v2/sensitive-data-scanner/UpdateScanningRule.rb +7 -10
  38. data/examples/v2/teams/CreateTeamMembership.rb +6 -0
  39. data/lib/datadog_api_client/configuration.rb +0 -1
  40. data/lib/datadog_api_client/inflector.rb +52 -0
  41. data/lib/datadog_api_client/v1/api/downtimes_api.rb +28 -7
  42. data/lib/datadog_api_client/v1/api/monitors_api.rb +1 -1
  43. data/lib/datadog_api_client/v1/models/gcp_account.rb +22 -2
  44. data/lib/datadog_api_client/v1/models/organization.rb +1 -1
  45. data/lib/datadog_api_client/v1/models/service_level_objective.rb +11 -1
  46. data/lib/datadog_api_client/v1/models/service_level_objective_request.rb +11 -1
  47. data/lib/datadog_api_client/v1/models/slo_data_source_query_definition.rb +62 -0
  48. data/lib/datadog_api_client/v1/models/slo_formula.rb +98 -0
  49. data/lib/datadog_api_client/v1/models/slo_response_data.rb +11 -1
  50. data/lib/datadog_api_client/v1/models/slo_sli_spec.rb +62 -0
  51. data/lib/datadog_api_client/v1/models/slo_time_slice_comparator.rb +29 -0
  52. data/lib/datadog_api_client/v1/models/slo_time_slice_condition.rb +141 -0
  53. data/lib/datadog_api_client/v1/models/slo_time_slice_query.rb +131 -0
  54. data/lib/datadog_api_client/v1/models/slo_time_slice_spec.rb +99 -0
  55. data/lib/datadog_api_client/v1/models/slo_type.rb +1 -0
  56. data/lib/datadog_api_client/v1/models/slo_type_numeric.rb +1 -0
  57. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +11 -1
  58. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +11 -1
  59. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +11 -1
  60. data/lib/datadog_api_client/v2/api/ci_visibility_pipelines_api.rb +0 -6
  61. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +680 -0
  62. data/lib/datadog_api_client/v2/api/downtimes_api.rb +25 -0
  63. data/lib/datadog_api_client/v2/api/metrics_api.rb +3 -2
  64. data/lib/datadog_api_client/v2/models/aws_cur_config.rb +129 -0
  65. data/lib/datadog_api_client/v2/models/aws_cur_config_attributes.rb +305 -0
  66. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_data.rb +119 -0
  67. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request.rb +98 -0
  68. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request_attributes.rb +98 -0
  69. data/lib/datadog_api_client/v2/models/aws_cur_config_patch_request_type.rb +26 -0
  70. data/lib/datadog_api_client/v2/models/aws_cur_config_post_data.rb +119 -0
  71. data/lib/datadog_api_client/v2/models/aws_cur_config_post_request.rb +98 -0
  72. data/lib/datadog_api_client/v2/models/aws_cur_config_post_request_attributes.rb +202 -0
  73. data/lib/datadog_api_client/v2/models/aws_cur_config_post_request_type.rb +26 -0
  74. data/lib/datadog_api_client/v2/models/aws_cur_config_response.rb +80 -0
  75. data/lib/datadog_api_client/v2/models/aws_cur_config_type.rb +26 -0
  76. data/lib/datadog_api_client/v2/models/aws_cur_configs_response.rb +82 -0
  77. data/lib/datadog_api_client/v2/models/aws_related_account.rb +129 -0
  78. data/lib/datadog_api_client/v2/models/aws_related_account_attributes.rb +90 -0
  79. data/lib/datadog_api_client/v2/models/aws_related_account_type.rb +26 -0
  80. data/lib/datadog_api_client/v2/models/aws_related_accounts_response.rb +82 -0
  81. data/lib/datadog_api_client/v2/models/azure_uc_config.rb +378 -0
  82. data/lib/datadog_api_client/v2/models/azure_uc_config_pair.rb +129 -0
  83. data/lib/datadog_api_client/v2/models/azure_uc_config_pair_attributes.rb +110 -0
  84. data/lib/datadog_api_client/v2/models/azure_uc_config_pair_type.rb +26 -0
  85. data/lib/datadog_api_client/v2/models/azure_uc_config_pairs_response.rb +80 -0
  86. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_data.rb +119 -0
  87. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request.rb +98 -0
  88. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request_attributes.rb +98 -0
  89. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_request_type.rb +26 -0
  90. data/lib/datadog_api_client/v2/models/azure_uc_config_post_data.rb +119 -0
  91. data/lib/datadog_api_client/v2/models/azure_uc_config_post_request.rb +98 -0
  92. data/lib/datadog_api_client/v2/models/azure_uc_config_post_request_attributes.rb +192 -0
  93. data/lib/datadog_api_client/v2/models/azure_uc_config_post_request_type.rb +26 -0
  94. data/lib/datadog_api_client/v2/models/azure_uc_configs_response.rb +82 -0
  95. data/lib/datadog_api_client/v2/models/bill_config.rb +161 -0
  96. data/lib/datadog_api_client/v2/models/ci_app_git_info.rb +2 -2
  97. data/lib/datadog_api_client/v2/models/cloud_cost_activity.rb +119 -0
  98. data/lib/datadog_api_client/v2/models/cloud_cost_activity_attributes.rb +98 -0
  99. data/lib/datadog_api_client/v2/models/cloud_cost_activity_response.rb +80 -0
  100. data/lib/datadog_api_client/v2/models/cloud_cost_activity_type.rb +26 -0
  101. data/lib/datadog_api_client/v2/models/cloudflare_account_create_request_attributes.rb +28 -4
  102. data/lib/datadog_api_client/v2/models/cloudflare_account_response_attributes.rb +28 -4
  103. data/lib/datadog_api_client/v2/models/cloudflare_account_update_request_attributes.rb +28 -4
  104. data/lib/datadog_api_client/v2/models/dora_git_info.rb +2 -2
  105. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +25 -5
  106. data/lib/datadog_api_client/v2/models/relationship_to_user_team_team.rb +98 -0
  107. data/lib/datadog_api_client/v2/models/relationship_to_user_team_team_data.rb +119 -0
  108. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +14 -4
  109. data/lib/datadog_api_client/v2/models/security_monitoring_rule_third_party_options.rb +114 -0
  110. data/lib/datadog_api_client/v2/models/security_monitoring_rule_update_payload.rb +13 -1
  111. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_create_payload.rb +13 -1
  112. data/lib/datadog_api_client/v2/models/security_monitoring_standard_rule_response.rb +13 -1
  113. data/lib/datadog_api_client/v2/models/security_monitoring_third_party_root_query.rb +92 -0
  114. data/lib/datadog_api_client/v2/models/security_monitoring_third_party_rule_case.rb +112 -0
  115. data/lib/datadog_api_client/v2/models/security_monitoring_third_party_rule_case_create.rb +130 -0
  116. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_included_keyword_configuration.rb +134 -0
  117. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_rule_attributes.rb +46 -1
  118. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_standard_pattern_attributes.rb +33 -1
  119. data/lib/datadog_api_client/v2/models/user_team_attributes.rb +24 -1
  120. data/lib/datadog_api_client/v2/models/user_team_relationships.rb +11 -1
  121. data/lib/datadog_api_client/v2/models/user_team_team_type.rb +26 -0
  122. data/lib/datadog_api_client/version.rb +1 -1
  123. metadata +71 -2
@@ -0,0 +1,378 @@
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
+ # Azure config.
21
+ class AzureUCConfig
22
+ include BaseGenericModel
23
+
24
+ # The tenant ID of the azure account.
25
+ attr_reader :account_id
26
+
27
+ # The client ID of the Azure account.
28
+ attr_reader :client_id
29
+
30
+ # The timestamp when the Azure config was created.
31
+ attr_reader :created_at
32
+
33
+ # The dataset type of the Azure config.
34
+ attr_reader :dataset_type
35
+
36
+ # The error messages for the Azure config.
37
+ attr_accessor :error_messages
38
+
39
+ # The name of the configured Azure Export.
40
+ attr_reader :export_name
41
+
42
+ # The path where the Azure Export is saved.
43
+ attr_reader :export_path
44
+
45
+ # The ID of the Azure config.
46
+ attr_accessor :id
47
+
48
+ # The number of months the report has been backfilled.
49
+ attr_reader :months
50
+
51
+ # The scope of your observed subscription.
52
+ attr_reader :scope
53
+
54
+ # The status of the Azure config.
55
+ attr_reader :status
56
+
57
+ # The timestamp when the Azure config status was last updated.
58
+ attr_reader :status_updated_at
59
+
60
+ # The name of the storage account where the Azure Export is saved.
61
+ attr_reader :storage_account
62
+
63
+ # The name of the storage container where the Azure Export is saved.
64
+ attr_reader :storage_container
65
+
66
+ # The timestamp when the Azure config was last updated.
67
+ attr_reader :updated_at
68
+
69
+ # Attribute mapping from ruby-style variable name to JSON key.
70
+ # @!visibility private
71
+ def self.attribute_map
72
+ {
73
+ :'account_id' => :'account_id',
74
+ :'client_id' => :'client_id',
75
+ :'created_at' => :'created_at',
76
+ :'dataset_type' => :'dataset_type',
77
+ :'error_messages' => :'error_messages',
78
+ :'export_name' => :'export_name',
79
+ :'export_path' => :'export_path',
80
+ :'id' => :'id',
81
+ :'months' => :'months',
82
+ :'scope' => :'scope',
83
+ :'status' => :'status',
84
+ :'status_updated_at' => :'status_updated_at',
85
+ :'storage_account' => :'storage_account',
86
+ :'storage_container' => :'storage_container',
87
+ :'updated_at' => :'updated_at'
88
+ }
89
+ end
90
+
91
+ # Attribute type mapping.
92
+ # @!visibility private
93
+ def self.openapi_types
94
+ {
95
+ :'account_id' => :'String',
96
+ :'client_id' => :'String',
97
+ :'created_at' => :'String',
98
+ :'dataset_type' => :'String',
99
+ :'error_messages' => :'Array<String>',
100
+ :'export_name' => :'String',
101
+ :'export_path' => :'String',
102
+ :'id' => :'Integer',
103
+ :'months' => :'Integer',
104
+ :'scope' => :'String',
105
+ :'status' => :'String',
106
+ :'status_updated_at' => :'String',
107
+ :'storage_account' => :'String',
108
+ :'storage_container' => :'String',
109
+ :'updated_at' => :'String'
110
+ }
111
+ end
112
+
113
+ # Initializes the object
114
+ # @param attributes [Hash] Model attributes in the form of hash
115
+ # @!visibility private
116
+ def initialize(attributes = {})
117
+ if (!attributes.is_a?(Hash))
118
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::AzureUCConfig` initialize method"
119
+ end
120
+
121
+ # check to see if the attribute exists and convert string to symbol for hash key
122
+ attributes = attributes.each_with_object({}) { |(k, v), h|
123
+ if (!self.class.attribute_map.key?(k.to_sym))
124
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::AzureUCConfig`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
125
+ end
126
+ h[k.to_sym] = v
127
+ }
128
+
129
+ if attributes.key?(:'account_id')
130
+ self.account_id = attributes[:'account_id']
131
+ end
132
+
133
+ if attributes.key?(:'client_id')
134
+ self.client_id = attributes[:'client_id']
135
+ end
136
+
137
+ if attributes.key?(:'created_at')
138
+ self.created_at = attributes[:'created_at']
139
+ end
140
+
141
+ if attributes.key?(:'dataset_type')
142
+ self.dataset_type = attributes[:'dataset_type']
143
+ end
144
+
145
+ if attributes.key?(:'error_messages')
146
+ if (value = attributes[:'error_messages']).is_a?(Array)
147
+ self.error_messages = value
148
+ end
149
+ end
150
+
151
+ if attributes.key?(:'export_name')
152
+ self.export_name = attributes[:'export_name']
153
+ end
154
+
155
+ if attributes.key?(:'export_path')
156
+ self.export_path = attributes[:'export_path']
157
+ end
158
+
159
+ if attributes.key?(:'id')
160
+ self.id = attributes[:'id']
161
+ end
162
+
163
+ if attributes.key?(:'months')
164
+ self.months = attributes[:'months']
165
+ end
166
+
167
+ if attributes.key?(:'scope')
168
+ self.scope = attributes[:'scope']
169
+ end
170
+
171
+ if attributes.key?(:'status')
172
+ self.status = attributes[:'status']
173
+ end
174
+
175
+ if attributes.key?(:'status_updated_at')
176
+ self.status_updated_at = attributes[:'status_updated_at']
177
+ end
178
+
179
+ if attributes.key?(:'storage_account')
180
+ self.storage_account = attributes[:'storage_account']
181
+ end
182
+
183
+ if attributes.key?(:'storage_container')
184
+ self.storage_container = attributes[:'storage_container']
185
+ end
186
+
187
+ if attributes.key?(:'updated_at')
188
+ self.updated_at = attributes[:'updated_at']
189
+ end
190
+ end
191
+
192
+ # Check to see if the all the properties in the model are valid
193
+ # @return true if the model is valid
194
+ # @!visibility private
195
+ def valid?
196
+ return false if @account_id.nil?
197
+ return false if @client_id.nil?
198
+ pattern = Regexp.new(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$/)
199
+ return false if !@created_at.nil? && @created_at !~ pattern
200
+ return false if @dataset_type.nil?
201
+ return false if @export_name.nil?
202
+ return false if @export_path.nil?
203
+ return false if !@months.nil? && @months > 36
204
+ return false if @scope.nil?
205
+ return false if @status.nil?
206
+ pattern = Regexp.new(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$/)
207
+ return false if !@status_updated_at.nil? && @status_updated_at !~ pattern
208
+ return false if @storage_account.nil?
209
+ return false if @storage_container.nil?
210
+ pattern = Regexp.new(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$/)
211
+ return false if !@updated_at.nil? && @updated_at !~ pattern
212
+ true
213
+ end
214
+
215
+ # Custom attribute writer method with validation
216
+ # @param account_id [Object] Object to be assigned
217
+ # @!visibility private
218
+ def account_id=(account_id)
219
+ if account_id.nil?
220
+ fail ArgumentError, 'invalid value for "account_id", account_id cannot be nil.'
221
+ end
222
+ @account_id = account_id
223
+ end
224
+
225
+ # Custom attribute writer method with validation
226
+ # @param client_id [Object] Object to be assigned
227
+ # @!visibility private
228
+ def client_id=(client_id)
229
+ if client_id.nil?
230
+ fail ArgumentError, 'invalid value for "client_id", client_id cannot be nil.'
231
+ end
232
+ @client_id = client_id
233
+ end
234
+
235
+ # Custom attribute writer method with validation
236
+ # @param created_at [Object] Object to be assigned
237
+ # @!visibility private
238
+ def created_at=(created_at)
239
+ pattern = Regexp.new(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$/)
240
+ if !created_at.nil? && created_at !~ pattern
241
+ fail ArgumentError, "invalid value for \"created_at\", must conform to the pattern #{pattern}."
242
+ end
243
+ @created_at = created_at
244
+ end
245
+
246
+ # Custom attribute writer method with validation
247
+ # @param dataset_type [Object] Object to be assigned
248
+ # @!visibility private
249
+ def dataset_type=(dataset_type)
250
+ if dataset_type.nil?
251
+ fail ArgumentError, 'invalid value for "dataset_type", dataset_type cannot be nil.'
252
+ end
253
+ @dataset_type = dataset_type
254
+ end
255
+
256
+ # Custom attribute writer method with validation
257
+ # @param export_name [Object] Object to be assigned
258
+ # @!visibility private
259
+ def export_name=(export_name)
260
+ if export_name.nil?
261
+ fail ArgumentError, 'invalid value for "export_name", export_name cannot be nil.'
262
+ end
263
+ @export_name = export_name
264
+ end
265
+
266
+ # Custom attribute writer method with validation
267
+ # @param export_path [Object] Object to be assigned
268
+ # @!visibility private
269
+ def export_path=(export_path)
270
+ if export_path.nil?
271
+ fail ArgumentError, 'invalid value for "export_path", export_path cannot be nil.'
272
+ end
273
+ @export_path = export_path
274
+ end
275
+
276
+ # Custom attribute writer method with validation
277
+ # @param months [Object] Object to be assigned
278
+ # @!visibility private
279
+ def months=(months)
280
+ if !months.nil? && months > 36
281
+ fail ArgumentError, 'invalid value for "months", must be smaller than or equal to 36.'
282
+ end
283
+ @months = months
284
+ end
285
+
286
+ # Custom attribute writer method with validation
287
+ # @param scope [Object] Object to be assigned
288
+ # @!visibility private
289
+ def scope=(scope)
290
+ if scope.nil?
291
+ fail ArgumentError, 'invalid value for "scope", scope cannot be nil.'
292
+ end
293
+ @scope = scope
294
+ end
295
+
296
+ # Custom attribute writer method with validation
297
+ # @param status [Object] Object to be assigned
298
+ # @!visibility private
299
+ def status=(status)
300
+ if status.nil?
301
+ fail ArgumentError, 'invalid value for "status", status cannot be nil.'
302
+ end
303
+ @status = status
304
+ end
305
+
306
+ # Custom attribute writer method with validation
307
+ # @param status_updated_at [Object] Object to be assigned
308
+ # @!visibility private
309
+ def status_updated_at=(status_updated_at)
310
+ pattern = Regexp.new(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$/)
311
+ if !status_updated_at.nil? && status_updated_at !~ pattern
312
+ fail ArgumentError, "invalid value for \"status_updated_at\", must conform to the pattern #{pattern}."
313
+ end
314
+ @status_updated_at = status_updated_at
315
+ end
316
+
317
+ # Custom attribute writer method with validation
318
+ # @param storage_account [Object] Object to be assigned
319
+ # @!visibility private
320
+ def storage_account=(storage_account)
321
+ if storage_account.nil?
322
+ fail ArgumentError, 'invalid value for "storage_account", storage_account cannot be nil.'
323
+ end
324
+ @storage_account = storage_account
325
+ end
326
+
327
+ # Custom attribute writer method with validation
328
+ # @param storage_container [Object] Object to be assigned
329
+ # @!visibility private
330
+ def storage_container=(storage_container)
331
+ if storage_container.nil?
332
+ fail ArgumentError, 'invalid value for "storage_container", storage_container cannot be nil.'
333
+ end
334
+ @storage_container = storage_container
335
+ end
336
+
337
+ # Custom attribute writer method with validation
338
+ # @param updated_at [Object] Object to be assigned
339
+ # @!visibility private
340
+ def updated_at=(updated_at)
341
+ pattern = Regexp.new(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}.\d{6}$/)
342
+ if !updated_at.nil? && updated_at !~ pattern
343
+ fail ArgumentError, "invalid value for \"updated_at\", must conform to the pattern #{pattern}."
344
+ end
345
+ @updated_at = updated_at
346
+ end
347
+
348
+ # Checks equality by comparing each attribute.
349
+ # @param o [Object] Object to be compared
350
+ # @!visibility private
351
+ def ==(o)
352
+ return true if self.equal?(o)
353
+ self.class == o.class &&
354
+ account_id == o.account_id &&
355
+ client_id == o.client_id &&
356
+ created_at == o.created_at &&
357
+ dataset_type == o.dataset_type &&
358
+ error_messages == o.error_messages &&
359
+ export_name == o.export_name &&
360
+ export_path == o.export_path &&
361
+ id == o.id &&
362
+ months == o.months &&
363
+ scope == o.scope &&
364
+ status == o.status &&
365
+ status_updated_at == o.status_updated_at &&
366
+ storage_account == o.storage_account &&
367
+ storage_container == o.storage_container &&
368
+ updated_at == o.updated_at
369
+ end
370
+
371
+ # Calculates hash code according to all attributes.
372
+ # @return [Integer] Hash code
373
+ # @!visibility private
374
+ def hash
375
+ [account_id, client_id, created_at, dataset_type, error_messages, export_name, export_path, id, months, scope, status, status_updated_at, storage_account, storage_container, updated_at].hash
376
+ end
377
+ end
378
+ end
@@ -0,0 +1,129 @@
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
+ # Azure config pair.
21
+ class AzureUCConfigPair
22
+ include BaseGenericModel
23
+
24
+ # Attributes for Azure config pair.
25
+ attr_reader :attributes
26
+
27
+ # The ID of Cloud Cost Management account.
28
+ attr_accessor :id
29
+
30
+ # Type of Azure config pair.
31
+ attr_reader :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' => :'AzureUCConfigPairAttributes',
48
+ :'id' => :'Integer',
49
+ :'type' => :'AzureUCConfigPairType'
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::AzureUCConfigPair` 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::AzureUCConfigPair`. 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
+ # Check to see if the all the properties in the model are valid
83
+ # @return true if the model is valid
84
+ # @!visibility private
85
+ def valid?
86
+ return false if @attributes.nil?
87
+ return false if @type.nil?
88
+ true
89
+ end
90
+
91
+ # Custom attribute writer method with validation
92
+ # @param attributes [Object] Object to be assigned
93
+ # @!visibility private
94
+ def attributes=(attributes)
95
+ if attributes.nil?
96
+ fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
97
+ end
98
+ @attributes = attributes
99
+ end
100
+
101
+ # Custom attribute writer method with validation
102
+ # @param type [Object] Object to be assigned
103
+ # @!visibility private
104
+ def type=(type)
105
+ if type.nil?
106
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
107
+ end
108
+ @type = type
109
+ end
110
+
111
+ # Checks equality by comparing each attribute.
112
+ # @param o [Object] Object to be compared
113
+ # @!visibility private
114
+ def ==(o)
115
+ return true if self.equal?(o)
116
+ self.class == o.class &&
117
+ attributes == o.attributes &&
118
+ id == o.id &&
119
+ type == o.type
120
+ end
121
+
122
+ # Calculates hash code according to all attributes.
123
+ # @return [Integer] Hash code
124
+ # @!visibility private
125
+ def hash
126
+ [attributes, id, type].hash
127
+ end
128
+ end
129
+ end
@@ -0,0 +1,110 @@
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 Azure config pair.
21
+ class AzureUCConfigPairAttributes
22
+ include BaseGenericModel
23
+
24
+ # An Azure config.
25
+ attr_reader :configs
26
+
27
+ # The ID of the Azure config pair.
28
+ attr_accessor :id
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ # @!visibility private
32
+ def self.attribute_map
33
+ {
34
+ :'configs' => :'configs',
35
+ :'id' => :'id'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ # @!visibility private
41
+ def self.openapi_types
42
+ {
43
+ :'configs' => :'Array<AzureUCConfig>',
44
+ :'id' => :'Integer'
45
+ }
46
+ end
47
+
48
+ # Initializes the object
49
+ # @param attributes [Hash] Model attributes in the form of hash
50
+ # @!visibility private
51
+ def initialize(attributes = {})
52
+ if (!attributes.is_a?(Hash))
53
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::AzureUCConfigPairAttributes` initialize method"
54
+ end
55
+
56
+ # check to see if the attribute exists and convert string to symbol for hash key
57
+ attributes = attributes.each_with_object({}) { |(k, v), h|
58
+ if (!self.class.attribute_map.key?(k.to_sym))
59
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::AzureUCConfigPairAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
60
+ end
61
+ h[k.to_sym] = v
62
+ }
63
+
64
+ if attributes.key?(:'configs')
65
+ if (value = attributes[:'configs']).is_a?(Array)
66
+ self.configs = value
67
+ end
68
+ end
69
+
70
+ if attributes.key?(:'id')
71
+ self.id = attributes[:'id']
72
+ end
73
+ end
74
+
75
+ # Check to see if the all the properties in the model are valid
76
+ # @return true if the model is valid
77
+ # @!visibility private
78
+ def valid?
79
+ return false if @configs.nil?
80
+ true
81
+ end
82
+
83
+ # Custom attribute writer method with validation
84
+ # @param configs [Object] Object to be assigned
85
+ # @!visibility private
86
+ def configs=(configs)
87
+ if configs.nil?
88
+ fail ArgumentError, 'invalid value for "configs", configs cannot be nil.'
89
+ end
90
+ @configs = configs
91
+ end
92
+
93
+ # Checks equality by comparing each attribute.
94
+ # @param o [Object] Object to be compared
95
+ # @!visibility private
96
+ def ==(o)
97
+ return true if self.equal?(o)
98
+ self.class == o.class &&
99
+ configs == o.configs &&
100
+ id == o.id
101
+ end
102
+
103
+ # Calculates hash code according to all attributes.
104
+ # @return [Integer] Hash code
105
+ # @!visibility private
106
+ def hash
107
+ [configs, id].hash
108
+ end
109
+ end
110
+ 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
+ # Type of Azure config pair.
21
+ class AzureUCConfigPairType
22
+ include BaseEnumModel
23
+
24
+ AZURE_UC_CONFIGS = "azure_uc_configs".freeze
25
+ end
26
+ end