datadog_api_client 2.42.0 → 2.43.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 (195) hide show
  1. checksums.yaml +4 -4
  2. data/.generator/schemas/v1/openapi.yaml +3 -7
  3. data/.generator/schemas/v2/openapi.yaml +2981 -63
  4. data/.github/CODEOWNERS +4 -4
  5. data/.github/workflows/reusable-ci.yml +71 -0
  6. data/.github/workflows/reusable-examples.yml +40 -0
  7. data/.github/workflows/{test_integration.yml → reusable-integration-test.yml} +66 -17
  8. data/.github/workflows/reusable-pre-commit.yml +84 -0
  9. data/.github/workflows/reusable-ruby-test.yml +65 -0
  10. data/.github/workflows/test.yml +31 -89
  11. data/CHANGELOG.md +19 -0
  12. data/examples/v1/dashboards/CreateDashboard_607525069.rb +61 -0
  13. data/examples/v2/aws-integration/GetAWSIntegrationIAMPermissionsResourceCollection.rb +5 -0
  14. data/examples/v2/aws-integration/GetAWSIntegrationIAMPermissionsResourceCollection_1008672547.rb +5 -0
  15. data/examples/v2/aws-integration/GetAWSIntegrationIAMPermissionsStandard.rb +5 -0
  16. data/examples/v2/aws-integration/GetAWSIntegrationIAMPermissionsStandard_3136299151.rb +5 -0
  17. data/examples/v2/cloud-cost-management/CreateArbitraryCostRule.rb +63 -0
  18. data/examples/v2/cloud-cost-management/CreateCostAzureUCConfigs.rb +0 -1
  19. data/examples/v2/cloud-cost-management/CreateCostGCPUsageCostConfig.rb +1 -1
  20. data/examples/v2/cloud-cost-management/CreateRuleset.rb +32 -0
  21. data/examples/v2/cloud-cost-management/DeleteArbitraryCostRule.rb +5 -0
  22. data/examples/v2/cloud-cost-management/DeleteCostGCPUsageCostConfig.rb +1 -1
  23. data/examples/v2/cloud-cost-management/DeleteRuleset.rb +5 -0
  24. data/examples/v2/cloud-cost-management/GetArbitraryCostRule.rb +5 -0
  25. data/examples/v2/cloud-cost-management/GetCostAWSCURConfig.rb +5 -0
  26. data/examples/v2/cloud-cost-management/GetCostAzureUCConfig.rb +5 -0
  27. data/examples/v2/cloud-cost-management/GetCostGCPUsageCostConfig.rb +5 -0
  28. data/examples/v2/cloud-cost-management/GetRuleset.rb +5 -0
  29. data/examples/v2/cloud-cost-management/ListArbitraryCostRules.rb +5 -0
  30. data/examples/v2/cloud-cost-management/ListCostGCPUsageCostConfigs.rb +1 -1
  31. data/examples/v2/cloud-cost-management/ListRulesets.rb +5 -0
  32. data/examples/v2/cloud-cost-management/ReorderArbitraryCostRules.rb +22 -0
  33. data/examples/v2/cloud-cost-management/ReorderRulesets.rb +13 -0
  34. data/examples/v2/cloud-cost-management/UpdateArbitraryCostRule.rb +63 -0
  35. data/examples/v2/cloud-cost-management/UpdateCostGCPUsageCostConfig.rb +1 -1
  36. data/examples/v2/cloud-cost-management/UpdateRuleset.rb +31 -0
  37. data/examples/v2/cloud-cost-management/ValidateQuery.rb +14 -0
  38. data/examples/v2/dora-metrics/DeleteDORADeployment.rb +5 -0
  39. data/examples/v2/dora-metrics/DeleteDORAFailure.rb +5 -0
  40. data/examples/v2/incidents/CreateIncidentImpact.rb +22 -0
  41. data/examples/v2/incidents/DeleteIncidentImpact.rb +12 -0
  42. data/examples/v2/incidents/ListIncidentImpacts.rb +11 -0
  43. data/examples/v2/key-management/GetCurrentUserApplicationKey.rb +4 -1
  44. data/examples/v2/security-monitoring/CreateSecurityMonitoringRule_2899714190.rb +68 -0
  45. data/examples/v2/security-monitoring/ValidateSecurityMonitoringRule_4152369508.rb +70 -0
  46. data/lib/datadog_api_client/configuration.rb +3 -0
  47. data/lib/datadog_api_client/inflector.rb +104 -1
  48. data/lib/datadog_api_client/v1/api/synthetics_api.rb +1 -3
  49. data/lib/datadog_api_client/v1/models/formula_and_function_events_data_source.rb +1 -0
  50. data/lib/datadog_api_client/v2/api/aws_integration_api.rb +120 -0
  51. data/lib/datadog_api_client/v2/api/cloud_cost_management_api.rb +1211 -126
  52. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +130 -0
  53. data/lib/datadog_api_client/v2/api/incidents_api.rb +229 -0
  54. data/lib/datadog_api_client/v2/api/security_monitoring_api.rb +2 -0
  55. data/lib/datadog_api_client/v2/models/account_filtering_config.rb +8 -0
  56. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request.rb +105 -0
  57. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data.rb +143 -0
  58. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes.rb +241 -0
  59. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes_costs_to_allocate_items.rb +174 -0
  60. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes_strategy.rb +215 -0
  61. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes_strategy_allocated_by_filters_items.rb +174 -0
  62. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes_strategy_allocated_by_items.rb +146 -0
  63. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes_strategy_allocated_by_items_allocated_tags_items.rb +144 -0
  64. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes_strategy_based_on_costs_items.rb +174 -0
  65. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_attributes_strategy_evaluate_grouped_by_filters_items.rb +174 -0
  66. data/lib/datadog_api_client/v2/models/arbitrary_cost_upsert_request_data_type.rb +26 -0
  67. data/lib/datadog_api_client/v2/models/arbitrary_rule_response.rb +105 -0
  68. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_array.rb +125 -0
  69. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data.rb +143 -0
  70. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes.rb +351 -0
  71. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes_costs_to_allocate_items.rb +174 -0
  72. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes_strategy.rb +215 -0
  73. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes_strategy_allocated_by_filters_items.rb +174 -0
  74. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes_strategy_allocated_by_items.rb +146 -0
  75. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes_strategy_allocated_by_items_allocated_tags_items.rb +144 -0
  76. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes_strategy_based_on_costs_items.rb +174 -0
  77. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_attributes_strategy_evaluate_grouped_by_filters_items.rb +174 -0
  78. data/lib/datadog_api_client/v2/models/arbitrary_rule_response_data_type.rb +26 -0
  79. data/lib/datadog_api_client/v2/models/aws_cur_config_attributes.rb +8 -0
  80. data/lib/datadog_api_client/v2/models/aws_cur_config_post_data.rb +1 -12
  81. data/lib/datadog_api_client/v2/models/aws_cur_config_response.rb +5 -5
  82. data/lib/datadog_api_client/v2/models/aws_cur_config_response_data.rb +143 -0
  83. data/lib/datadog_api_client/v2/models/aws_cur_config_response_data_attributes.rb +225 -0
  84. data/lib/datadog_api_client/v2/models/aws_cur_config_response_data_attributes_account_filters.rb +137 -0
  85. data/lib/datadog_api_client/v2/models/aws_cur_config_response_data_type.rb +26 -0
  86. data/lib/datadog_api_client/v2/models/aws_cur_configs_response.rb +19 -1
  87. data/lib/datadog_api_client/v2/models/azure_uc_config.rb +9 -1
  88. data/lib/datadog_api_client/v2/models/azure_uc_config_patch_data.rb +1 -12
  89. data/lib/datadog_api_client/v2/models/azure_uc_config_post_data.rb +1 -12
  90. data/lib/datadog_api_client/v2/models/azure_uc_config_post_request_attributes.rb +3 -13
  91. data/lib/datadog_api_client/v2/models/azure_uc_configs_response.rb +19 -1
  92. data/lib/datadog_api_client/v2/models/create_ruleset_request.rb +105 -0
  93. data/lib/datadog_api_client/v2/models/create_ruleset_request_data.rb +143 -0
  94. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_attributes.rb +135 -0
  95. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_attributes_rules_items.rb +195 -0
  96. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_attributes_rules_items_mapping.rb +167 -0
  97. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_attributes_rules_items_query.rb +172 -0
  98. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_attributes_rules_items_query_addition.rb +144 -0
  99. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_attributes_rules_items_reference_table.rb +189 -0
  100. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_attributes_rules_items_reference_table_field_pairs_items.rb +144 -0
  101. data/lib/datadog_api_client/v2/models/create_ruleset_request_data_type.rb +26 -0
  102. data/lib/datadog_api_client/v2/models/datastore_trigger.rb +105 -0
  103. data/lib/datadog_api_client/v2/models/datastore_trigger_wrapper.rb +135 -0
  104. data/lib/datadog_api_client/v2/models/full_api_key_attributes.rb +19 -1
  105. data/lib/datadog_api_client/v2/models/full_application_key_attributes.rb +12 -1
  106. data/lib/datadog_api_client/v2/models/gcp_uc_config_response.rb +105 -0
  107. data/lib/datadog_api_client/v2/models/gcp_uc_config_response_data.rb +143 -0
  108. data/lib/datadog_api_client/v2/models/gcp_uc_config_response_data_attributes.rb +235 -0
  109. data/lib/datadog_api_client/v2/models/gcp_uc_config_response_data_type.rb +26 -0
  110. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config.rb +4 -4
  111. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_attributes.rb +13 -13
  112. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_data.rb +3 -3
  113. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_request.rb +2 -2
  114. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_request_attributes.rb +1 -1
  115. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_patch_request_type.rb +1 -1
  116. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_data.rb +4 -15
  117. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_request.rb +2 -2
  118. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_request_attributes.rb +7 -7
  119. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_post_request_type.rb +1 -1
  120. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_response.rb +2 -2
  121. data/lib/datadog_api_client/v2/models/gcp_usage_cost_config_type.rb +1 -1
  122. data/lib/datadog_api_client/v2/models/gcp_usage_cost_configs_response.rb +21 -3
  123. data/lib/datadog_api_client/v2/models/historical_job_options.rb +11 -1
  124. data/lib/datadog_api_client/v2/models/incident_impact_attributes.rb +203 -0
  125. data/lib/datadog_api_client/v2/models/incident_impact_create_attributes.rb +173 -0
  126. data/lib/datadog_api_client/v2/models/incident_impact_create_data.rb +144 -0
  127. data/lib/datadog_api_client/v2/models/incident_impact_create_request.rb +123 -0
  128. data/lib/datadog_api_client/v2/models/incident_impact_related_object.rb +28 -0
  129. data/lib/datadog_api_client/v2/models/incident_impact_relationships.rb +125 -0
  130. data/lib/datadog_api_client/v2/models/incident_impact_response.rb +135 -0
  131. data/lib/datadog_api_client/v2/models/incident_impact_response_data.rb +164 -0
  132. data/lib/datadog_api_client/v2/models/incident_impact_type.rb +26 -0
  133. data/lib/datadog_api_client/v2/models/incident_impacts_response.rb +137 -0
  134. data/lib/datadog_api_client/v2/models/incident_response_attributes.rb +33 -1
  135. data/lib/datadog_api_client/v2/models/incident_response_relationships.rb +11 -1
  136. data/lib/datadog_api_client/v2/models/observability_pipeline_config_destination_item.rb +2 -1
  137. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_destination.rb +251 -0
  138. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_destination_encoding.rb +27 -0
  139. data/lib/datadog_api_client/v2/models/observability_pipeline_google_pub_sub_destination_type.rb +26 -0
  140. data/lib/datadog_api_client/v2/models/partial_api_key_attributes.rb +19 -1
  141. data/lib/datadog_api_client/v2/models/partial_application_key_attributes.rb +12 -1
  142. data/lib/datadog_api_client/v2/models/relationship_to_incident.rb +123 -0
  143. data/lib/datadog_api_client/v2/models/relationship_to_incident_data.rb +144 -0
  144. data/lib/datadog_api_client/v2/models/reorder_rule_resource_array.rb +125 -0
  145. data/lib/datadog_api_client/v2/models/reorder_rule_resource_data.rb +133 -0
  146. data/lib/datadog_api_client/v2/models/reorder_rule_resource_data_type.rb +26 -0
  147. data/lib/datadog_api_client/v2/models/reorder_ruleset_resource_array.rb +125 -0
  148. data/lib/datadog_api_client/v2/models/reorder_ruleset_resource_data.rb +133 -0
  149. data/lib/datadog_api_client/v2/models/reorder_ruleset_resource_data_type.rb +26 -0
  150. data/lib/datadog_api_client/v2/models/rules_validate_query_request.rb +105 -0
  151. data/lib/datadog_api_client/v2/models/rules_validate_query_request_data.rb +143 -0
  152. data/lib/datadog_api_client/v2/models/rules_validate_query_request_data_attributes.rb +123 -0
  153. data/lib/datadog_api_client/v2/models/rules_validate_query_request_data_type.rb +26 -0
  154. data/lib/datadog_api_client/v2/models/rules_validate_query_response.rb +105 -0
  155. data/lib/datadog_api_client/v2/models/rules_validate_query_response_data.rb +143 -0
  156. data/lib/datadog_api_client/v2/models/rules_validate_query_response_data_attributes.rb +123 -0
  157. data/lib/datadog_api_client/v2/models/rules_validate_query_response_data_type.rb +26 -0
  158. data/lib/datadog_api_client/v2/models/ruleset_resp.rb +105 -0
  159. data/lib/datadog_api_client/v2/models/ruleset_resp_array.rb +125 -0
  160. data/lib/datadog_api_client/v2/models/ruleset_resp_data.rb +143 -0
  161. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes.rb +276 -0
  162. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_created.rb +133 -0
  163. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_modified.rb +133 -0
  164. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_rules_items.rb +195 -0
  165. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_rules_items_mapping.rb +167 -0
  166. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_rules_items_query.rb +172 -0
  167. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_rules_items_query_addition.rb +144 -0
  168. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_rules_items_reference_table.rb +189 -0
  169. data/lib/datadog_api_client/v2/models/ruleset_resp_data_attributes_rules_items_reference_table_field_pairs_items.rb +144 -0
  170. data/lib/datadog_api_client/v2/models/ruleset_resp_data_type.rb +26 -0
  171. data/lib/datadog_api_client/v2/models/rum_application_attributes.rb +22 -1
  172. data/lib/datadog_api_client/v2/models/security_monitoring_rule_detection_method.rb +1 -0
  173. data/lib/datadog_api_client/v2/models/security_monitoring_rule_options.rb +11 -1
  174. data/lib/datadog_api_client/v2/models/security_monitoring_rule_sequence_detection_options.rb +119 -0
  175. data/lib/datadog_api_client/v2/models/security_monitoring_rule_sequence_detection_step.rb +126 -0
  176. data/lib/datadog_api_client/v2/models/security_monitoring_rule_sequence_detection_step_transition.rb +126 -0
  177. data/lib/datadog_api_client/v2/models/trigger.rb +1 -0
  178. data/lib/datadog_api_client/v2/models/uc_config_pair.rb +105 -0
  179. data/lib/datadog_api_client/v2/models/uc_config_pair_data.rb +143 -0
  180. data/lib/datadog_api_client/v2/models/uc_config_pair_data_attributes.rb +107 -0
  181. data/lib/datadog_api_client/v2/models/uc_config_pair_data_attributes_configs_items.rb +255 -0
  182. data/lib/datadog_api_client/v2/models/uc_config_pair_data_type.rb +26 -0
  183. data/lib/datadog_api_client/v2/models/update_ruleset_request.rb +105 -0
  184. data/lib/datadog_api_client/v2/models/update_ruleset_request_data.rb +143 -0
  185. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_attributes.rb +156 -0
  186. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_attributes_rules_items.rb +195 -0
  187. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_attributes_rules_items_mapping.rb +167 -0
  188. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_attributes_rules_items_query.rb +172 -0
  189. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_attributes_rules_items_query_addition.rb +144 -0
  190. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_attributes_rules_items_reference_table.rb +189 -0
  191. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_attributes_rules_items_reference_table_field_pairs_items.rb +144 -0
  192. data/lib/datadog_api_client/v2/models/update_ruleset_request_data_type.rb +26 -0
  193. data/lib/datadog_api_client/version.rb +1 -1
  194. metadata +137 -3
  195. data/examples/v1/synthetics/SearchTests_195957771.rb +0 -14
