datadog_api_client 2.17.0 → 2.18.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (132) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +4 -4
  3. data/.generator/schemas/v1/openapi.yaml +145 -5
  4. data/.generator/schemas/v2/openapi.yaml +1306 -45
  5. data/.generator/src/generator/cli.py +5 -0
  6. data/.generator/src/generator/templates/datadog_api_client.j2 +19 -0
  7. data/.pre-commit-config.yaml +1 -1
  8. data/CHANGELOG.md +25 -0
  9. data/examples/v1/aws-integration/CreateAWSAccount.rb +2 -2
  10. data/examples/v1/aws-integration/DeleteAWSAccount.rb +1 -1
  11. data/examples/v1/aws-integration/UpdateAWSAccount.rb +6 -6
  12. data/examples/v1/azure-integration/CreateAzureIntegration.rb +1 -0
  13. data/examples/v1/azure-integration/DeleteAzureIntegration.rb +1 -0
  14. data/examples/v1/azure-integration/UpdateAzureHostFilters.rb +1 -0
  15. data/examples/v1/azure-integration/UpdateAzureIntegration.rb +1 -0
  16. data/examples/v1/dashboards/CreateDashboard_1284514532.rb +3 -0
  17. data/examples/v1/synthetics/PatchTest.rb +22 -0
  18. data/examples/v2/container-images/ListContainerImages.rb +0 -3
  19. data/examples/v2/container-images/ListContainerImages_3088586393.rb +0 -3
  20. data/examples/v2/container-images/ListContainerImages_3974828736.rb +0 -3
  21. data/examples/v2/containers/ListContainers.rb +0 -3
  22. data/examples/v2/containers/ListContainers_2175733917.rb +0 -3
  23. data/examples/v2/containers/ListContainers_931009654.rb +0 -3
  24. data/examples/v2/dora-metrics/CreateDORADeployment.rb +23 -0
  25. data/examples/v2/dora-metrics/CreateDORAIncident.rb +25 -0
  26. data/examples/v2/events/ListEvents.rb +0 -3
  27. data/examples/v2/events/ListEvents_1527584014.rb +0 -3
  28. data/examples/v2/events/ListEvents_2663715109.rb +0 -3
  29. data/examples/v2/events/SearchEvents.rb +0 -3
  30. data/examples/v2/events/SearchEvents_3856995058.rb +0 -3
  31. data/examples/v2/okta-integration/CreateOktaAccount.rb +19 -0
  32. data/examples/v2/okta-integration/DeleteOktaAccount.rb +5 -0
  33. data/examples/v2/okta-integration/GetOktaAccount.rb +8 -0
  34. data/examples/v2/okta-integration/ListOktaAccounts.rb +5 -0
  35. data/examples/v2/okta-integration/UpdateOktaAccount.rb +20 -0
  36. data/examples/v2/usage-metering/GetActiveBillingDimensions.rb +8 -0
  37. data/examples/v2/usage-metering/GetMonthlyCostAttribution.rb +8 -0
  38. data/examples/v2/usage-metering/GetProjectedCost.rb +8 -0
  39. data/lib/datadog_api_client/configuration.rb +4 -4
  40. data/lib/datadog_api_client/inflector.rb +61 -0
  41. data/lib/datadog_api_client/v1/api/hosts_api.rb +1 -1
  42. data/lib/datadog_api_client/v1/api/synthetics_api.rb +73 -1
  43. data/lib/datadog_api_client/v1/models/azure_account.rb +13 -2
  44. data/lib/datadog_api_client/v1/models/synthetics_patch_test_body.rb +82 -0
  45. data/lib/datadog_api_client/v1/models/synthetics_patch_test_operation.rb +100 -0
  46. data/lib/datadog_api_client/v1/models/synthetics_patch_test_operation_name.rb +31 -0
  47. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +21 -1
  48. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +21 -1
  49. data/lib/datadog_api_client/v1/models/widget_live_span.rb +2 -0
  50. data/lib/datadog_api_client/v2/api/container_images_api.rb +0 -6
  51. data/lib/datadog_api_client/v2/api/containers_api.rb +0 -6
  52. data/lib/datadog_api_client/v2/api/dora_metrics_api.rb +181 -0
  53. data/lib/datadog_api_client/v2/api/events_api.rb +0 -12
  54. data/lib/datadog_api_client/v2/api/okta_integration_api.rb +355 -0
  55. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +241 -0
  56. data/lib/datadog_api_client/v2/models/active_billing_dimensions_attributes.rb +92 -0
  57. data/lib/datadog_api_client/v2/models/active_billing_dimensions_body.rb +100 -0
  58. data/lib/datadog_api_client/v2/models/active_billing_dimensions_response.rb +80 -0
  59. data/lib/datadog_api_client/v2/models/active_billing_dimensions_type.rb +26 -0
  60. data/lib/datadog_api_client/v2/models/api_keys_response.rb +14 -4
  61. data/lib/datadog_api_client/v2/models/api_keys_response_meta.rb +90 -0
  62. data/lib/datadog_api_client/v2/models/api_keys_response_meta_page.rb +80 -0
  63. data/lib/datadog_api_client/v2/models/application_key_response_meta.rb +90 -0
  64. data/lib/datadog_api_client/v2/models/application_key_response_meta_page.rb +80 -0
  65. data/lib/datadog_api_client/v2/models/cloud_workload_security_agent_rule_attributes.rb +13 -1
  66. data/lib/datadog_api_client/v2/models/cost_attribution_aggregates_body.rb +100 -0
  67. data/lib/datadog_api_client/v2/models/cost_attribution_type.rb +26 -0
  68. data/lib/datadog_api_client/v2/models/dora_deployment_request.rb +98 -0
  69. data/lib/datadog_api_client/v2/models/dora_deployment_request_attributes.rb +170 -0
  70. data/lib/datadog_api_client/v2/models/dora_deployment_request_data.rb +98 -0
  71. data/lib/datadog_api_client/v2/models/dora_deployment_response.rb +98 -0
  72. data/lib/datadog_api_client/v2/models/dora_deployment_response_data.rb +108 -0
  73. data/lib/datadog_api_client/v2/models/dora_deployment_type.rb +26 -0
  74. data/lib/datadog_api_client/v2/models/dora_git_info.rb +125 -0
  75. data/lib/datadog_api_client/v2/models/dora_incident_request.rb +98 -0
  76. data/lib/datadog_api_client/v2/models/dora_incident_request_attributes.rb +179 -0
  77. data/lib/datadog_api_client/v2/models/dora_incident_request_data.rb +98 -0
  78. data/lib/datadog_api_client/v2/models/dora_incident_response.rb +98 -0
  79. data/lib/datadog_api_client/v2/models/dora_incident_response_data.rb +108 -0
  80. data/lib/datadog_api_client/v2/models/dora_incident_type.rb +26 -0
  81. data/lib/datadog_api_client/v2/models/full_api_key_attributes.rb +24 -4
  82. data/lib/datadog_api_client/v2/models/incident_attachment_link_attributes.rb +14 -4
  83. data/lib/datadog_api_client/v2/models/incident_create_relationships.rb +9 -19
  84. data/lib/datadog_api_client/v2/models/incident_impacts_type.rb +26 -0
  85. data/lib/datadog_api_client/v2/models/incident_integration_metadata_attributes.rb +21 -1
  86. data/lib/datadog_api_client/v2/models/incident_integration_metadata_response_data.rb +11 -1
  87. data/lib/datadog_api_client/v2/models/incident_integration_relationships.rb +90 -0
  88. data/lib/datadog_api_client/v2/models/incident_non_datadog_creator.rb +90 -0
  89. data/lib/datadog_api_client/v2/models/incident_responders_type.rb +26 -0
  90. data/lib/datadog_api_client/v2/models/incident_response_attributes.rb +69 -4
  91. data/lib/datadog_api_client/v2/models/incident_response_relationships.rb +42 -4
  92. data/lib/datadog_api_client/v2/models/incident_severity.rb +31 -0
  93. data/lib/datadog_api_client/v2/models/incident_todo_attributes.rb +24 -4
  94. data/lib/datadog_api_client/v2/models/incident_todo_relationships.rb +90 -0
  95. data/lib/datadog_api_client/v2/models/incident_todo_response_data.rb +11 -1
  96. data/lib/datadog_api_client/v2/models/incident_update_relationships.rb +8 -0
  97. data/lib/datadog_api_client/v2/models/incident_user_defined_field_type.rb +26 -0
  98. data/lib/datadog_api_client/v2/models/list_application_keys_response.rb +14 -4
  99. data/lib/datadog_api_client/v2/models/monthly_cost_attribution_attributes.rb +151 -0
  100. data/lib/datadog_api_client/v2/models/monthly_cost_attribution_body.rb +100 -0
  101. data/lib/datadog_api_client/v2/models/monthly_cost_attribution_meta.rb +92 -0
  102. data/lib/datadog_api_client/v2/models/monthly_cost_attribution_pagination.rb +88 -0
  103. data/lib/datadog_api_client/v2/models/monthly_cost_attribution_response.rb +92 -0
  104. data/lib/datadog_api_client/v2/models/okta_account.rb +129 -0
  105. data/lib/datadog_api_client/v2/models/okta_account_attributes.rb +170 -0
  106. data/lib/datadog_api_client/v2/models/okta_account_request.rb +98 -0
  107. data/lib/datadog_api_client/v2/models/okta_account_response.rb +80 -0
  108. data/lib/datadog_api_client/v2/models/okta_account_response_data.rb +140 -0
  109. data/lib/datadog_api_client/v2/models/okta_account_type.rb +26 -0
  110. data/lib/datadog_api_client/v2/models/okta_account_update_request.rb +98 -0
  111. data/lib/datadog_api_client/v2/models/okta_account_update_request_attributes.rb +149 -0
  112. data/lib/datadog_api_client/v2/models/okta_account_update_request_data.rb +90 -0
  113. data/lib/datadog_api_client/v2/models/okta_accounts_response.rb +82 -0
  114. data/lib/datadog_api_client/v2/models/partial_api_key_attributes.rb +24 -4
  115. data/lib/datadog_api_client/v2/models/powerpack_relationships.rb +2 -2
  116. data/lib/datadog_api_client/v2/models/powerpacks_response_meta_pagination.rb +8 -0
  117. data/lib/datadog_api_client/v2/models/projected_cost.rb +100 -0
  118. data/lib/datadog_api_client/v2/models/projected_cost_attributes.rb +132 -0
  119. data/lib/datadog_api_client/v2/models/projected_cost_response.rb +82 -0
  120. data/lib/datadog_api_client/v2/models/projected_cost_type.rb +26 -0
  121. data/lib/datadog_api_client/v2/models/relationship_to_incident_impact_data.rb +119 -0
  122. data/lib/datadog_api_client/v2/models/relationship_to_incident_impacts.rb +100 -0
  123. data/lib/datadog_api_client/v2/models/relationship_to_incident_responder_data.rb +119 -0
  124. data/lib/datadog_api_client/v2/models/relationship_to_incident_responders.rb +100 -0
  125. data/lib/datadog_api_client/v2/models/relationship_to_incident_user_defined_field_data.rb +119 -0
  126. data/lib/datadog_api_client/v2/models/relationship_to_incident_user_defined_fields.rb +100 -0
  127. data/lib/datadog_api_client/v2/models/security_monitoring_rule_type_create.rb +1 -0
  128. data/lib/datadog_api_client/v2/models/sensitive_data_scanner_standard_pattern_attributes.rb +13 -1
  129. data/lib/datadog_api_client/v2/models/sort_direction.rb +27 -0
  130. data/lib/datadog_api_client/version.rb +1 -1
  131. data/lib/datadog_api_client.rb +16 -1
  132. metadata +75 -2
