datadog_api_client 2.15.0 → 2.16.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 (165) hide show
  1. checksums.yaml +4 -4
  2. data/.apigentools-info +6 -6
  3. data/.generator/schemas/v1/openapi.yaml +643 -123
  4. data/.generator/schemas/v2/openapi.yaml +1815 -195
  5. data/.generator/src/generator/templates/api_client.j2 +19 -1
  6. data/.generator/src/generator/templates/model_base.j2 +1 -0
  7. data/CHANGELOG.md +30 -0
  8. data/examples/v1/dashboards/CreateDashboard_1754992756.rb +44 -0
  9. data/examples/v1/dashboards/CreateDashboard_2278756614.rb +91 -0
  10. data/examples/v1/monitors/CreateMonitor_1539578087.rb +36 -0
  11. data/examples/v1/synthetics/CreateSyntheticsBrowserTest.rb +1 -1
  12. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_2932742688.rb +1 -1
  13. data/examples/v1/synthetics/CreateSyntheticsBrowserTest_397420811.rb +1 -1
  14. data/examples/v1/usage-metering/GetUsageCIApp.rb +4 -1
  15. data/examples/v1/usage-metering/GetUsageCWS.rb +4 -1
  16. data/examples/v1/usage-metering/GetUsageCloudSecurityPostureManagement.rb +1 -1
  17. data/examples/v2/apm-retention-filters/CreateApmRetentionFilter.rb +20 -0
  18. data/examples/v2/apm-retention-filters/DeleteApmRetentionFilter.rb +8 -0
  19. data/examples/v2/apm-retention-filters/GetApmRetentionFilter.rb +8 -0
  20. data/examples/v2/apm-retention-filters/ListApmRetentionFilters.rb +5 -0
  21. data/examples/v2/apm-retention-filters/ReorderApmRetentionFilters.rb +18 -0
  22. data/examples/v2/apm-retention-filters/UpdateApmRetentionFilter.rb +24 -0
  23. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent.rb +0 -3
  24. data/examples/v2/ci-visibility-pipelines/CreateCIAppPipelineEvent_129899466.rb +0 -8
  25. data/examples/v2/container-images/ListContainerImages.rb +8 -0
  26. data/examples/v2/container-images/ListContainerImages_3088586393.rb +11 -0
  27. data/examples/v2/container-images/ListContainerImages_3974828736.rb +11 -0
  28. data/examples/v2/gcp-integration/CreateGCPSTSAccount_109518525.rb +19 -0
  29. data/examples/v2/powerpack/CreatePowerpack.rb +47 -0
  30. data/examples/v2/powerpack/DeletePowerpack.rb +8 -0
  31. data/examples/v2/powerpack/GetPowerpack.rb +8 -0
  32. data/examples/v2/powerpack/ListPowerpacks.rb +8 -0
  33. data/examples/v2/powerpack/ListPowerpacks_1173755071.rb +8 -0
  34. data/examples/v2/powerpack/UpdatePowerpack.rb +50 -0
  35. data/examples/v2/rum/CreateRUMApplication.rb +1 -1
  36. data/examples/v2/service-accounts/CreateServiceAccountApplicationKey.rb +5 -7
  37. data/examples/v2/service-accounts/DeleteServiceAccountApplicationKey.rb +7 -1
  38. data/examples/v2/service-accounts/GetServiceAccountApplicationKey.rb +7 -1
  39. data/examples/v2/service-accounts/ListServiceAccountApplicationKeys.rb +4 -1
  40. data/examples/v2/service-accounts/UpdateServiceAccountApplicationKey.rb +11 -9
  41. data/examples/v2/service-definition/CreateOrUpdateServiceDefinitions.rb +23 -12
  42. data/examples/v2/service-definition/CreateOrUpdateServiceDefinitions_2621709423.rb +53 -0
  43. data/lib/datadog_api_client/api_client.rb +19 -1
  44. data/lib/datadog_api_client/configuration.rb +1 -1
  45. data/lib/datadog_api_client/inflector.rb +80 -0
  46. data/lib/datadog_api_client/v1/api/monitors_api.rb +1 -20
  47. data/lib/datadog_api_client/v1/api/usage_metering_api.rb +6 -6
  48. data/lib/datadog_api_client/v1/api/webhooks_integration_api.rb +1 -1
  49. data/lib/datadog_api_client/v1/model_base.rb +1 -0
  50. data/lib/datadog_api_client/v1/models/hourly_usage_attribution_usage_type.rb +6 -4
  51. data/lib/datadog_api_client/v1/models/ip_prefixes_global.rb +94 -0
  52. data/lib/datadog_api_client/v1/models/ip_ranges.rb +11 -1
  53. data/lib/datadog_api_client/v1/models/monitor_options_custom_schedule.rb +82 -0
  54. data/lib/datadog_api_client/v1/models/monitor_options_custom_schedule_recurrence.rb +100 -0
  55. data/lib/datadog_api_client/v1/models/monitor_options_scheduling_options.rb +11 -1
  56. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_supported_metrics.rb +4 -0
  57. data/lib/datadog_api_client/v1/models/monthly_usage_attribution_values.rb +45 -5
  58. data/lib/datadog_api_client/v1/models/powerpack_template_variable_contents.rb +131 -0
  59. data/lib/datadog_api_client/v1/models/powerpack_template_variables.rb +94 -0
  60. data/lib/datadog_api_client/v1/models/powerpack_widget_definition.rb +169 -0
  61. data/lib/datadog_api_client/v1/models/powerpack_widget_definition_type.rb +26 -0
  62. data/lib/datadog_api_client/v1/models/split_config.rb +181 -0
  63. data/lib/datadog_api_client/v1/models/split_config_sort_compute.rb +119 -0
  64. data/lib/datadog_api_client/v1/models/split_dimension.rb +98 -0
  65. data/lib/datadog_api_client/v1/models/split_graph_source_widget_definition.rb +70 -0
  66. data/lib/datadog_api_client/v1/models/split_graph_viz_size.rb +29 -0
  67. data/lib/datadog_api_client/v1/models/split_graph_widget_definition.rb +191 -0
  68. data/lib/datadog_api_client/v1/models/split_graph_widget_definition_type.rb +26 -0
  69. data/lib/datadog_api_client/v1/models/split_sort.rb +108 -0
  70. data/lib/datadog_api_client/v1/models/split_vector_entry_item.rb +125 -0
  71. data/lib/datadog_api_client/v1/models/usage_attribution_values.rb +4 -4
  72. data/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_hour.rb +8 -8
  73. data/lib/datadog_api_client/v1/models/usage_cloud_security_posture_management_response.rb +2 -2
  74. data/lib/datadog_api_client/v1/models/usage_summary_date.rb +148 -8
  75. data/lib/datadog_api_client/v1/models/usage_summary_date_org.rb +148 -8
  76. data/lib/datadog_api_client/v1/models/usage_summary_response.rb +148 -8
  77. data/lib/datadog_api_client/v1/models/widget_definition.rb +8 -6
  78. data/lib/datadog_api_client/v2/api/apm_retention_filters_api.rb +423 -0
  79. data/lib/datadog_api_client/v2/api/ci_visibility_pipelines_api.rb +4 -10
  80. data/lib/datadog_api_client/v2/api/ci_visibility_tests_api.rb +3 -3
  81. data/lib/datadog_api_client/v2/api/container_images_api.rb +129 -0
  82. data/lib/datadog_api_client/v2/api/incidents_api.rb +1 -1
  83. data/lib/datadog_api_client/v2/api/powerpack_api.rb +383 -0
  84. data/lib/datadog_api_client/v2/api/service_definition_api.rb +2 -2
  85. data/lib/datadog_api_client/v2/api/usage_metering_api.rb +1 -1
  86. data/lib/datadog_api_client/v2/model_base.rb +1 -0
  87. data/lib/datadog_api_client/v2/models/apm_retention_filter_type.rb +26 -0
  88. data/lib/datadog_api_client/v2/models/container_image.rb +100 -0
  89. data/lib/datadog_api_client/v2/models/container_image_attributes.rb +261 -0
  90. data/lib/datadog_api_client/v2/models/container_image_flavor.rb +120 -0
  91. data/lib/datadog_api_client/v2/models/container_image_group.rb +110 -0
  92. data/lib/datadog_api_client/v2/models/container_image_group_attributes.rb +100 -0
  93. data/lib/datadog_api_client/v2/models/container_image_group_images_relationships_link.rb +92 -0
  94. data/lib/datadog_api_client/v2/models/container_image_group_relationships.rb +80 -0
  95. data/lib/datadog_api_client/v2/models/container_image_group_relationships_links.rb +80 -0
  96. data/lib/datadog_api_client/v2/models/container_image_group_type.rb +26 -0
  97. data/lib/datadog_api_client/v2/models/container_image_item.rb +63 -0
  98. data/lib/datadog_api_client/v2/models/container_image_meta.rb +80 -0
  99. data/lib/datadog_api_client/v2/models/container_image_meta_page.rb +160 -0
  100. data/lib/datadog_api_client/v2/models/container_image_meta_page_type.rb +26 -0
  101. data/lib/datadog_api_client/v2/models/container_image_type.rb +26 -0
  102. data/lib/datadog_api_client/v2/models/container_image_vulnerabilities.rb +140 -0
  103. data/lib/datadog_api_client/v2/models/container_images_response.rb +102 -0
  104. data/lib/datadog_api_client/v2/models/container_images_response_links.rb +130 -0
  105. data/lib/datadog_api_client/v2/models/data_scalar_column.rb +2 -2
  106. data/lib/datadog_api_client/v2/models/gcpsts_service_account_attributes.rb +13 -1
  107. data/lib/datadog_api_client/v2/models/group_scalar_column.rb +2 -2
  108. data/lib/datadog_api_client/v2/models/list_powerpacks_response.rb +114 -0
  109. data/lib/datadog_api_client/v2/models/powerpack.rb +80 -0
  110. data/lib/datadog_api_client/v2/models/powerpack_attributes.rb +164 -0
  111. data/lib/datadog_api_client/v2/models/powerpack_data.rb +110 -0
  112. data/lib/datadog_api_client/v2/models/powerpack_group_widget.rb +108 -0
  113. data/lib/datadog_api_client/v2/models/powerpack_group_widget_definition.rb +162 -0
  114. data/lib/datadog_api_client/v2/models/powerpack_group_widget_layout.rb +177 -0
  115. data/lib/datadog_api_client/v2/models/powerpack_inner_widget_layout.rb +177 -0
  116. data/lib/datadog_api_client/v2/models/powerpack_inner_widgets.rb +108 -0
  117. data/lib/datadog_api_client/v2/models/powerpack_relationships.rb +80 -0
  118. data/lib/datadog_api_client/v2/models/powerpack_response.rb +92 -0
  119. data/lib/datadog_api_client/v2/models/powerpack_response_links.rb +129 -0
  120. data/lib/datadog_api_client/v2/models/powerpack_template_variable.rb +110 -0
  121. data/lib/datadog_api_client/v2/models/powerpacks_response_meta.rb +80 -0
  122. data/lib/datadog_api_client/v2/models/powerpacks_response_meta_pagination.rb +150 -0
  123. data/lib/datadog_api_client/v2/models/reorder_retention_filters_request.rb +100 -0
  124. data/lib/datadog_api_client/v2/models/restriction_policy_binding.rb +1 -1
  125. data/lib/datadog_api_client/v2/models/retention_filter.rb +140 -0
  126. data/lib/datadog_api_client/v2/models/retention_filter_all.rb +140 -0
  127. data/lib/datadog_api_client/v2/models/retention_filter_all_attributes.rb +181 -0
  128. data/lib/datadog_api_client/v2/models/retention_filter_all_type.rb +28 -0
  129. data/lib/datadog_api_client/v2/models/retention_filter_attributes.rb +181 -0
  130. data/lib/datadog_api_client/v2/models/retention_filter_create_attributes.rb +183 -0
  131. data/lib/datadog_api_client/v2/models/retention_filter_create_data.rb +119 -0
  132. data/lib/datadog_api_client/v2/models/retention_filter_create_request.rb +98 -0
  133. data/lib/datadog_api_client/v2/models/retention_filter_response.rb +80 -0
  134. data/lib/datadog_api_client/v2/models/retention_filter_type.rb +26 -0
  135. data/lib/datadog_api_client/v2/models/retention_filter_update_data.rb +140 -0
  136. data/lib/datadog_api_client/v2/models/retention_filter_update_request.rb +98 -0
  137. data/lib/datadog_api_client/v2/models/retention_filter_without_attributes.rb +119 -0
  138. data/lib/datadog_api_client/v2/models/retention_filters_response.rb +100 -0
  139. data/lib/datadog_api_client/v2/models/scalar_column_type_group.rb +26 -0
  140. data/lib/datadog_api_client/v2/models/scalar_column_type_number.rb +26 -0
  141. data/lib/datadog_api_client/v2/models/scalar_meta.rb +8 -0
  142. data/lib/datadog_api_client/v2/models/service_definition_schema.rb +2 -1
  143. data/lib/datadog_api_client/v2/models/service_definition_schema_versions.rb +1 -0
  144. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2.rb +247 -0
  145. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_contact.rb +129 -0
  146. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_integrations.rb +90 -0
  147. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_link.rb +150 -0
  148. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_opsgenie.rb +108 -0
  149. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_opsgenie_region.rb +27 -0
  150. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_pagerduty.rb +80 -0
  151. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_type.rb +32 -0
  152. data/lib/datadog_api_client/v2/models/service_definition_v2_dot2_version.rb +26 -0
  153. data/lib/datadog_api_client/v2/models/service_definitions_create_request.rb +1 -0
  154. data/lib/datadog_api_client/v2/models/spans_filter.rb +80 -0
  155. data/lib/datadog_api_client/v2/models/spans_filter_create.rb +98 -0
  156. data/lib/datadog_api_client/version.rb +1 -1
  157. data/run-tests.sh +6 -5
  158. metadata +102 -9
  159. data/examples/v1/usage-metering/GetUsageCIApp_1064440884.rb +0 -8
  160. data/examples/v1/usage-metering/GetUsageCWS_736958514.rb +0 -8
  161. data/examples/v2/service-accounts/CreateServiceAccountApplicationKey_1761876297.rb +0 -17
  162. data/examples/v2/service-accounts/DeleteServiceAccountApplicationKey_992091161.rb +0 -11
  163. data/examples/v2/service-accounts/GetServiceAccountApplicationKey_819075131.rb +0 -11
  164. data/examples/v2/service-accounts/ListServiceAccountApplicationKeys_1268914341.rb +0 -8
  165. data/examples/v2/service-accounts/UpdateServiceAccountApplicationKey_768415790.rb +0 -22