@@ -0,0 +1,143 @@
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 definition of `GcpUcConfigResponseData` object.
21
+ class GcpUcConfigResponseData
22
+ include BaseGenericModel
23
+
24
+ # The definition of `GcpUcConfigResponseDataAttributes` object.
25
+ attr_accessor :attributes
26
+
27
+ # The `GcpUcConfigResponseData` `id`.
28
+ attr_accessor :id
29
+
30
+ # Google Cloud Usage Cost config resource type.
31
+ attr_reader :type
32
+
33
+ attr_accessor :additional_properties
34
+
35
+ # Attribute mapping from ruby-style variable name to JSON key.
36
+ # @!visibility private
37
+ def self.attribute_map
38
+ {
39
+ :'attributes' => :'attributes',
40
+ :'id' => :'id',
41
+ :'type' => :'type'
42
+ }
43
+ end
44
+
45
+ # Attribute type mapping.
46
+ # @!visibility private
47
+ def self.openapi_types
48
+ {
49
+ :'attributes' => :'GcpUcConfigResponseDataAttributes',
50
+ :'id' => :'String',
51
+ :'type' => :'GcpUcConfigResponseDataType'
52
+ }
53
+ end
54
+
55
+ # Initializes the object
56
+ # @param attributes [Hash] Model attributes in the form of hash
57
+ # @!visibility private
58
+ def initialize(attributes = {})
59
+ if (!attributes.is_a?(Hash))
60
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::GcpUcConfigResponseData` initialize method"
61
+ end
62
+
63
+ self.additional_properties = {}
64
+ # check to see if the attribute exists and convert string to symbol for hash key
65
+ attributes = attributes.each_with_object({}) { |(k, v), h|
66
+ if (!self.class.attribute_map.key?(k.to_sym))
67
+ self.additional_properties[k.to_sym] = v
68
+ else
69
+ h[k.to_sym] = v
70
+ end
71
+ }
72
+
73
+ if attributes.key?(:'attributes')
74
+ self.attributes = attributes[:'attributes']
75
+ end
76
+
77
+ if attributes.key?(:'id')
78
+ self.id = attributes[:'id']
79
+ end
80
+
81
+ if attributes.key?(:'type')
82
+ self.type = attributes[:'type']
83
+ end
84
+ end
85
+
86
+ # Check to see if the all the properties in the model are valid
87
+ # @return true if the model is valid
88
+ # @!visibility private
89
+ def valid?
90
+ return false if @type.nil?
91
+ true
92
+ end
93
+
94
+ # Custom attribute writer method with validation
95
+ # @param type [Object] Object to be assigned
96
+ # @!visibility private
97
+ def type=(type)
98
+ if type.nil?
99
+ fail ArgumentError, 'invalid value for "type", type cannot be nil.'
100
+ end
101
+ @type = type
102
+ end
103
+
104
+ # Returns the object in the form of hash, with additionalProperties support.
105
+ # @return [Hash] Returns the object in the form of hash
106
+ # @!visibility private
107
+ def to_hash
108
+ hash = {}
109
+ self.class.attribute_map.each_pair do |attr, param|
110
+ value = self.send(attr)
111
+ if value.nil?
112
+ is_nullable = self.class.openapi_nullable.include?(attr)
113
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
114
+ end
115
+
116
+ hash[param] = _to_hash(value)
117
+ end
118
+ self.additional_properties.each_pair do |attr, value|
119
+ hash[attr] = value
120
+ end
121
+ hash
122
+ end
123
+
124
+ # Checks equality by comparing each attribute.
125
+ # @param o [Object] Object to be compared
126
+ # @!visibility private
127
+ def ==(o)
128
+ return true if self.equal?(o)
129
+ self.class == o.class &&
130
+ attributes == o.attributes &&
131
+ id == o.id &&
132
+ type == o.type &&
133
+ additional_properties == o.additional_properties
134
+ end
135
+
136
+ # Calculates hash code according to all attributes.
137
+ # @return [Integer] Hash code
138
+ # @!visibility private
139
+ def hash
140
+ [attributes, id, type, additional_properties].hash
141
+ end
142
+ end
143
+ end
@@ -0,0 +1,235 @@
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 definition of `GcpUcConfigResponseDataAttributes` object.
21
+ class GcpUcConfigResponseDataAttributes
22
+ include BaseGenericModel
23
+
24
+ # The `attributes` `account_id`.
25
+ attr_accessor :account_id
26
+
27
+ # The `attributes` `bucket_name`.
28
+ attr_accessor :bucket_name
29
+
30
+ # The `attributes` `created_at`.
31
+ attr_accessor :created_at
32
+
33
+ # The `attributes` `dataset`.
34
+ attr_accessor :dataset
35
+
36
+ # The `attributes` `error_messages`.
37
+ attr_accessor :error_messages
38
+
39
+ # The `attributes` `export_prefix`.
40
+ attr_accessor :export_prefix
41
+
42
+ # The `attributes` `export_project_name`.
43
+ attr_accessor :export_project_name
44
+
45
+ # The `attributes` `months`.
46
+ attr_accessor :months
47
+
48
+ # The `attributes` `project_id`.
49
+ attr_accessor :project_id
50
+
51
+ # The `attributes` `service_account`.
52
+ attr_accessor :service_account
53
+
54
+ # The `attributes` `status`.
55
+ attr_accessor :status
56
+
57
+ # The `attributes` `status_updated_at`.
58
+ attr_accessor :status_updated_at
59
+
60
+ # The `attributes` `updated_at`.
61
+ attr_accessor :updated_at
62
+
63
+ attr_accessor :additional_properties
64
+
65
+ # Attribute mapping from ruby-style variable name to JSON key.
66
+ # @!visibility private
67
+ def self.attribute_map
68
+ {
69
+ :'account_id' => :'account_id',
70
+ :'bucket_name' => :'bucket_name',
71
+ :'created_at' => :'created_at',
72
+ :'dataset' => :'dataset',
73
+ :'error_messages' => :'error_messages',
74
+ :'export_prefix' => :'export_prefix',
75
+ :'export_project_name' => :'export_project_name',
76
+ :'months' => :'months',
77
+ :'project_id' => :'project_id',
78
+ :'service_account' => :'service_account',
79
+ :'status' => :'status',
80
+ :'status_updated_at' => :'status_updated_at',
81
+ :'updated_at' => :'updated_at'
82
+ }
83
+ end
84
+
85
+ # Attribute type mapping.
86
+ # @!visibility private
87
+ def self.openapi_types
88
+ {
89
+ :'account_id' => :'String',
90
+ :'bucket_name' => :'String',
91
+ :'created_at' => :'String',
92
+ :'dataset' => :'String',
93
+ :'error_messages' => :'Array<String>',
94
+ :'export_prefix' => :'String',
95
+ :'export_project_name' => :'String',
96
+ :'months' => :'Integer',
97
+ :'project_id' => :'String',
98
+ :'service_account' => :'String',
99
+ :'status' => :'String',
100
+ :'status_updated_at' => :'String',
101
+ :'updated_at' => :'String'
102
+ }
103
+ end
104
+
105
+ # List of attributes with nullable: true
106
+ # @!visibility private
107
+ def self.openapi_nullable
108
+ Set.new([
109
+ :'error_messages',
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::GcpUcConfigResponseDataAttributes` initialize method"
119
+ end
120
+
121
+ self.additional_properties = {}
122
+ # check to see if the attribute exists and convert string to symbol for hash key
123
+ attributes = attributes.each_with_object({}) { |(k, v), h|
124
+ if (!self.class.attribute_map.key?(k.to_sym))
125
+ self.additional_properties[k.to_sym] = v
126
+ else
127
+ h[k.to_sym] = v
128
+ end
129
+ }
130
+
131
+ if attributes.key?(:'account_id')
132
+ self.account_id = attributes[:'account_id']
133
+ end
134
+
135
+ if attributes.key?(:'bucket_name')
136
+ self.bucket_name = attributes[:'bucket_name']
137
+ end
138
+
139
+ if attributes.key?(:'created_at')
140
+ self.created_at = attributes[:'created_at']
141
+ end
142
+
143
+ if attributes.key?(:'dataset')
144
+ self.dataset = attributes[:'dataset']
145
+ end
146
+
147
+ if attributes.key?(:'error_messages')
148
+ if (value = attributes[:'error_messages']).is_a?(Array)
149
+ self.error_messages = value
150
+ end
151
+ end
152
+
153
+ if attributes.key?(:'export_prefix')
154
+ self.export_prefix = attributes[:'export_prefix']
155
+ end
156
+
157
+ if attributes.key?(:'export_project_name')
158
+ self.export_project_name = attributes[:'export_project_name']
159
+ end
160
+
161
+ if attributes.key?(:'months')
162
+ self.months = attributes[:'months']
163
+ end
164
+
165
+ if attributes.key?(:'project_id')
166
+ self.project_id = attributes[:'project_id']
167
+ end
168
+
169
+ if attributes.key?(:'service_account')
170
+ self.service_account = attributes[:'service_account']
171
+ end
172
+
173
+ if attributes.key?(:'status')
174
+ self.status = attributes[:'status']
175
+ end
176
+
177
+ if attributes.key?(:'status_updated_at')
178
+ self.status_updated_at = attributes[:'status_updated_at']
179
+ end
180
+
181
+ if attributes.key?(:'updated_at')
182
+ self.updated_at = attributes[:'updated_at']
183
+ end
184
+ end
185
+
186
+ # Returns the object in the form of hash, with additionalProperties support.
187
+ # @return [Hash] Returns the object in the form of hash
188
+ # @!visibility private
189
+ def to_hash
190
+ hash = {}
191
+ self.class.attribute_map.each_pair do |attr, param|
192
+ value = self.send(attr)
193
+ if value.nil?
194
+ is_nullable = self.class.openapi_nullable.include?(attr)
195
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
196
+ end
197
+
198
+ hash[param] = _to_hash(value)
199
+ end
200
+ self.additional_properties.each_pair do |attr, value|
201
+ hash[attr] = value
202
+ end
203
+ hash
204
+ end
205
+
206
+ # Checks equality by comparing each attribute.
207
+ # @param o [Object] Object to be compared
208
+ # @!visibility private
209
+ def ==(o)
210
+ return true if self.equal?(o)
211
+ self.class == o.class &&
212
+ account_id == o.account_id &&
213
+ bucket_name == o.bucket_name &&
214
+ created_at == o.created_at &&
215
+ dataset == o.dataset &&
216
+ error_messages == o.error_messages &&
217
+ export_prefix == o.export_prefix &&
218
+ export_project_name == o.export_project_name &&
219
+ months == o.months &&
220
+ project_id == o.project_id &&
221
+ service_account == o.service_account &&
222
+ status == o.status &&
223
+ status_updated_at == o.status_updated_at &&
224
+ updated_at == o.updated_at &&
225
+ additional_properties == o.additional_properties
226
+ end
227
+
228
+ # Calculates hash code according to all attributes.
229
+ # @return [Integer] Hash code
230
+ # @!visibility private
231
+ def hash
232
+ [account_id, bucket_name, created_at, dataset, error_messages, export_prefix, export_project_name, months, project_id, service_account, status, status_updated_at, updated_at, additional_properties].hash
233
+ end
234
+ end
235
+ 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
+ # Google Cloud Usage Cost config resource type.
21
+ class GcpUcConfigResponseDataType
22
+ include BaseEnumModel
23
+
24
+ GCP_UC_CONFIG = "gcp_uc_config".freeze
25
+ end
26
+ end
@@ -17,17 +17,17 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # GCP Usage Cost config.
20
+ # Google Cloud Usage Cost config.
21
21
  class GCPUsageCostConfig