@@ -30,12 +30,21 @@ module DatadogAPIClient::V2
30
30
  # Relationship to user.
31
31
  attr_accessor :created_by_user
32
32
 
33
+ # Relationship to impacts.
34
+ attr_accessor :impacts
35
+
33
36
  # A relationship reference for multiple integration metadata objects.
34
37
  attr_accessor :integrations
35
38
 
36
39
  # Relationship to user.
37
40
  attr_accessor :last_modified_by_user
38
41
 
42
+ # Relationship to incident responders.
43
+ attr_accessor :responders
44
+
45
+ # Relationship to incident user defined fields.
46
+ attr_accessor :user_defined_fields
47
+
39
48
  # Attribute mapping from ruby-style variable name to JSON key.
40
49
  # @!visibility private
41
50
  def self.attribute_map
@@ -43,8 +52,11 @@ module DatadogAPIClient::V2
43
52
  :'attachments' => :'attachments',
44
53
  :'commander_user' => :'commander_user',
45
54
  :'created_by_user' => :'created_by_user',
55
+ :'impacts' => :'impacts',
46
56
  :'integrations' => :'integrations',
47
- :'last_modified_by_user' => :'last_modified_by_user'
57
+ :'last_modified_by_user' => :'last_modified_by_user',
58
+ :'responders' => :'responders',
59
+ :'user_defined_fields' => :'user_defined_fields'
48
60
  }