@@ -0,0 +1,383 @@
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 'cgi'
17
+
18
+ module DatadogAPIClient::V2
19
+ class PowerpackAPI
20
+ attr_accessor :api_client
21
+
22
+ def initialize(api_client = DatadogAPIClient::APIClient.default)
23
+ @api_client = api_client
24
+ end
25
+
26
+ # Create a new powerpack.
27
+ #
28
+ # @see #create_powerpack_with_http_info
29
+ def create_powerpack(body, opts = {})
30
+ data, _status_code, _headers = create_powerpack_with_http_info(body, opts)
31
+ data
32
+ end
33
+
34
+ # Create a new powerpack.
35
+ #
36
+ # Create a powerpack.
37
+ #
38
+ # @param body [Powerpack] Create a powerpack request body.
39
+ # @param opts [Hash] the optional parameters
40
+ # @return [Array<(PowerpackResponse, Integer, Hash)>] PowerpackResponse data, response status code and response headers
41
+ def create_powerpack_with_http_info(body, opts = {})
42
+
43
+ if @api_client.config.debugging
44
+ @api_client.config.logger.debug 'Calling API: PowerpackAPI.create_powerpack ...'
45
+ end
46
+ # verify the required parameter 'body' is set
47
+ if @api_client.config.client_side_validation && body.nil?
48
+ fail ArgumentError, "Missing the required parameter 'body' when calling PowerpackAPI.create_powerpack"
49
+ end
50
+ # resource path
51
+ local_var_path = '/api/v2/powerpacks'
52
+
53
+ # query parameters
54
+ query_params = opts[:query_params] || {}
55
+
56
+ # header parameters
57
+ header_params = opts[:header_params] || {}
58
+ # HTTP header 'Accept' (if needed)
59
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
60
+ # HTTP header 'Content-Type'
61
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
62
+
63
+ # form parameters
64
+ form_params = opts[:form_params] || {}
65
+
66
+ # http body (model)
67
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
68
+
69
+ # return_type
70
+ return_type = opts[:debug_return_type] || 'PowerpackResponse'
71
+
72
+ # auth_names
73
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
74
+
75
+ new_options = opts.merge(
76
+ :operation => :create_powerpack,
77
+ :header_params => header_params,
78
+ :query_params => query_params,
79
+ :form_params => form_params,
80
+ :body => post_body,
81
+ :auth_names => auth_names,
82
+ :return_type => return_type,
83
+ :api_version => "V2"
84
+ )
85
+
86
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Post, local_var_path, new_options)
87
+ if @api_client.config.debugging
88
+ @api_client.config.logger.debug "API called: PowerpackAPI#create_powerpack\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
89
+ end
90
+ return data, status_code, headers
91
+ end
92
+
93
+ # Delete a powerpack.
94
+ #
95
+ # @see #delete_powerpack_with_http_info
96
+ def delete_powerpack(powerpack_id, opts = {})
97
+ delete_powerpack_with_http_info(powerpack_id, opts)
98
+ nil
99
+ end
100
+
101
+ # Delete a powerpack.
102
+ #
103
+ # Delete a powerpack.
104
+ #
105
+ # @param powerpack_id [String] Powerpack id
106
+ # @param opts [Hash] the optional parameters
107
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
108
+ def delete_powerpack_with_http_info(powerpack_id, opts = {})
109
+
110
+ if @api_client.config.debugging
111
+ @api_client.config.logger.debug 'Calling API: PowerpackAPI.delete_powerpack ...'
112
+ end
113
+ # verify the required parameter 'powerpack_id' is set
114
+ if @api_client.config.client_side_validation && powerpack_id.nil?
115
+ fail ArgumentError, "Missing the required parameter 'powerpack_id' when calling PowerpackAPI.delete_powerpack"
116
+ end
117
+ # resource path
118
+ local_var_path = '/api/v2/powerpacks/{powerpack_id}'.sub('{powerpack_id}', CGI.escape(powerpack_id.to_s).gsub('%2F', '/'))
119
+
120
+ # query parameters
121
+ query_params = opts[:query_params] || {}
122
+
123
+ # header parameters
124
+ header_params = opts[:header_params] || {}
125
+ # HTTP header 'Accept' (if needed)
126
+ header_params['Accept'] = @api_client.select_header_accept(['*/*'])
127
+
128
+ # form parameters
129
+ form_params = opts[:form_params] || {}
130
+
131
+ # http body (model)
132
+ post_body = opts[:debug_body]
133
+
134
+ # return_type
135
+ return_type = opts[:debug_return_type]
136
+
137
+ # auth_names
138
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
139
+
140
+ new_options = opts.merge(
141
+ :operation => :delete_powerpack,
142
+ :header_params => header_params,
143
+ :query_params => query_params,
144
+ :form_params => form_params,
145
+ :body => post_body,
146
+ :auth_names => auth_names,
147
+ :return_type => return_type,
148
+ :api_version => "V2"
149
+ )
150
+
151
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Delete, local_var_path, new_options)
152
+ if @api_client.config.debugging
153
+ @api_client.config.logger.debug "API called: PowerpackAPI#delete_powerpack\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
154
+ end
155
+ return data, status_code, headers
156
+ end
157
+
158
+ # Get a Powerpack.
159
+ #
160
+ # @see #get_powerpack_with_http_info
161
+ def get_powerpack(powerpack_id, opts = {})
162
+ data, _status_code, _headers = get_powerpack_with_http_info(powerpack_id, opts)
163
+ data
164
+ end
165
+
166
+ # Get a Powerpack.
167
+ #
168
+ # Get a powerpack.
169
+ #
170
+ # @param powerpack_id [String] ID of the powerpack.
171
+ # @param opts [Hash] the optional parameters
172
+ # @return [Array<(PowerpackResponse, Integer, Hash)>] PowerpackResponse data, response status code and response headers
173
+ def get_powerpack_with_http_info(powerpack_id, opts = {})
174
+
175
+ if @api_client.config.debugging
176
+ @api_client.config.logger.debug 'Calling API: PowerpackAPI.get_powerpack ...'
177
+ end
178
+ # verify the required parameter 'powerpack_id' is set
179
+ if @api_client.config.client_side_validation && powerpack_id.nil?
180
+ fail ArgumentError, "Missing the required parameter 'powerpack_id' when calling PowerpackAPI.get_powerpack"
181
+ end
182
+ # resource path
183
+ local_var_path = '/api/v2/powerpacks/{powerpack_id}'.sub('{powerpack_id}', CGI.escape(powerpack_id.to_s).gsub('%2F', '/'))
184
+
185
+ # query parameters
186
+ query_params = opts[:query_params] || {}
187
+
188
+ # header parameters
189
+ header_params = opts[:header_params] || {}
190
+ # HTTP header 'Accept' (if needed)
191
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
192
+
193
+ # form parameters
194
+ form_params = opts[:form_params] || {}
195
+
196
+ # http body (model)
197
+ post_body = opts[:debug_body]
198
+
199
+ # return_type
200
+ return_type = opts[:debug_return_type] || 'PowerpackResponse'
201
+
202
+ # auth_names
203
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
204
+
205
+ new_options = opts.merge(
206
+ :operation => :get_powerpack,
207
+ :header_params => header_params,
208
+ :query_params => query_params,
209
+ :form_params => form_params,
210
+ :body => post_body,
211
+ :auth_names => auth_names,
212
+ :return_type => return_type,
213
+ :api_version => "V2"
214
+ )
215
+
216
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
217
+ if @api_client.config.debugging
218
+ @api_client.config.logger.debug "API called: PowerpackAPI#get_powerpack\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
219
+ end
220
+ return data, status_code, headers
221
+ end
222
+
223
+ # Get all powerpacks.
224
+ #
225
+ # @see #list_powerpacks_with_http_info
226
+ def list_powerpacks(opts = {})
227
+ data, _status_code, _headers = list_powerpacks_with_http_info(opts)
228
+ data
229
+ end
230
+
231
+ # Get all powerpacks.
232
+ #
233
+ # Get a list of all powerpacks.
234
+ #
235
+ # @param opts [Hash] the optional parameters
236
+ # @option opts [Integer] :page_limit Maximum number of powerpacks in the response.
237
+ # @option opts [Integer] :page_offset Specific offset to use as the beginning of the returned page.
238
+ # @return [Array<(ListPowerpacksResponse, Integer, Hash)>] ListPowerpacksResponse data, response status code and response headers
239
+ def list_powerpacks_with_http_info(opts = {})
240
+
241
+ if @api_client.config.debugging
242
+ @api_client.config.logger.debug 'Calling API: PowerpackAPI.list_powerpacks ...'
243
+ end
244
+ if @api_client.config.client_side_validation && !opts[:'page_limit'].nil? && opts[:'page_limit'] > 1000
245
+ fail ArgumentError, 'invalid value for "opts[:"page_limit"]" when calling PowerpackAPI.list_powerpacks, must be smaller than or equal to 1000.'
246
+ end
247
+ # resource path
248
+ local_var_path = '/api/v2/powerpacks'
249
+
250
+ # query parameters
251
+ query_params = opts[:query_params] || {}
252
+ query_params[:'page[limit]'] = opts[:'page_limit'] if !opts[:'page_limit'].nil?
253
+ query_params[:'page[offset]'] = opts[:'page_offset'] if !opts[:'page_offset'].nil?
254
+
255
+ # header parameters
256
+ header_params = opts[:header_params] || {}
257
+ # HTTP header 'Accept' (if needed)
258
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
259
+
260
+ # form parameters
261
+ form_params = opts[:form_params] || {}
262
+
263
+ # http body (model)
264
+ post_body = opts[:debug_body]
265
+
266
+ # return_type
267
+ return_type = opts[:debug_return_type] || 'ListPowerpacksResponse'
268
+
269
+ # auth_names
270
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
271
+
272
+ new_options = opts.merge(
273
+ :operation => :list_powerpacks,
274
+ :header_params => header_params,
275
+ :query_params => query_params,
276
+ :form_params => form_params,
277
+ :body => post_body,
278
+ :auth_names => auth_names,
279
+ :return_type => return_type,
280
+ :api_version => "V2"
281
+ )
282
+
283
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Get, local_var_path, new_options)
284
+ if @api_client.config.debugging
285
+ @api_client.config.logger.debug "API called: PowerpackAPI#list_powerpacks\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
286
+ end
287
+ return data, status_code, headers
288
+ end
289
+
290
+ # Get all powerpacks.
291
+ #
292
+ # Provide a paginated version of {#list_powerpacks}, returning all items.
293
+ #
294
+ # To use it you need to use a block: list_powerpacks_with_pagination { |item| p item }
295
+ #
296
+ # @yield [PowerpackData] Paginated items
297
+ def list_powerpacks_with_pagination(opts = {})
298
+ api_version = "V2"
299
+ page_size = @api_client.get_attribute_from_path(opts, "page_limit", 25)
300
+ @api_client.set_attribute_from_path(api_version, opts, "page_limit", Integer, page_size)
301
+ while true do
302
+ response = list_powerpacks(opts)
303
+ @api_client.get_attribute_from_path(response, "data").each { |item| yield(item) }
304
+ if @api_client.get_attribute_from_path(response, "data").length < page_size
305
+ break
306
+ end
307
+ @api_client.set_attribute_from_path(api_version, opts, "page_offset", Integer, @api_client.get_attribute_from_path(opts, "page_offset", 0) + page_size)
308
+ end
309
+ end
310
+
311
+ # Update a powerpack.
312
+ #
313
+ # @see #update_powerpack_with_http_info
314
+ def update_powerpack(powerpack_id, body, opts = {})
315
+ data, _status_code, _headers = update_powerpack_with_http_info(powerpack_id, body, opts)
316
+ data
317
+ end
318
+
319
+ # Update a powerpack.
320
+ #
321
+ # Update a powerpack.
322
+ #
323
+ # @param powerpack_id [String] ID of the powerpack.
324
+ # @param body [Powerpack] Update a powerpack request body.
325
+ # @param opts [Hash] the optional parameters
326
+ # @return [Array<(PowerpackResponse, Integer, Hash)>] PowerpackResponse data, response status code and response headers
327
+ def update_powerpack_with_http_info(powerpack_id, body, opts = {})
328
+
329
+ if @api_client.config.debugging
330
+ @api_client.config.logger.debug 'Calling API: PowerpackAPI.update_powerpack ...'
331
+ end
332
+ # verify the required parameter 'powerpack_id' is set
333
+ if @api_client.config.client_side_validation && powerpack_id.nil?
334
+ fail ArgumentError, "Missing the required parameter 'powerpack_id' when calling PowerpackAPI.update_powerpack"
335
+ end
336
+ # verify the required parameter 'body' is set
337
+ if @api_client.config.client_side_validation && body.nil?
338
+ fail ArgumentError, "Missing the required parameter 'body' when calling PowerpackAPI.update_powerpack"
339
+ end
340
+ # resource path
341
+ local_var_path = '/api/v2/powerpacks/{powerpack_id}'.sub('{powerpack_id}', CGI.escape(powerpack_id.to_s).gsub('%2F', '/'))
342
+
343
+ # query parameters
344
+ query_params = opts[:query_params] || {}
345
+
346
+ # header parameters
347
+ header_params = opts[:header_params] || {}
348
+ # HTTP header 'Accept' (if needed)
349
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
350
+ # HTTP header 'Content-Type'
351
+ header_params['Content-Type'] = @api_client.select_header_content_type(['application/json'])
352
+
353
+ # form parameters
354
+ form_params = opts[:form_params] || {}
355
+
356
+ # http body (model)
357
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(body)
358
+
359
+ # return_type
360
+ return_type = opts[:debug_return_type] || 'PowerpackResponse'
361
+
362
+ # auth_names
363
+ auth_names = opts[:debug_auth_names] || [:apiKeyAuth, :appKeyAuth, :AuthZ]
364
+
365
+ new_options = opts.merge(
366
+ :operation => :update_powerpack,
367
+ :header_params => header_params,
368
+ :query_params => query_params,
369
+ :form_params => form_params,
370
+ :body => post_body,
371
+ :auth_names => auth_names,
372
+ :return_type => return_type,
373
+ :api_version => "V2"
374
+ )
375
+
376
+ data, status_code, headers = @api_client.call_api(Net::HTTP::Patch, local_var_path, new_options)
377
+ if @api_client.config.debugging
378
+ @api_client.config.logger.debug "API called: PowerpackAPI#update_powerpack\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
379
+ end
380
+ return data, status_code, headers
381
+ end
382
+ end
383
+ end
@@ -180,7 +180,7 @@ module DatadogAPIClient::V2
180
180
  if @api_client.config.client_side_validation && service_name.nil?