22
22
  include BaseGenericModel
23
23
 
24
- # Attributes for a GCP Usage Cost config.
24
+ # Attributes for a Google Cloud Usage Cost config.
25
25
  attr_reader :attributes
26
26
 
27
- # The ID of the GCP Usage Cost config.
27
+ # The ID of the Google Cloud Usage Cost config.
28
28
  attr_accessor :id
29
29
 
30
- # Type of GCP Usage Cost config.
30
+ # Type of Google Cloud Usage Cost config.
31
31
  attr_reader :type
32
32
 
33
33
  attr_accessor :additional_properties
@@ -17,47 +17,47 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Attributes for a GCP Usage Cost config.
20
+ # Attributes for a Google Cloud Usage Cost config.
21
21
  class GCPUsageCostConfigAttributes
22
22
  include BaseGenericModel
23
23
 
24
- # The GCP account ID.
24
+ # The Google Cloud account ID.
25
25
  attr_reader :account_id
26
26
 
27
- # The GCP bucket name used to store the Usage Cost export.
27
+ # The Google Cloud bucket name used to store the Usage Cost export.
28
28
  attr_reader :bucket_name
29
29
 
30
- # The timestamp when the GCP Usage Cost config was created.
30
+ # The timestamp when the Google Cloud Usage Cost config was created.
31
31
  attr_reader :created_at