49
61
  end
50
62
 
@@ -55,11 +67,22 @@ module DatadogAPIClient::V2
55
67
  :'attachments' => :'RelationshipToIncidentAttachment',
56
68
  :'commander_user' => :'NullableRelationshipToUser',
57
69
  :'created_by_user' => :'RelationshipToUser',
70
+ :'impacts' => :'RelationshipToIncidentImpacts',
58
71
  :'integrations' => :'RelationshipToIncidentIntegrationMetadatas',
59
- :'last_modified_by_user' => :'RelationshipToUser'
72
+ :'last_modified_by_user' => :'RelationshipToUser',
73
+ :'responders' => :'RelationshipToIncidentResponders',
74
+ :'user_defined_fields' => :'RelationshipToIncidentUserDefinedFields'
60
75
  }
61
76
  end
62
77
 
78
+ # List of attributes with nullable: true
79
+ # @!visibility private
80
+ def self.openapi_nullable
81
+ Set.new([
82
+ :'commander_user',
83
+ ])
84
+ end
85
+
63
86
  # Initializes the object
64
87
  # @param attributes [Hash] Model attributes in the form of hash
65
88
  # @!visibility private
@@ -88,6 +111,10 @@ module DatadogAPIClient::V2
88
111
  self.created_by_user = attributes[:'created_by_user']