181
181
  fail ArgumentError, "Missing the required parameter 'service_name' when calling ServiceDefinitionAPI.get_service_definition"
182
182
  end
183
- allowable_values = ['v1', 'v2', 'v2.1']
183
+ allowable_values = ['v1', 'v2', 'v2.1', 'v2.2']
184
184
  if @api_client.config.client_side_validation && opts[:'schema_version'] && !allowable_values.include?(opts[:'schema_version'])
185
185
  fail ArgumentError, "invalid value for \"schema_version\", must be one of #{allowable_values}"
186
186
  end
@@ -248,7 +248,7 @@ module DatadogAPIClient::V2
248
248
  if @api_client.config.debugging
249
249
  @api_client.config.logger.debug 'Calling API: ServiceDefinitionAPI.list_service_definitions ...'
250
250
  end
251
- allowable_values = ['v1', 'v2', 'v2.1']
251
+ allowable_values = ['v1', 'v2', 'v2.1', 'v2.2']
252
252
  if @api_client.config.client_side_validation && opts[:'schema_version'] && !allowable_values.include?(opts[:'schema_version'])
253
253
  fail ArgumentError, "invalid value for \"schema_version\", must be one of #{allowable_values}"
254
254
  end
@@ -255,7 +255,7 @@ module DatadogAPIClient::V2
255
255
  # Get hourly usage by product family.