32
32
 
33
- # The export dataset name used for the GCP Usage Cost Report.
33
+ # The export dataset name used for the Google Cloud Usage Cost Report.
34
34
  attr_reader :dataset
35
35
 
36
- # The error messages for the GCP Usage Cost config.
36
+ # The error messages for the Google Cloud Usage Cost config.
37
37
  attr_accessor :error_messages
38
38
 
39
- # The export prefix used for the GCP Usage Cost Report.
39
+ # The export prefix used for the Google Cloud Usage Cost Report.
40
40
  attr_reader :export_prefix
41
41
 
42
- # The name of the GCP Usage Cost Report.
42
+ # The name of the Google Cloud Usage Cost Report.
43
43
  attr_reader :export_project_name
44
44
 
45
45
  # The number of months the report has been backfilled.
46
46
  attr_reader :months
47
47
 
48
- # The `project_id` of the GCP Usage Cost report.
48
+ # The `project_id` of the Google Cloud Usage Cost report.
49
49
  attr_accessor :project_id
50
50
 
51
- # The unique GCP service account email.
51
+ # The unique Google Cloud service account email.
52
52
  attr_reader :service_account
53
53
 
54
- # The status of the GCP Usage Cost config.
54
+ # The status of the Google Cloud Usage Cost config.
55
55
  attr_reader :status