89
112
  end
90
113
 
114
+ if attributes.key?(:'impacts')
115
+ self.impacts = attributes[:'impacts']
116
+ end
117
+
91
118
  if attributes.key?(:'integrations')
92
119
  self.integrations = attributes[:'integrations']
93
120
  end
@@ -95,6 +122,14 @@ module DatadogAPIClient::V2
95
122
  if attributes.key?(:'last_modified_by_user')
96
123
  self.last_modified_by_user = attributes[:'last_modified_by_user']
97
124
  end
125
+
126
+ if attributes.key?(:'responders')
127
+ self.responders = attributes[:'responders']
128
+ end
129
+
130
+ if attributes.key?(:'user_defined_fields')
131
+ self.user_defined_fields = attributes[:'user_defined_fields']
132
+ end
98
133
  end
99
134
 
100
135
  # Checks equality by comparing each attribute.
@@ -106,15 +141,18 @@ module DatadogAPIClient::V2
106
141
  attachments == o.attachments &&
107
142
  commander_user == o.commander_user &&
108
143
  created_by_user == o.created_by_user &&
144
+ impacts == o.impacts &&
109
145
  integrations == o.integrations &&
110
- last_modified_by_user == o.last_modified_by_user
146
+ last_modified_by_user == o.last_modified_by_user &&
147
+ responders == o.responders &&
148
+ user_defined_fields == o.user_defined_fields
111
149
  end