256
256
  #
257
257
  # @param filter_timestamp_start [Time] Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage beginning at this hour.
258
- # @param filter_product_families [String] Comma separated list of product families to retrieve. Available families are `all`, `analyzed_logs`, `application_security`, `audit_trail`, `serverless`, `ci_app`, `cloud_cost_management`, `cspm`, `custom_events`, `cws`, `dbm`, `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `ingested_spans`, `iot`, `lambda_traced_invocations`, `logs`, `network_flows`, `network_hosts`, `observability_pipelines`, `online_archive`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, `sds`, `snmp`, `synthetics_api`, `synthetics_browser`, `synthetics_mobile`, `synthetics_parallel_testing`, and `timeseries`. The following product family has been **deprecated**: `audit_logs`.
258
+ # @param filter_product_families [String] Comma separated list of product families to retrieve. Available families are `all`, `analyzed_logs`, `application_security`, `audit_trail`, `serverless`, `ci_app`, `cloud_cost_management`, `csm_container_enterprise`, `csm_host_enterprise`, `cspm`, `custom_events`, `cws`, `dbm`, `fargate`, `infra_hosts`, `incident_management`, `indexed_logs`, `indexed_spans`, `ingested_spans`, `iot`, `lambda_traced_invocations`, `logs`, `network_flows`, `network_hosts`, `netflow_monitoring`, `observability_pipelines`, `online_archive`, `profiling`, `rum`, `rum_browser_sessions`, `rum_mobile_sessions`, `sds`, `snmp`, `synthetics_api`, `synthetics_browser`, `synthetics_mobile`, `synthetics_parallel_testing`, and `timeseries`. The following product family has been **deprecated**: `audit_logs`.
259
259
  # @param opts [Hash] the optional parameters