56
56
 
57
- # The timestamp when the GCP Usage Cost config status was updated.
57
+ # The timestamp when the Google Cloud Usage Cost config status was updated.
58
58
  attr_reader :status_updated_at
59
59
 
60
- # The timestamp when the GCP Usage Cost config status was updated.
60
+ # The timestamp when the Google Cloud Usage Cost config status was updated.
61
61
  attr_reader :updated_at
62
62
 
63
63
  attr_accessor :additional_properties
@@ -17,14 +17,14 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # GCP Usage Cost config patch data.
20
+ # Google Cloud Usage Cost config patch data.
21
21
  class GCPUsageCostConfigPatchData
22
22
  include BaseGenericModel
23
23
 
24
- # Attributes for GCP Usage Cost config patch request.
24
+ # Attributes for Google Cloud Usage Cost config patch request.
25
25
  attr_reader :attributes
26
26
 
27
- # Type of GCP Usage Cost config patch request.
27
+ # Type of Google Cloud Usage Cost config patch request.
28
28
  attr_reader :type
29
29
 
30
30
  attr_accessor :additional_properties
@@ -17,11 +17,11 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # GCP Usage Cost config patch request.
20
+ # Google Cloud Usage Cost config patch request.
21
21
  class GCPUsageCostConfigPatchRequest
