datadog_api_client 2.18.0 → 2.19.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 (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