260
260
  # @option opts [Time] :filter_timestamp_end Datetime in ISO-8601 format, UTC, precise to hour: [YYYY-MM-DDThh] for usage ending **before** this hour.
261
261
  # @option opts [Boolean] :filter_include_descendants Include child org usage in the response. Defaults to false.
@@ -94,6 +94,7 @@ module DatadogAPIClient::V2
94
94
  # @return [Object] Deserialized data
95
95
  # @!visibility private
96
96
  def _deserialize(type, value)
97
+ return nil if value == nil
97
98
  case type.to_sym
98
99
  when :Time
99
100
  Time.parse(value)
@@ -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 type of the resource.
21
+ class ApmRetentionFilterType
22
+ include BaseEnumModel
23
+
24
+ apm_retention_filter = "apm_retention_filter".freeze
25
+ end
26
+ end
@@ -0,0 +1,100 @@
1
+ =begin
2
+ #Datadog API V2 Collection
3
+
4
+ #Collection of all Datadog Public endpoints.
5
+
6
+ The version of the OpenAPI document: 1.0
7
+ Contact: support@datadoghq.com
8
+ Generated by: https://github.com/DataDog/datadog-api-client-ruby/tree/master/.generator
9
+
10
+ Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
11
+ This product includes software developed at Datadog (https://www.datadoghq.com/).
12
+ Copyright 2020-Present Datadog, Inc.
13
+
14
+ =end
15
+
16
+ require 'date'
17
+ require 'time'
18
+
19
+ module DatadogAPIClient::V2
20
+ # Container Image object.
21
+ class ContainerImage
22
+ include BaseGenericModel
23
+
24
+ # Attributes for a Container Image.
25
+ attr_accessor :attributes
26
+
27
+ # Container Image ID.
28
+ attr_accessor :id
29
+
30
+ # Type of Container Image.
31
+ attr_accessor :type
32
+
33
+ # Attribute mapping from ruby-style variable name to JSON key.
34
+ # @!visibility private
35
+ def self.attribute_map
36
+ {
37
+ :'attributes' => :'attributes',
38
+ :'id' => :'id',
39
+ :'type' => :'type'
40
+ }
41
+ end
42
+
43
+ # Attribute type mapping.
44
+ # @!visibility private
45
+ def self.openapi_types
46
+ {
47
+ :'attributes' => :'ContainerImageAttributes',
48
+ :'id' => :'String',
49
+ :'type' => :'ContainerImageType'
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::ContainerImage` 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::ContainerImage`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
65
+ end
66
+ h[k.to_sym] = v
67
+ }
68
+
69
+ if attributes.key?(:'attributes')
70
+ self.attributes = attributes[:'attributes']
71
+ end
72
+
73
+ if attributes.key?(:'id')
74
+ self.id = attributes[:'id']
75
+ end
76
+
77
+ if attributes.key?(:'type')
78
+ self.type = attributes[:'type']
79
+ end
80
+ end
81
+
82
+ # Checks equality by comparing each attribute.
83
+ # @param o [Object] Object to be compared
84
+ # @!visibility private
85
+ def ==(o)
86
+ return true if self.equal?(o)
87
+ self.class == o.class &&
88
+ attributes == o.attributes &&
89
+ id == o.id &&
90
+ type == o.type
91
+ end
92
+
93
+ # Calculates hash code according to all attributes.
94
+ # @return [Integer] Hash code
95
+ # @!visibility private
96
+ def hash
97
+ [attributes, id, type].hash
98
+ end
99
+ end
100
+ end