22
22
  include BaseGenericModel
23
23
 
24
- # GCP Usage Cost config patch data.
24
+ # Google Cloud Usage Cost config patch data.
25
25
  attr_reader :data
26
26
 
27
27
  attr_accessor :additional_properties
@@ -17,7 +17,7 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Attributes for GCP Usage Cost config patch request.
20
+ # Attributes for Google Cloud Usage Cost config patch request.
21
21
  class GCPUsageCostConfigPatchRequestAttributes
22
22
  include BaseGenericModel
23
23
 
@@ -17,7 +17,7 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Type of GCP Usage Cost config patch request.
20
+ # Type of Google Cloud Usage Cost config patch request.
21
21
  class GCPUsageCostConfigPatchRequestType
22
22
  include BaseEnumModel
23
23
 
@@ -17,14 +17,14 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # GCP Usage Cost config post data.
20
+ # Google Cloud Usage Cost config post data.
21
21
  class GCPUsageCostConfigPostData
22
22
  include BaseGenericModel
23
23
 
24
- # Attributes for GCP Usage Cost config post request.
25
- attr_reader :attributes
24
+ # Attributes for Google Cloud Usage Cost config post request.
25
+ attr_accessor :attributes
26
26
 
27
- # Type of GCP Usage Cost config post request.
27
+ # Type of Google Cloud Usage Cost config post request.
28
28
  attr_reader :type