112
150
 
113
151
  # Calculates hash code according to all attributes.
114
152
  # @return [Integer] Hash code
115
153
  # @!visibility private
116
154
  def hash
117
- [attachments, commander_user, created_by_user, integrations, last_modified_by_user].hash
155
+ [attachments, commander_user, created_by_user, impacts, integrations, last_modified_by_user, responders, user_defined_fields].hash
118
156
  end
119
157
  end
120
158
  end
@@ -0,0 +1,31 @@
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 incident severity.
21
+ class IncidentSeverity
22
+ include BaseEnumModel
23
+
24
+ UNKNOWN = "UNKNOWN".freeze
25
+ SEV_1 = "SEV-1".freeze
26
+ SEV_2 = "SEV-2".freeze
27
+ SEV_3 = "SEV-3".freeze
28
+ SEV_4 = "SEV-4".freeze
29
+ SEV_5 = "SEV-5".freeze
30
+ end
31
+ end
@@ -30,12 +30,18 @@ module DatadogAPIClient::V2
30
30
  # The follow-up task's content.
31
31
  attr_reader :content
32
32
 
33
+ # Timestamp when the incident todo was created.
34
+ attr_accessor :created
35
+
33
36
  # Timestamp when the todo should be completed by.
34
37
  attr_accessor :due_date
35
38
 
36
39
  # UUID of the incident this todo is connected to.
37
40
  attr_accessor :incident_id
38
41
 
42
+ # Timestamp when the incident todo was last modified.
43
+ attr_accessor :modified
44
+
39
45
  # Attribute mapping from ruby-style variable name to JSON key.
40
46
  # @!visibility private
41
47
  def self.attribute_map
@@ -43,8 +49,10 @@ module DatadogAPIClient::V2
43
49
  :'assignees' => :'assignees',
44
50
  :'completed' => :'completed',
45
51
  :'content' => :'content',
52
+ :'created' => :'created',
46
53
  :'due_date' => :'due_date',
47
- :'incident_id' => :'incident_id'
54
+ :'incident_id' => :'incident_id',
55
+ :'modified' => :'modified'
48
56
  }
49
57
  end
50
58
 
@@ -55,8 +63,10 @@ module DatadogAPIClient::V2
55
63
  :'assignees' => :'Array<IncidentTodoAssignee>',
56
64
  :'completed' => :'String',
57
65
  :'content' => :'String',
66
+ :'created' => :'Time',
58
67
  :'due_date' => :'String',
59
- :'incident_id' => :'String'
68
+ :'incident_id' => :'String',
69
+ :'modified' => :'Time'
60
70
  }
61
71
  end
62
72
 
@@ -99,6 +109,10 @@ module DatadogAPIClient::V2
99
109
  self.content = attributes[:'content']
100
110
  end
101
111
 
112
+ if attributes.key?(:'created')
113
+ self.created = attributes[:'created']
114
+ end
115
+
102
116
  if attributes.key?(:'due_date')
103
117
  self.due_date = attributes[:'due_date']
104
118
  end
@@ -106,6 +120,10 @@ module DatadogAPIClient::V2
106
120
  if attributes.key?(:'incident_id')
107
121
  self.incident_id = attributes[:'incident_id']
108
122
  end
123
+
124
+ if attributes.key?(:'modified')
125
+ self.modified = attributes[:'modified']
126
+ end
109
127
  end
110
128
 
111
129
  # Check to see if the all the properties in the model are valid
@@ -146,15 +164,17 @@ module DatadogAPIClient::V2
146
164
  assignees == o.assignees &&
147
165
  completed == o.completed &&
148
166
  content == o.content &&
167
+ created == o.created &&
149
168
  due_date == o.due_date &&
150
- incident_id == o.incident_id
169
+ incident_id == o.incident_id &&
170
+ modified == o.modified
151
171
  end
152
172
 
153
173
  # Calculates hash code according to all attributes.
154
174
  # @return [Integer] Hash code
155
175
  # @!visibility private
156
176
  def hash