29
29
 
30
30
  attr_accessor :additional_properties
@@ -78,21 +78,10 @@ module DatadogAPIClient::V2
78
78
  # @return true if the model is valid
79
79
  # @!visibility private
80
80
  def valid?
81
- return false if @attributes.nil?
82
81
  return false if @type.nil?
83
82
  true
84
83
  end
85
84
 
86
- # Custom attribute writer method with validation
87
- # @param attributes [Object] Object to be assigned
88
- # @!visibility private
89
- def attributes=(attributes)
90
- if attributes.nil?
91
- fail ArgumentError, 'invalid value for "attributes", attributes cannot be nil.'
92
- end
93
- @attributes = attributes
94
- end
95
-
96
85
  # Custom attribute writer method with validation
97
86
  # @param type [Object] Object to be assigned
98
87
  # @!visibility private
@@ -17,11 +17,11 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # GCP Usage Cost config post request.
20
+ # Google Cloud Usage Cost config post request.
21
21
  class GCPUsageCostConfigPostRequest
22
22
  include BaseGenericModel
23
23
 
24
- # GCP Usage Cost config post data.
24
+ # Google Cloud Usage Cost config post data.
25
25
  attr_reader :data
26
26
 
27
27
  attr_accessor :additional_properties
@@ -17,26 +17,26 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Attributes for GCP Usage Cost config post request.
20
+ # Attributes for Google Cloud Usage Cost config post request.
21
21
  class GCPUsageCostConfigPostRequestAttributes
22
22
  include BaseGenericModel
23
23
 
24
- # The GCP account ID.
24
+ # The Google Cloud account ID.
25
25
  attr_reader :billing_account_id
26
26
 
27
- # The GCP bucket name used to store the Usage Cost export.
27
+ # The Google Cloud bucket name used to store the Usage Cost export.
28
28
  attr_reader :bucket_name
29
29
 
30
- # The export dataset name used for the GCP Usage Cost report.
30
+ # The export dataset name used for the Google Cloud Usage Cost report.
31
31
  attr_reader :export_dataset_name
32
32
 
33
- # The export prefix used for the GCP Usage Cost report.
33
+ # The export prefix used for the Google Cloud Usage Cost report.
34
34
  attr_accessor :export_prefix
35
35
 
36
- # The name of the GCP Usage Cost report.
36
+ # The name of the Google Cloud Usage Cost report.
37
37
  attr_reader :export_project_name
38
38
 
39
- # The unique GCP service account email.
39
+ # The unique Google Cloud service account email.
40
40
  attr_reader :service_account
41
41
 
42
42
  attr_accessor :additional_properties
@@ -17,7 +17,7 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Type of GCP Usage Cost config post request.
20
+ # Type of Google Cloud Usage Cost config post request.
21
21
  class GCPUsageCostConfigPostRequestType
22
22
  include BaseEnumModel
23
23
 
@@ -17,11 +17,11 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Response of GCP Usage Cost config.
20
+ # Response of Google Cloud Usage Cost config.
21
21
  class GCPUsageCostConfigResponse
22
22
  include BaseGenericModel
23
23
 
24
- # GCP Usage Cost config.
24
+ # Google Cloud Usage Cost config.
25
25
  attr_accessor :data
26
26
 
27
27
  attr_accessor :additional_properties
@@ -17,7 +17,7 @@ require 'date'
17
17
  require 'time'
18
18
 
19
19
  module DatadogAPIClient::V2
20
- # Type of GCP Usage Cost config.
20
+ # Type of Google Cloud Usage Cost config.
21
21
  class GCPUsageCostConfigType
22
22
  include BaseEnumModel
23
23