157
- [assignees, completed, content, due_date, incident_id].hash
177
+ [assignees, completed, content, created, due_date, incident_id, modified].hash
158
178
  end
159
179
  end
160
180
  end
@@ -0,0 +1,90 @@
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 incident's relationships from a response.
21
+ class IncidentTodoRelationships
22
+ include BaseGenericModel
23
+
24
+ # Relationship to user.
25
+ attr_accessor :created_by_user
26
+
27
+ # Relationship to user.
28
+ attr_accessor :last_modified_by_user
29
+
30
+ # Attribute mapping from ruby-style variable name to JSON key.
31
+ # @!visibility private
32
+ def self.attribute_map
33
+ {
34
+ :'created_by_user' => :'created_by_user',
35
+ :'last_modified_by_user' => :'last_modified_by_user'
36
+ }
37
+ end
38
+
39
+ # Attribute type mapping.
40
+ # @!visibility private
41
+ def self.openapi_types
42
+ {
43
+ :'created_by_user' => :'RelationshipToUser',
44
+ :'last_modified_by_user' => :'RelationshipToUser'
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::IncidentTodoRelationships` 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::IncidentTodoRelationships`. 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?(:'created_by_user')
65
+ self.created_by_user = attributes[:'created_by_user']
66
+ end
67
+
68
+ if attributes.key?(:'last_modified_by_user')
69
+ self.last_modified_by_user = attributes[:'last_modified_by_user']
70
+ end
71
+ end
72
+
73
+ # Checks equality by comparing each attribute.
74
+ # @param o [Object] Object to be compared
75
+ # @!visibility private
76
+ def ==(o)
77
+ return true if self.equal?(o)
78
+ self.class == o.class &&
79
+ created_by_user == o.created_by_user &&
80
+ last_modified_by_user == o.last_modified_by_user
81
+ end
82
+
83
+ # Calculates hash code according to all attributes.
84
+ # @return [Integer] Hash code
85
+ # @!visibility private
86
+ def hash
87
+ [created_by_user, last_modified_by_user].hash
88
+ end
89
+ end
90
+ end
@@ -27,6 +27,9 @@ module DatadogAPIClient::V2
27
27
  # The incident todo's ID.
28
28
  attr_reader :id
29
29
 
30
+ # The incident's relationships from a response.
31
+ attr_accessor :relationships
32
+
30
33
  # Todo resource type.
31
34
  attr_reader :type
32
35
 
@@ -36,6 +39,7 @@ module DatadogAPIClient::V2
36
39
  {
37
40
  :'attributes' => :'attributes',
38
41
  :'id' => :'id',
42
+ :'relationships' => :'relationships',
39
43
  :'type' => :'type'
40
44
  }
41
45
  end
@@ -46,6 +50,7 @@ module DatadogAPIClient::V2
46
50
  {
47
51
  :'attributes' => :'IncidentTodoAttributes',
48
52
  :'id' => :'String',
53
+ :'relationships' => :'IncidentTodoRelationships',
49
54
  :'type' => :'IncidentTodoType'
50
55
  }
51
56
  end
@@ -74,6 +79,10 @@ module DatadogAPIClient::V2
74
79
  self.id = attributes[:'id']
75
80
  end
76
81
 
82
+ if attributes.key?(:'relationships')
83
+ self.relationships = attributes[:'relationships']
84
+ end
85
+
77
86
  if attributes.key?(:'type')
78
87
  self.type = attributes[:'type']
79
88
  end
@@ -116,6 +125,7 @@ module DatadogAPIClient::V2
116
125
  self.class == o.class &&
117
126
  attributes == o.attributes &&
118
127
  id == o.id &&
128
+ relationships == o.relationships &&
119
129
  type == o.type
120
130
  end
121
131
 
@@ -123,7 +133,7 @@ module DatadogAPIClient::V2
123
133
  # @return [Integer] Hash code
124
134
  # @!visibility private
125
135
  def hash
126
- [attributes, id, type].hash
136
+ [attributes, id, relationships, type].hash
127
137
  end
128
138
  end
129
139
  end
@@ -50,6 +50,14 @@ module DatadogAPIClient::V2
50
50
  }
51
51
  end
52
52
 
53
+ # List of attributes with nullable: true
54
+ # @!visibility private
55
+ def self.openapi_nullable
56
+ Set.new([
57
+ :'commander_user',
58
+ ])
59
+ end
60
+
53
61
  # Initializes the object
54
62
  # @param attributes [Hash] Model attributes in the form of hash
55
63
  # @!visibility private
@@ -0,0 +1,26 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # The incident user defined fields type.
21
+ class IncidentUserDefinedFieldType
22
+ include BaseEnumModel
23
+
24
+ USER_DEFINED_FIELD = "user_defined_field".freeze
25
+ end
26
+ end
@@ -27,12 +27,16 @@ module DatadogAPIClient::V2
27
27
  # Array of objects related to the application key.
28
28
  attr_accessor :included
29
29
 
30
+ # Additional information related to the application key response.
31
+ attr_accessor :meta
32
+
30
33
  # Attribute mapping from ruby-style variable name to JSON key.
31
34
  # @!visibility private
32
35
  def self.attribute_map
33
36
  {
34
37
  :'data' => :'data',
35
- :'included' => :'included'
38
+ :'included' => :'included',
39
+ :'meta' => :'meta'
36
40
  }
37
41
  end
38
42
 
@@ -41,7 +45,8 @@ module DatadogAPIClient::V2
41
45
  def self.openapi_types
42
46
  {
43
47
  :'data' => :'Array<PartialApplicationKey>',
44
- :'included' => :'Array<ApplicationKeyResponseIncludedItem>'
48
+ :'included' => :'Array<ApplicationKeyResponseIncludedItem>',
49
+ :'meta' => :'ApplicationKeyResponseMeta'
45
50
  }
46
51
  end
47
52
 
@@ -72,6 +77,10 @@ module DatadogAPIClient::V2
72
77
  self.included = value
73
78
  end
74
79
  end
80
+
81
+ if attributes.key?(:'meta')
82
+ self.meta = attributes[:'meta']
83
+ end
75
84
  end
76
85
 
77
86
  # Checks equality by comparing each attribute.
@@ -81,14 +90,15 @@ module DatadogAPIClient::V2
81
90
  return true if self.equal?(o)
82
91
  self.class == o.class &&
83
92
  data == o.data &&
84
- included == o.included
93
+ included == o.included &&
94
+ meta == o.meta
85
95
  end
86
96
 
87
97
  # Calculates hash code according to all attributes.
88
98
  # @return [Integer] Hash code
89
99
  # @!visibility private
90
100
  def hash
91
- [data, included].hash
101
+ [data, included, meta].hash
92
102
  end
93
103
  end
94
104
  end
@@ -0,0 +1,151 @@
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
+ # Cost Attribution by Tag for a given organization.
21
+ class MonthlyCostAttributionAttributes
22
+ include BaseGenericModel
23
+
24
+ # Datetime in ISO-8601 format, UTC, precise to hour: `[YYYY-MM-DDThh]`.
25
+ attr_accessor :month
26
+
27
+ # The name of the organization.
28
+ attr_accessor :org_name
29
+
30
+ # The organization public ID.
31
+ attr_accessor :public_id
32
+
33
+ # The source of the cost attribution tag configuration and the selected tags in the format `<source_org_name>:::<selected tag 1>///<selected tag 2>///<selected tag 3>`.
34
+ attr_accessor :tag_config_source
35
+
36
+ # Tag keys and values.
37
+ # A `null` value here means that the requested tag breakdown cannot be applied because it does not match the [tags
38
+ # configured for usage attribution](https://docs.datadoghq.com/account_management/billing/usage_attribution/#getting-started).
39
+ # In this scenario the API returns the total cost, not broken down by tags.
40
+ attr_accessor :tags
41
+
42
+ # Shows the most recent hour in the current months for all organizations for which all costs were calculated.
43
+ attr_accessor :updated_at
44
+
45
+ # Fields in Cost Attribution by tag(s). Example: `infra_host_on_demand_cost`, `infra_host_committed_cost`, `infra_host_total_cost`, `infra_host_percentage_in_org`, `infra_host_percentage_in_account`.
46
+ attr_accessor :values
47
+
48
+ # Attribute mapping from ruby-style variable name to JSON key.
49
+ # @!visibility private
50
+ def self.attribute_map
51
+ {
52
+ :'month' => :'month',
53
+ :'org_name' => :'org_name',
54
+ :'public_id' => :'public_id',
55
+ :'tag_config_source' => :'tag_config_source',
56
+ :'tags' => :'tags',
57
+ :'updated_at' => :'updated_at',
58
+ :'values' => :'values'
59
+ }
60
+ end
61
+
62
+ # Attribute type mapping.
63
+ # @!visibility private
64
+ def self.openapi_types
65
+ {
66
+ :'month' => :'Time',
67
+ :'org_name' => :'String',
68
+ :'public_id' => :'String',
69
+ :'tag_config_source' => :'String',
70
+ :'tags' => :'Hash<String, Array<String>>',
71
+ :'updated_at' => :'String',
72
+ :'values' => :'Object'
73
+ }
74
+ end
75
+
76
+ # List of attributes with nullable: true
77
+ # @!visibility private
78
+ def self.openapi_nullable
79
+ Set.new([
80
+ :'tags',
81
+ ])
82
+ end
83
+
84
+ # Initializes the object
85
+ # @param attributes [Hash] Model attributes in the form of hash
86
+ # @!visibility private
87
+ def initialize(attributes = {})
88
+ if (!attributes.is_a?(Hash))
89
+ fail ArgumentError, "The input argument (attributes) must be a hash in `DatadogAPIClient::V2::MonthlyCostAttributionAttributes` initialize method"
90
+ end
91
+
92
+ # check to see if the attribute exists and convert string to symbol for hash key
93
+ attributes = attributes.each_with_object({}) { |(k, v), h|
94
+ if (!self.class.attribute_map.key?(k.to_sym))
95
+ fail ArgumentError, "`#{k}` is not a valid attribute in `DatadogAPIClient::V2::MonthlyCostAttributionAttributes`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
96
+ end
97
+ h[k.to_sym] = v
98
+ }
99
+
100
+ if attributes.key?(:'month')
101
+ self.month = attributes[:'month']
102
+ end
103
+
104
+ if attributes.key?(:'org_name')
105
+ self.org_name = attributes[:'org_name']
106
+ end
107
+
108
+ if attributes.key?(:'public_id')
109
+ self.public_id = attributes[:'public_id']
110
+ end
111
+
112
+ if attributes.key?(:'tag_config_source')
113
+ self.tag_config_source = attributes[:'tag_config_source']
114
+ end
115
+
116
+ if attributes.key?(:'tags')
117
+ self.tags = attributes[:'tags']
118
+ end
119
+
120
+ if attributes.key?(:'updated_at')
121
+ self.updated_at = attributes[:'updated_at']
122
+ end
123
+
124
+ if attributes.key?(:'values')
125
+ self.values = attributes[:'values']
126
+ end
127
+ end
128
+
129
+ # Checks equality by comparing each attribute.
130
+ # @param o [Object] Object to be compared
131
+ # @!visibility private
132
+ def ==(o)
133
+ return true if self.equal?(o)
134
+ self.class == o.class &&
135
+ month == o.month &&
136
+ org_name == o.org_name &&
137
+ public_id == o.public_id &&
138
+ tag_config_source == o.tag_config_source &&
139
+ tags == o.tags &&
140
+ updated_at == o.updated_at &&
141
+ values == o.values
142
+ end
143
+
144
+ # Calculates hash code according to all attributes.
145
+ # @return [Integer] Hash code
146
+ # @!visibility private
147
+ def hash
148
+ [month, org_name, public_id, tag_config_source, tags, updated_at, values].hash
149
+ end
150
+ end
151
+ end