dependency-tracker-client 1.0.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 (227) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/LICENSE +201 -0
  4. data/README.md +276 -0
  5. data/Rakefile +10 -0
  6. data/dependency-tracker-client.gemspec +39 -0
  7. data/docs/About.md +25 -0
  8. data/docs/Analysis.md +21 -0
  9. data/docs/AnalysisApi.md +177 -0
  10. data/docs/AnalysisComment.md +21 -0
  11. data/docs/AnalysisRequest.md +27 -0
  12. data/docs/ApiKey.md +17 -0
  13. data/docs/BadgeApi.md +102 -0
  14. data/docs/BodyPart.md +31 -0
  15. data/docs/BomApi.md +335 -0
  16. data/docs/BomSubmitRequest.md +25 -0
  17. data/docs/CalculatorApi.md +61 -0
  18. data/docs/CloneProjectRequest.md +19 -0
  19. data/docs/Component.md +69 -0
  20. data/docs/ComponentApi.md +373 -0
  21. data/docs/ComponentMetrics.md +43 -0
  22. data/docs/ConfigProperty.md +25 -0
  23. data/docs/ConfigPropertyApi.md +167 -0
  24. data/docs/ContentDisposition.md +29 -0
  25. data/docs/Cwe.md +19 -0
  26. data/docs/CweApi.md +110 -0
  27. data/docs/DefaultApi.md +434 -0
  28. data/docs/Dependency.md +27 -0
  29. data/docs/DependencyApi.md +222 -0
  30. data/docs/DependencyMetrics.md +45 -0
  31. data/docs/DependencyRequest.md +21 -0
  32. data/docs/Finding.md +23 -0
  33. data/docs/FindingApi.md +113 -0
  34. data/docs/FormDataBodyPart.md +39 -0
  35. data/docs/FormDataContentDisposition.md +31 -0
  36. data/docs/FormDataMultiPart.md +35 -0
  37. data/docs/Framework.md +23 -0
  38. data/docs/IdentifiableObject.md +17 -0
  39. data/docs/LdapApi.md +220 -0
  40. data/docs/LdapUser.md +25 -0
  41. data/docs/License.md +37 -0
  42. data/docs/LicenseApi.md +159 -0
  43. data/docs/ManagedUser.md +37 -0
  44. data/docs/MappedLdapGroup.md +19 -0
  45. data/docs/MappedLdapGroupRequest.md +19 -0
  46. data/docs/MediaType.md +25 -0
  47. data/docs/MetricsApi.md +922 -0
  48. data/docs/MultiPart.md +33 -0
  49. data/docs/NotificationPublisher.md +29 -0
  50. data/docs/NotificationRule.md +35 -0
  51. data/docs/PackageURL.md +29 -0
  52. data/docs/ParameterizedHeader.md +19 -0
  53. data/docs/Permission.md +19 -0
  54. data/docs/PermissionApi.md +279 -0
  55. data/docs/PortfolioMetrics.md +53 -0
  56. data/docs/Project.md +43 -0
  57. data/docs/ProjectApi.md +445 -0
  58. data/docs/ProjectMetrics.md +47 -0
  59. data/docs/ProjectProperty.md +27 -0
  60. data/docs/ProjectPropertyApi.md +232 -0
  61. data/docs/Repository.md +29 -0
  62. data/docs/RepositoryApi.md +325 -0
  63. data/docs/RepositoryMetaComponent.md +27 -0
  64. data/docs/Score.md +23 -0
  65. data/docs/SearchApi.md +120 -0
  66. data/docs/SearchResult.md +17 -0
  67. data/docs/Tag.md +19 -0
  68. data/docs/Team.md +29 -0
  69. data/docs/TeamApi.md +432 -0
  70. data/docs/UserApi.md +715 -0
  71. data/docs/UserPrincipal.md +27 -0
  72. data/docs/VersionApi.md +52 -0
  73. data/docs/Vulnerability.md +69 -0
  74. data/docs/VulnerabilityApi.md +666 -0
  75. data/docs/VulnerabilityMetrics.md +23 -0
  76. data/docs/VulnerableSoftware.md +69 -0
  77. data/lib/dependency-tracker-client/api/analysis_api.rb +209 -0
  78. data/lib/dependency-tracker-client/api/badge_api.rb +148 -0
  79. data/lib/dependency-tracker-client/api/bom_api.rb +382 -0
  80. data/lib/dependency-tracker-client/api/calculator_api.rb +83 -0
  81. data/lib/dependency-tracker-client/api/component_api.rb +422 -0
  82. data/lib/dependency-tracker-client/api/config_property_api.rb +192 -0
  83. data/lib/dependency-tracker-client/api/cwe_api.rb +136 -0
  84. data/lib/dependency-tracker-client/api/default_api.rb +491 -0
  85. data/lib/dependency-tracker-client/api/dependency_api.rb +254 -0
  86. data/lib/dependency-tracker-client/api/finding_api.rb +140 -0
  87. data/lib/dependency-tracker-client/api/ldap_api.rb +254 -0
  88. data/lib/dependency-tracker-client/api/license_api.rb +190 -0
  89. data/lib/dependency-tracker-client/api/metrics_api.rb +1086 -0
  90. data/lib/dependency-tracker-client/api/permission_api.rb +342 -0
  91. data/lib/dependency-tracker-client/api/project_api.rb +504 -0
  92. data/lib/dependency-tracker-client/api/project_property_api.rb +274 -0
  93. data/lib/dependency-tracker-client/api/repository_api.rb +376 -0
  94. data/lib/dependency-tracker-client/api/search_api.rb +143 -0
  95. data/lib/dependency-tracker-client/api/team_api.rb +486 -0
  96. data/lib/dependency-tracker-client/api/user_api.rb +796 -0
  97. data/lib/dependency-tracker-client/api/version_api.rb +78 -0
  98. data/lib/dependency-tracker-client/api/vulnerability_api.rb +780 -0
  99. data/lib/dependency-tracker-client/api_client.rb +388 -0
  100. data/lib/dependency-tracker-client/api_error.rb +57 -0
  101. data/lib/dependency-tracker-client/configuration.rb +261 -0
  102. data/lib/dependency-tracker-client/models/about.rb +242 -0
  103. data/lib/dependency-tracker-client/models/analysis.rb +265 -0
  104. data/lib/dependency-tracker-client/models/analysis_comment.rb +234 -0
  105. data/lib/dependency-tracker-client/models/analysis_request.rb +371 -0
  106. data/lib/dependency-tracker-client/models/api_key.rb +250 -0
  107. data/lib/dependency-tracker-client/models/body_part.rb +273 -0
  108. data/lib/dependency-tracker-client/models/bom_submit_request.rb +328 -0
  109. data/lib/dependency-tracker-client/models/clone_project_request.rb +267 -0
  110. data/lib/dependency-tracker-client/models/component.rb +900 -0
  111. data/lib/dependency-tracker-client/models/component_metrics.rb +338 -0
  112. data/lib/dependency-tracker-client/models/config_property.rb +421 -0
  113. data/lib/dependency-tracker-client/models/content_disposition.rb +262 -0
  114. data/lib/dependency-tracker-client/models/cwe.rb +259 -0
  115. data/lib/dependency-tracker-client/models/dependency.rb +266 -0
  116. data/lib/dependency-tracker-client/models/dependency_metrics.rb +352 -0
  117. data/lib/dependency-tracker-client/models/dependency_request.rb +257 -0
  118. data/lib/dependency-tracker-client/models/finding.rb +239 -0
  119. data/lib/dependency-tracker-client/models/form_data_body_part.rb +309 -0
  120. data/lib/dependency-tracker-client/models/form_data_content_disposition.rb +271 -0
  121. data/lib/dependency-tracker-client/models/form_data_multi_part.rb +295 -0
  122. data/lib/dependency-tracker-client/models/framework.rb +233 -0
  123. data/lib/dependency-tracker-client/models/identifiable_object.rb +206 -0
  124. data/lib/dependency-tracker-client/models/ldap_user.rb +351 -0
  125. data/lib/dependency-tracker-client/models/license.rb +373 -0
  126. data/lib/dependency-tracker-client/models/managed_user.rb +480 -0
  127. data/lib/dependency-tracker-client/models/mapped_ldap_group.rb +255 -0
  128. data/lib/dependency-tracker-client/models/mapped_ldap_group_request.rb +267 -0
  129. data/lib/dependency-tracker-client/models/media_type.rb +244 -0
  130. data/lib/dependency-tracker-client/models/multi_part.rb +284 -0
  131. data/lib/dependency-tracker-client/models/notification_publisher.rb +388 -0
  132. data/lib/dependency-tracker-client/models/notification_rule.rb +426 -0
  133. data/lib/dependency-tracker-client/models/package_url.rb +262 -0
  134. data/lib/dependency-tracker-client/models/parameterized_header.rb +217 -0
  135. data/lib/dependency-tracker-client/models/permission.rb +250 -0
  136. data/lib/dependency-tracker-client/models/portfolio_metrics.rb +378 -0
  137. data/lib/dependency-tracker-client/models/project.rb +420 -0
  138. data/lib/dependency-tracker-client/models/project_metrics.rb +356 -0
  139. data/lib/dependency-tracker-client/models/project_property.rb +430 -0
  140. data/lib/dependency-tracker-client/models/repository.rb +319 -0
  141. data/lib/dependency-tracker-client/models/repository_meta_component.rb +305 -0
  142. data/lib/dependency-tracker-client/models/score.rb +233 -0
  143. data/lib/dependency-tracker-client/models/search_result.rb +208 -0
  144. data/lib/dependency-tracker-client/models/tag.rb +252 -0
  145. data/lib/dependency-tracker-client/models/team.rb +310 -0
  146. data/lib/dependency-tracker-client/models/user_principal.rb +255 -0
  147. data/lib/dependency-tracker-client/models/vulnerability.rb +729 -0
  148. data/lib/dependency-tracker-client/models/vulnerability_metrics.rb +238 -0
  149. data/lib/dependency-tracker-client/models/vulnerable_software.rb +442 -0
  150. data/lib/dependency-tracker-client/version.rb +15 -0
  151. data/lib/dependency-tracker-client.rb +109 -0
  152. data/pkg/dependency-tracker-client-1.0.0.gem +0 -0
  153. data/spec/api/analysis_api_spec.rb +70 -0
  154. data/spec/api/badge_api_spec.rb +58 -0
  155. data/spec/api/bom_api_spec.rb +106 -0
  156. data/spec/api/calculator_api_spec.rb +46 -0
  157. data/spec/api/component_api_spec.rb +110 -0
  158. data/spec/api/config_property_api_spec.rb +67 -0
  159. data/spec/api/cwe_api_spec.rb +56 -0
  160. data/spec/api/default_api_spec.rb +123 -0
  161. data/spec/api/dependency_api_spec.rb +79 -0
  162. data/spec/api/finding_api_spec.rb +57 -0
  163. data/spec/api/ldap_api_spec.rb +79 -0
  164. data/spec/api/license_api_spec.rb +66 -0
  165. data/spec/api/metrics_api_spec.rb +233 -0
  166. data/spec/api/permission_api_spec.rb +94 -0
  167. data/spec/api/project_api_spec.rb +126 -0
  168. data/spec/api/project_property_api_spec.rb +82 -0
  169. data/spec/api/repository_api_spec.rb +100 -0
  170. data/spec/api/search_api_spec.rb +59 -0
  171. data/spec/api/team_api_spec.rb +122 -0
  172. data/spec/api/user_api_spec.rb +183 -0
  173. data/spec/api/version_api_spec.rb +46 -0
  174. data/spec/api/vulnerability_api_spec.rb +177 -0
  175. data/spec/api_client_spec.rb +226 -0
  176. data/spec/configuration_spec.rb +42 -0
  177. data/spec/models/about_spec.rb +65 -0
  178. data/spec/models/analysis_comment_spec.rb +53 -0
  179. data/spec/models/analysis_request_spec.rb +75 -0
  180. data/spec/models/analysis_spec.rb +57 -0
  181. data/spec/models/api_key_spec.rb +41 -0
  182. data/spec/models/body_part_spec.rb +83 -0
  183. data/spec/models/bom_submit_request_spec.rb +65 -0
  184. data/spec/models/clone_project_request_spec.rb +47 -0
  185. data/spec/models/component_metrics_spec.rb +119 -0
  186. data/spec/models/component_spec.rb +201 -0
  187. data/spec/models/config_property_spec.rb +69 -0
  188. data/spec/models/content_disposition_spec.rb +77 -0
  189. data/spec/models/cwe_spec.rb +47 -0
  190. data/spec/models/dependency_metrics_spec.rb +125 -0
  191. data/spec/models/dependency_request_spec.rb +53 -0
  192. data/spec/models/dependency_spec.rb +71 -0
  193. data/spec/models/finding_spec.rb +59 -0
  194. data/spec/models/form_data_body_part_spec.rb +107 -0
  195. data/spec/models/form_data_content_disposition_spec.rb +83 -0
  196. data/spec/models/form_data_multi_part_spec.rb +95 -0
  197. data/spec/models/framework_spec.rb +59 -0
  198. data/spec/models/identifiable_object_spec.rb +41 -0
  199. data/spec/models/ldap_user_spec.rb +65 -0
  200. data/spec/models/license_spec.rb +101 -0
  201. data/spec/models/managed_user_spec.rb +101 -0
  202. data/spec/models/mapped_ldap_group_request_spec.rb +47 -0
  203. data/spec/models/mapped_ldap_group_spec.rb +47 -0
  204. data/spec/models/media_type_spec.rb +65 -0
  205. data/spec/models/multi_part_spec.rb +89 -0
  206. data/spec/models/notification_publisher_spec.rb +77 -0
  207. data/spec/models/notification_rule_spec.rb +107 -0
  208. data/spec/models/package_url_spec.rb +77 -0
  209. data/spec/models/parameterized_header_spec.rb +47 -0
  210. data/spec/models/permission_spec.rb +47 -0
  211. data/spec/models/portfolio_metrics_spec.rb +149 -0
  212. data/spec/models/project_metrics_spec.rb +131 -0
  213. data/spec/models/project_property_spec.rb +75 -0
  214. data/spec/models/project_spec.rb +119 -0
  215. data/spec/models/repository_meta_component_spec.rb +75 -0
  216. data/spec/models/repository_spec.rb +81 -0
  217. data/spec/models/score_spec.rb +59 -0
  218. data/spec/models/search_result_spec.rb +41 -0
  219. data/spec/models/tag_spec.rb +47 -0
  220. data/spec/models/team_spec.rb +77 -0
  221. data/spec/models/user_principal_spec.rb +71 -0
  222. data/spec/models/vulnerability_metrics_spec.rb +59 -0
  223. data/spec/models/vulnerability_spec.rb +201 -0
  224. data/spec/models/vulnerable_software_spec.rb +197 -0
  225. data/spec/spec_helper.rb +111 -0
  226. data/tmp/tmp.rb +11 -0
  227. metadata +402 -0
@@ -0,0 +1,1086 @@
1
+ =begin
2
+ #Dependency-Track API
3
+
4
+ #No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5
+
6
+ The version of the OpenAPI document: 3.8.0
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ OpenAPI Generator version: 4.3.1
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module DependencyTracker
16
+ class MetricsApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Returns current metrics for a specific component
23
+ # @param uuid [String] The UUID of the component to retrieve metrics for
24
+ # @param [Hash] opts the optional parameters
25
+ # @return [ComponentMetrics]
26
+ def get_component_current_metrics(uuid, opts = {})
27
+ data, _status_code, _headers = get_component_current_metrics_with_http_info(uuid, opts)
28
+ data
29
+ end
30
+
31
+ # Returns current metrics for a specific component
32
+ # @param uuid [String] The UUID of the component to retrieve metrics for
33
+ # @param [Hash] opts the optional parameters
34
+ # @return [Array<(ComponentMetrics, Integer, Hash)>] ComponentMetrics data, response status code and response headers
35
+ def get_component_current_metrics_with_http_info(uuid, opts = {})
36
+ if @api_client.config.debugging
37
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_component_current_metrics ...'
38
+ end
39
+ # verify the required parameter 'uuid' is set
40
+ if @api_client.config.client_side_validation && uuid.nil?
41
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.get_component_current_metrics"
42
+ end
43
+ # resource path
44
+ local_var_path = '/v1/metrics/component/{uuid}/current'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
45
+
46
+ # query parameters
47
+ query_params = opts[:query_params] || {}
48
+
49
+ # header parameters
50
+ header_params = opts[:header_params] || {}
51
+ # HTTP header 'Accept' (if needed)
52
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
53
+
54
+ # form parameters
55
+ form_params = opts[:form_params] || {}
56
+
57
+ # http body (model)
58
+ post_body = opts[:body]
59
+
60
+ # return_type
61
+ return_type = opts[:return_type] || 'ComponentMetrics'
62
+
63
+ # auth_names
64
+ auth_names = opts[:auth_names] || ['X-Api-Key']
65
+
66
+ new_options = opts.merge(
67
+ :header_params => header_params,
68
+ :query_params => query_params,
69
+ :form_params => form_params,
70
+ :body => post_body,
71
+ :auth_names => auth_names,
72
+ :return_type => return_type
73
+ )
74
+
75
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
76
+ if @api_client.config.debugging
77
+ @api_client.config.logger.debug "API called: MetricsApi#get_component_current_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
78
+ end
79
+ return data, status_code, headers
80
+ end
81
+
82
+ # Returns historical metrics for a specific component from a specific date
83
+ # Date format must be YYYYMMDD
84
+ # @param uuid [String] The UUID of the component to retrieve metrics for
85
+ # @param date [String] The start date to retrieve metrics for
86
+ # @param [Hash] opts the optional parameters
87
+ # @return [Array<ComponentMetrics>]
88
+ def get_component_metrics_since(uuid, date, opts = {})
89
+ data, _status_code, _headers = get_component_metrics_since_with_http_info(uuid, date, opts)
90
+ data
91
+ end
92
+
93
+ # Returns historical metrics for a specific component from a specific date
94
+ # Date format must be YYYYMMDD
95
+ # @param uuid [String] The UUID of the component to retrieve metrics for
96
+ # @param date [String] The start date to retrieve metrics for
97
+ # @param [Hash] opts the optional parameters
98
+ # @return [Array<(Array<ComponentMetrics>, Integer, Hash)>] Array<ComponentMetrics> data, response status code and response headers
99
+ def get_component_metrics_since_with_http_info(uuid, date, opts = {})
100
+ if @api_client.config.debugging
101
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_component_metrics_since ...'
102
+ end
103
+ # verify the required parameter 'uuid' is set
104
+ if @api_client.config.client_side_validation && uuid.nil?
105
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.get_component_metrics_since"
106
+ end
107
+ # verify the required parameter 'date' is set
108
+ if @api_client.config.client_side_validation && date.nil?
109
+ fail ArgumentError, "Missing the required parameter 'date' when calling MetricsApi.get_component_metrics_since"
110
+ end
111
+ # resource path
112
+ local_var_path = '/v1/metrics/component/{uuid}/since/{date}'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s)).sub('{' + 'date' + '}', CGI.escape(date.to_s))
113
+
114
+ # query parameters
115
+ query_params = opts[:query_params] || {}
116
+
117
+ # header parameters
118
+ header_params = opts[:header_params] || {}
119
+ # HTTP header 'Accept' (if needed)
120
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
121
+
122
+ # form parameters
123
+ form_params = opts[:form_params] || {}
124
+
125
+ # http body (model)
126
+ post_body = opts[:body]
127
+
128
+ # return_type
129
+ return_type = opts[:return_type] || 'Array<ComponentMetrics>'
130
+
131
+ # auth_names
132
+ auth_names = opts[:auth_names] || ['X-Api-Key']
133
+
134
+ new_options = opts.merge(
135
+ :header_params => header_params,
136
+ :query_params => query_params,
137
+ :form_params => form_params,
138
+ :body => post_body,
139
+ :auth_names => auth_names,
140
+ :return_type => return_type
141
+ )
142
+
143
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
144
+ if @api_client.config.debugging
145
+ @api_client.config.logger.debug "API called: MetricsApi#get_component_metrics_since\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
146
+ end
147
+ return data, status_code, headers
148
+ end
149
+
150
+ # Returns X days of historical metrics for a specific component
151
+ # @param uuid [String] The UUID of the component to retrieve metrics for
152
+ # @param days [Integer] The number of days back to retrieve metrics for
153
+ # @param [Hash] opts the optional parameters
154
+ # @return [Array<ComponentMetrics>]
155
+ def get_component_metrics_x_days(uuid, days, opts = {})
156
+ data, _status_code, _headers = get_component_metrics_x_days_with_http_info(uuid, days, opts)
157
+ data
158
+ end
159
+
160
+ # Returns X days of historical metrics for a specific component
161
+ # @param uuid [String] The UUID of the component to retrieve metrics for
162
+ # @param days [Integer] The number of days back to retrieve metrics for
163
+ # @param [Hash] opts the optional parameters
164
+ # @return [Array<(Array<ComponentMetrics>, Integer, Hash)>] Array<ComponentMetrics> data, response status code and response headers
165
+ def get_component_metrics_x_days_with_http_info(uuid, days, opts = {})
166
+ if @api_client.config.debugging
167
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_component_metrics_x_days ...'
168
+ end
169
+ # verify the required parameter 'uuid' is set
170
+ if @api_client.config.client_side_validation && uuid.nil?
171
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.get_component_metrics_x_days"
172
+ end
173
+ # verify the required parameter 'days' is set
174
+ if @api_client.config.client_side_validation && days.nil?
175
+ fail ArgumentError, "Missing the required parameter 'days' when calling MetricsApi.get_component_metrics_x_days"
176
+ end
177
+ # resource path
178
+ local_var_path = '/v1/metrics/component/{uuid}/days/{days}'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s)).sub('{' + 'days' + '}', CGI.escape(days.to_s))
179
+
180
+ # query parameters
181
+ query_params = opts[:query_params] || {}
182
+
183
+ # header parameters
184
+ header_params = opts[:header_params] || {}
185
+ # HTTP header 'Accept' (if needed)
186
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
187
+
188
+ # form parameters
189
+ form_params = opts[:form_params] || {}
190
+
191
+ # http body (model)
192
+ post_body = opts[:body]
193
+
194
+ # return_type
195
+ return_type = opts[:return_type] || 'Array<ComponentMetrics>'
196
+
197
+ # auth_names
198
+ auth_names = opts[:auth_names] || ['X-Api-Key']
199
+
200
+ new_options = opts.merge(
201
+ :header_params => header_params,
202
+ :query_params => query_params,
203
+ :form_params => form_params,
204
+ :body => post_body,
205
+ :auth_names => auth_names,
206
+ :return_type => return_type
207
+ )
208
+
209
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
210
+ if @api_client.config.debugging
211
+ @api_client.config.logger.debug "API called: MetricsApi#get_component_metrics_x_days\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
212
+ end
213
+ return data, status_code, headers
214
+ end
215
+
216
+ # Returns current metrics for a specific dependency
217
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
218
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
219
+ # @param [Hash] opts the optional parameters
220
+ # @return [DependencyMetrics]
221
+ def get_dependency_current_metrics(project_uuid, component_uuid, opts = {})
222
+ data, _status_code, _headers = get_dependency_current_metrics_with_http_info(project_uuid, component_uuid, opts)
223
+ data
224
+ end
225
+
226
+ # Returns current metrics for a specific dependency
227
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
228
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
229
+ # @param [Hash] opts the optional parameters
230
+ # @return [Array<(DependencyMetrics, Integer, Hash)>] DependencyMetrics data, response status code and response headers
231
+ def get_dependency_current_metrics_with_http_info(project_uuid, component_uuid, opts = {})
232
+ if @api_client.config.debugging
233
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_dependency_current_metrics ...'
234
+ end
235
+ # verify the required parameter 'project_uuid' is set
236
+ if @api_client.config.client_side_validation && project_uuid.nil?
237
+ fail ArgumentError, "Missing the required parameter 'project_uuid' when calling MetricsApi.get_dependency_current_metrics"
238
+ end
239
+ # verify the required parameter 'component_uuid' is set
240
+ if @api_client.config.client_side_validation && component_uuid.nil?
241
+ fail ArgumentError, "Missing the required parameter 'component_uuid' when calling MetricsApi.get_dependency_current_metrics"
242
+ end
243
+ # resource path
244
+ local_var_path = '/v1/metrics/project/{projectUuid}/component/{componentUuid}/current'.sub('{' + 'projectUuid' + '}', CGI.escape(project_uuid.to_s)).sub('{' + 'componentUuid' + '}', CGI.escape(component_uuid.to_s))
245
+
246
+ # query parameters
247
+ query_params = opts[:query_params] || {}
248
+
249
+ # header parameters
250
+ header_params = opts[:header_params] || {}
251
+ # HTTP header 'Accept' (if needed)
252
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
253
+
254
+ # form parameters
255
+ form_params = opts[:form_params] || {}
256
+
257
+ # http body (model)
258
+ post_body = opts[:body]
259
+
260
+ # return_type
261
+ return_type = opts[:return_type] || 'DependencyMetrics'
262
+
263
+ # auth_names
264
+ auth_names = opts[:auth_names] || ['X-Api-Key']
265
+
266
+ new_options = opts.merge(
267
+ :header_params => header_params,
268
+ :query_params => query_params,
269
+ :form_params => form_params,
270
+ :body => post_body,
271
+ :auth_names => auth_names,
272
+ :return_type => return_type
273
+ )
274
+
275
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
276
+ if @api_client.config.debugging
277
+ @api_client.config.logger.debug "API called: MetricsApi#get_dependency_current_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
278
+ end
279
+ return data, status_code, headers
280
+ end
281
+
282
+ # Returns historical metrics for a specific dependency from a specific date
283
+ # Date format must be YYYYMMDD
284
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
285
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
286
+ # @param date [String] The start date to retrieve metrics for
287
+ # @param [Hash] opts the optional parameters
288
+ # @return [Array<DependencyMetrics>]
289
+ def get_dependency_metrics_since(project_uuid, component_uuid, date, opts = {})
290
+ data, _status_code, _headers = get_dependency_metrics_since_with_http_info(project_uuid, component_uuid, date, opts)
291
+ data
292
+ end
293
+
294
+ # Returns historical metrics for a specific dependency from a specific date
295
+ # Date format must be YYYYMMDD
296
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
297
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
298
+ # @param date [String] The start date to retrieve metrics for
299
+ # @param [Hash] opts the optional parameters
300
+ # @return [Array<(Array<DependencyMetrics>, Integer, Hash)>] Array<DependencyMetrics> data, response status code and response headers
301
+ def get_dependency_metrics_since_with_http_info(project_uuid, component_uuid, date, opts = {})
302
+ if @api_client.config.debugging
303
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_dependency_metrics_since ...'
304
+ end
305
+ # verify the required parameter 'project_uuid' is set
306
+ if @api_client.config.client_side_validation && project_uuid.nil?
307
+ fail ArgumentError, "Missing the required parameter 'project_uuid' when calling MetricsApi.get_dependency_metrics_since"
308
+ end
309
+ # verify the required parameter 'component_uuid' is set
310
+ if @api_client.config.client_side_validation && component_uuid.nil?
311
+ fail ArgumentError, "Missing the required parameter 'component_uuid' when calling MetricsApi.get_dependency_metrics_since"
312
+ end
313
+ # verify the required parameter 'date' is set
314
+ if @api_client.config.client_side_validation && date.nil?
315
+ fail ArgumentError, "Missing the required parameter 'date' when calling MetricsApi.get_dependency_metrics_since"
316
+ end
317
+ # resource path
318
+ local_var_path = '/v1/metrics/project/{projectUuid}/component/{componentUuid}/since/{date}'.sub('{' + 'projectUuid' + '}', CGI.escape(project_uuid.to_s)).sub('{' + 'componentUuid' + '}', CGI.escape(component_uuid.to_s)).sub('{' + 'date' + '}', CGI.escape(date.to_s))
319
+
320
+ # query parameters
321
+ query_params = opts[:query_params] || {}
322
+
323
+ # header parameters
324
+ header_params = opts[:header_params] || {}
325
+ # HTTP header 'Accept' (if needed)
326
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
327
+
328
+ # form parameters
329
+ form_params = opts[:form_params] || {}
330
+
331
+ # http body (model)
332
+ post_body = opts[:body]
333
+
334
+ # return_type
335
+ return_type = opts[:return_type] || 'Array<DependencyMetrics>'
336
+
337
+ # auth_names
338
+ auth_names = opts[:auth_names] || ['X-Api-Key']
339
+
340
+ new_options = opts.merge(
341
+ :header_params => header_params,
342
+ :query_params => query_params,
343
+ :form_params => form_params,
344
+ :body => post_body,
345
+ :auth_names => auth_names,
346
+ :return_type => return_type
347
+ )
348
+
349
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
350
+ if @api_client.config.debugging
351
+ @api_client.config.logger.debug "API called: MetricsApi#get_dependency_metrics_since\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
352
+ end
353
+ return data, status_code, headers
354
+ end
355
+
356
+ # Returns X days of historical metrics for a specific dependency
357
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
358
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
359
+ # @param days [Integer] The number of days back to retrieve metrics for
360
+ # @param [Hash] opts the optional parameters
361
+ # @return [Array<DependencyMetrics>]
362
+ def get_dependency_metrics_x_days(project_uuid, component_uuid, days, opts = {})
363
+ data, _status_code, _headers = get_dependency_metrics_x_days_with_http_info(project_uuid, component_uuid, days, opts)
364
+ data
365
+ end
366
+
367
+ # Returns X days of historical metrics for a specific dependency
368
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
369
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
370
+ # @param days [Integer] The number of days back to retrieve metrics for
371
+ # @param [Hash] opts the optional parameters
372
+ # @return [Array<(Array<DependencyMetrics>, Integer, Hash)>] Array<DependencyMetrics> data, response status code and response headers
373
+ def get_dependency_metrics_x_days_with_http_info(project_uuid, component_uuid, days, opts = {})
374
+ if @api_client.config.debugging
375
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_dependency_metrics_x_days ...'
376
+ end
377
+ # verify the required parameter 'project_uuid' is set
378
+ if @api_client.config.client_side_validation && project_uuid.nil?
379
+ fail ArgumentError, "Missing the required parameter 'project_uuid' when calling MetricsApi.get_dependency_metrics_x_days"
380
+ end
381
+ # verify the required parameter 'component_uuid' is set
382
+ if @api_client.config.client_side_validation && component_uuid.nil?
383
+ fail ArgumentError, "Missing the required parameter 'component_uuid' when calling MetricsApi.get_dependency_metrics_x_days"
384
+ end
385
+ # verify the required parameter 'days' is set
386
+ if @api_client.config.client_side_validation && days.nil?
387
+ fail ArgumentError, "Missing the required parameter 'days' when calling MetricsApi.get_dependency_metrics_x_days"
388
+ end
389
+ # resource path
390
+ local_var_path = '/v1/metrics/project/{projectUuid}/component/{componentUuid}/days/{days}'.sub('{' + 'projectUuid' + '}', CGI.escape(project_uuid.to_s)).sub('{' + 'componentUuid' + '}', CGI.escape(component_uuid.to_s)).sub('{' + 'days' + '}', CGI.escape(days.to_s))
391
+
392
+ # query parameters
393
+ query_params = opts[:query_params] || {}
394
+
395
+ # header parameters
396
+ header_params = opts[:header_params] || {}
397
+ # HTTP header 'Accept' (if needed)
398
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
399
+
400
+ # form parameters
401
+ form_params = opts[:form_params] || {}
402
+
403
+ # http body (model)
404
+ post_body = opts[:body]
405
+
406
+ # return_type
407
+ return_type = opts[:return_type] || 'Array<DependencyMetrics>'
408
+
409
+ # auth_names
410
+ auth_names = opts[:auth_names] || ['X-Api-Key']
411
+
412
+ new_options = opts.merge(
413
+ :header_params => header_params,
414
+ :query_params => query_params,
415
+ :form_params => form_params,
416
+ :body => post_body,
417
+ :auth_names => auth_names,
418
+ :return_type => return_type
419
+ )
420
+
421
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
422
+ if @api_client.config.debugging
423
+ @api_client.config.logger.debug "API called: MetricsApi#get_dependency_metrics_x_days\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
424
+ end
425
+ return data, status_code, headers
426
+ end
427
+
428
+ # Returns current metrics for the entire portfolio
429
+ # @param [Hash] opts the optional parameters
430
+ # @return [PortfolioMetrics]
431
+ def get_portfolio_current_metrics(opts = {})
432
+ data, _status_code, _headers = get_portfolio_current_metrics_with_http_info(opts)
433
+ data
434
+ end
435
+
436
+ # Returns current metrics for the entire portfolio
437
+ # @param [Hash] opts the optional parameters
438
+ # @return [Array<(PortfolioMetrics, Integer, Hash)>] PortfolioMetrics data, response status code and response headers
439
+ def get_portfolio_current_metrics_with_http_info(opts = {})
440
+ if @api_client.config.debugging
441
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_portfolio_current_metrics ...'
442
+ end
443
+ # resource path
444
+ local_var_path = '/v1/metrics/portfolio/current'
445
+
446
+ # query parameters
447
+ query_params = opts[:query_params] || {}
448
+
449
+ # header parameters
450
+ header_params = opts[:header_params] || {}
451
+ # HTTP header 'Accept' (if needed)
452
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
453
+
454
+ # form parameters
455
+ form_params = opts[:form_params] || {}
456
+
457
+ # http body (model)
458
+ post_body = opts[:body]
459
+
460
+ # return_type
461
+ return_type = opts[:return_type] || 'PortfolioMetrics'
462
+
463
+ # auth_names
464
+ auth_names = opts[:auth_names] || ['X-Api-Key']
465
+
466
+ new_options = opts.merge(
467
+ :header_params => header_params,
468
+ :query_params => query_params,
469
+ :form_params => form_params,
470
+ :body => post_body,
471
+ :auth_names => auth_names,
472
+ :return_type => return_type
473
+ )
474
+
475
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
476
+ if @api_client.config.debugging
477
+ @api_client.config.logger.debug "API called: MetricsApi#get_portfolio_current_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
478
+ end
479
+ return data, status_code, headers
480
+ end
481
+
482
+ # Returns historical metrics for the entire portfolio from a specific date
483
+ # Date format must be YYYYMMDD
484
+ # @param date [String] The start date to retrieve metrics for
485
+ # @param [Hash] opts the optional parameters
486
+ # @return [Array<PortfolioMetrics>]
487
+ def get_portfolio_metrics_since(date, opts = {})
488
+ data, _status_code, _headers = get_portfolio_metrics_since_with_http_info(date, opts)
489
+ data
490
+ end
491
+
492
+ # Returns historical metrics for the entire portfolio from a specific date
493
+ # Date format must be YYYYMMDD
494
+ # @param date [String] The start date to retrieve metrics for
495
+ # @param [Hash] opts the optional parameters
496
+ # @return [Array<(Array<PortfolioMetrics>, Integer, Hash)>] Array<PortfolioMetrics> data, response status code and response headers
497
+ def get_portfolio_metrics_since_with_http_info(date, opts = {})
498
+ if @api_client.config.debugging
499
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_portfolio_metrics_since ...'
500
+ end
501
+ # verify the required parameter 'date' is set
502
+ if @api_client.config.client_side_validation && date.nil?
503
+ fail ArgumentError, "Missing the required parameter 'date' when calling MetricsApi.get_portfolio_metrics_since"
504
+ end
505
+ # resource path
506
+ local_var_path = '/v1/metrics/portfolio/since/{date}'.sub('{' + 'date' + '}', CGI.escape(date.to_s))
507
+
508
+ # query parameters
509
+ query_params = opts[:query_params] || {}
510
+
511
+ # header parameters
512
+ header_params = opts[:header_params] || {}
513
+ # HTTP header 'Accept' (if needed)
514
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
515
+
516
+ # form parameters
517
+ form_params = opts[:form_params] || {}
518
+
519
+ # http body (model)
520
+ post_body = opts[:body]
521
+
522
+ # return_type
523
+ return_type = opts[:return_type] || 'Array<PortfolioMetrics>'
524
+
525
+ # auth_names
526
+ auth_names = opts[:auth_names] || ['X-Api-Key']
527
+
528
+ new_options = opts.merge(
529
+ :header_params => header_params,
530
+ :query_params => query_params,
531
+ :form_params => form_params,
532
+ :body => post_body,
533
+ :auth_names => auth_names,
534
+ :return_type => return_type
535
+ )
536
+
537
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
538
+ if @api_client.config.debugging
539
+ @api_client.config.logger.debug "API called: MetricsApi#get_portfolio_metrics_since\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
540
+ end
541
+ return data, status_code, headers
542
+ end
543
+
544
+ # Returns X days of historical metrics for the entire portfolio
545
+ # @param days [Integer] The number of days back to retrieve metrics for
546
+ # @param [Hash] opts the optional parameters
547
+ # @return [Array<PortfolioMetrics>]
548
+ def get_portfolio_metrics_x_days(days, opts = {})
549
+ data, _status_code, _headers = get_portfolio_metrics_x_days_with_http_info(days, opts)
550
+ data
551
+ end
552
+
553
+ # Returns X days of historical metrics for the entire portfolio
554
+ # @param days [Integer] The number of days back to retrieve metrics for
555
+ # @param [Hash] opts the optional parameters
556
+ # @return [Array<(Array<PortfolioMetrics>, Integer, Hash)>] Array<PortfolioMetrics> data, response status code and response headers
557
+ def get_portfolio_metrics_x_days_with_http_info(days, opts = {})
558
+ if @api_client.config.debugging
559
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_portfolio_metrics_x_days ...'
560
+ end
561
+ # verify the required parameter 'days' is set
562
+ if @api_client.config.client_side_validation && days.nil?
563
+ fail ArgumentError, "Missing the required parameter 'days' when calling MetricsApi.get_portfolio_metrics_x_days"
564
+ end
565
+ # resource path
566
+ local_var_path = '/v1/metrics/portfolio/{days}/days'.sub('{' + 'days' + '}', CGI.escape(days.to_s))
567
+
568
+ # query parameters
569
+ query_params = opts[:query_params] || {}
570
+
571
+ # header parameters
572
+ header_params = opts[:header_params] || {}
573
+ # HTTP header 'Accept' (if needed)
574
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
575
+
576
+ # form parameters
577
+ form_params = opts[:form_params] || {}
578
+
579
+ # http body (model)
580
+ post_body = opts[:body]
581
+
582
+ # return_type
583
+ return_type = opts[:return_type] || 'Array<PortfolioMetrics>'
584
+
585
+ # auth_names
586
+ auth_names = opts[:auth_names] || ['X-Api-Key']
587
+
588
+ new_options = opts.merge(
589
+ :header_params => header_params,
590
+ :query_params => query_params,
591
+ :form_params => form_params,
592
+ :body => post_body,
593
+ :auth_names => auth_names,
594
+ :return_type => return_type
595
+ )
596
+
597
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
598
+ if @api_client.config.debugging
599
+ @api_client.config.logger.debug "API called: MetricsApi#get_portfolio_metrics_x_days\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
600
+ end
601
+ return data, status_code, headers
602
+ end
603
+
604
+ # Returns current metrics for a specific project
605
+ # @param uuid [String] The UUID of the project to retrieve metrics for
606
+ # @param [Hash] opts the optional parameters
607
+ # @return [ProjectMetrics]
608
+ def get_project_current_metrics(uuid, opts = {})
609
+ data, _status_code, _headers = get_project_current_metrics_with_http_info(uuid, opts)
610
+ data
611
+ end
612
+
613
+ # Returns current metrics for a specific project
614
+ # @param uuid [String] The UUID of the project to retrieve metrics for
615
+ # @param [Hash] opts the optional parameters
616
+ # @return [Array<(ProjectMetrics, Integer, Hash)>] ProjectMetrics data, response status code and response headers
617
+ def get_project_current_metrics_with_http_info(uuid, opts = {})
618
+ if @api_client.config.debugging
619
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_project_current_metrics ...'
620
+ end
621
+ # verify the required parameter 'uuid' is set
622
+ if @api_client.config.client_side_validation && uuid.nil?
623
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.get_project_current_metrics"
624
+ end
625
+ # resource path
626
+ local_var_path = '/v1/metrics/project/{uuid}/current'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
627
+
628
+ # query parameters
629
+ query_params = opts[:query_params] || {}
630
+
631
+ # header parameters
632
+ header_params = opts[:header_params] || {}
633
+ # HTTP header 'Accept' (if needed)
634
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
635
+
636
+ # form parameters
637
+ form_params = opts[:form_params] || {}
638
+
639
+ # http body (model)
640
+ post_body = opts[:body]
641
+
642
+ # return_type
643
+ return_type = opts[:return_type] || 'ProjectMetrics'
644
+
645
+ # auth_names
646
+ auth_names = opts[:auth_names] || ['X-Api-Key']
647
+
648
+ new_options = opts.merge(
649
+ :header_params => header_params,
650
+ :query_params => query_params,
651
+ :form_params => form_params,
652
+ :body => post_body,
653
+ :auth_names => auth_names,
654
+ :return_type => return_type
655
+ )
656
+
657
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
658
+ if @api_client.config.debugging
659
+ @api_client.config.logger.debug "API called: MetricsApi#get_project_current_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
660
+ end
661
+ return data, status_code, headers
662
+ end
663
+
664
+ # Returns historical metrics for a specific project from a specific date
665
+ # Date format must be YYYYMMDD
666
+ # @param uuid [String] The UUID of the project to retrieve metrics for
667
+ # @param date [String] The start date to retrieve metrics for
668
+ # @param [Hash] opts the optional parameters
669
+ # @return [Array<ProjectMetrics>]
670
+ def get_project_metrics_since(uuid, date, opts = {})
671
+ data, _status_code, _headers = get_project_metrics_since_with_http_info(uuid, date, opts)
672
+ data
673
+ end
674
+
675
+ # Returns historical metrics for a specific project from a specific date
676
+ # Date format must be YYYYMMDD
677
+ # @param uuid [String] The UUID of the project to retrieve metrics for
678
+ # @param date [String] The start date to retrieve metrics for
679
+ # @param [Hash] opts the optional parameters
680
+ # @return [Array<(Array<ProjectMetrics>, Integer, Hash)>] Array<ProjectMetrics> data, response status code and response headers
681
+ def get_project_metrics_since_with_http_info(uuid, date, opts = {})
682
+ if @api_client.config.debugging
683
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_project_metrics_since ...'
684
+ end
685
+ # verify the required parameter 'uuid' is set
686
+ if @api_client.config.client_side_validation && uuid.nil?
687
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.get_project_metrics_since"
688
+ end
689
+ # verify the required parameter 'date' is set
690
+ if @api_client.config.client_side_validation && date.nil?
691
+ fail ArgumentError, "Missing the required parameter 'date' when calling MetricsApi.get_project_metrics_since"
692
+ end
693
+ # resource path
694
+ local_var_path = '/v1/metrics/project/{uuid}/since/{date}'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s)).sub('{' + 'date' + '}', CGI.escape(date.to_s))
695
+
696
+ # query parameters
697
+ query_params = opts[:query_params] || {}
698
+
699
+ # header parameters
700
+ header_params = opts[:header_params] || {}
701
+ # HTTP header 'Accept' (if needed)
702
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
703
+
704
+ # form parameters
705
+ form_params = opts[:form_params] || {}
706
+
707
+ # http body (model)
708
+ post_body = opts[:body]
709
+
710
+ # return_type
711
+ return_type = opts[:return_type] || 'Array<ProjectMetrics>'
712
+
713
+ # auth_names
714
+ auth_names = opts[:auth_names] || ['X-Api-Key']
715
+
716
+ new_options = opts.merge(
717
+ :header_params => header_params,
718
+ :query_params => query_params,
719
+ :form_params => form_params,
720
+ :body => post_body,
721
+ :auth_names => auth_names,
722
+ :return_type => return_type
723
+ )
724
+
725
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
726
+ if @api_client.config.debugging
727
+ @api_client.config.logger.debug "API called: MetricsApi#get_project_metrics_since\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
728
+ end
729
+ return data, status_code, headers
730
+ end
731
+
732
+ # Returns X days of historical metrics for a specific project
733
+ # @param uuid [String] The UUID of the project to retrieve metrics for
734
+ # @param days [Integer] The number of days back to retrieve metrics for
735
+ # @param [Hash] opts the optional parameters
736
+ # @return [Array<ProjectMetrics>]
737
+ def get_project_metrics_x_days(uuid, days, opts = {})
738
+ data, _status_code, _headers = get_project_metrics_x_days_with_http_info(uuid, days, opts)
739
+ data
740
+ end
741
+
742
+ # Returns X days of historical metrics for a specific project
743
+ # @param uuid [String] The UUID of the project to retrieve metrics for
744
+ # @param days [Integer] The number of days back to retrieve metrics for
745
+ # @param [Hash] opts the optional parameters
746
+ # @return [Array<(Array<ProjectMetrics>, Integer, Hash)>] Array<ProjectMetrics> data, response status code and response headers
747
+ def get_project_metrics_x_days_with_http_info(uuid, days, opts = {})
748
+ if @api_client.config.debugging
749
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_project_metrics_x_days ...'
750
+ end
751
+ # verify the required parameter 'uuid' is set
752
+ if @api_client.config.client_side_validation && uuid.nil?
753
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.get_project_metrics_x_days"
754
+ end
755
+ # verify the required parameter 'days' is set
756
+ if @api_client.config.client_side_validation && days.nil?
757
+ fail ArgumentError, "Missing the required parameter 'days' when calling MetricsApi.get_project_metrics_x_days"
758
+ end
759
+ # resource path
760
+ local_var_path = '/v1/metrics/project/{uuid}/days/{days}'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s)).sub('{' + 'days' + '}', CGI.escape(days.to_s))
761
+
762
+ # query parameters
763
+ query_params = opts[:query_params] || {}
764
+
765
+ # header parameters
766
+ header_params = opts[:header_params] || {}
767
+ # HTTP header 'Accept' (if needed)
768
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
769
+
770
+ # form parameters
771
+ form_params = opts[:form_params] || {}
772
+
773
+ # http body (model)
774
+ post_body = opts[:body]
775
+
776
+ # return_type
777
+ return_type = opts[:return_type] || 'Array<ProjectMetrics>'
778
+
779
+ # auth_names
780
+ auth_names = opts[:auth_names] || ['X-Api-Key']
781
+
782
+ new_options = opts.merge(
783
+ :header_params => header_params,
784
+ :query_params => query_params,
785
+ :form_params => form_params,
786
+ :body => post_body,
787
+ :auth_names => auth_names,
788
+ :return_type => return_type
789
+ )
790
+
791
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
792
+ if @api_client.config.debugging
793
+ @api_client.config.logger.debug "API called: MetricsApi#get_project_metrics_x_days\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
794
+ end
795
+ return data, status_code, headers
796
+ end
797
+
798
+ # Returns the sum of all vulnerabilities in the database by year and month
799
+ # @param [Hash] opts the optional parameters
800
+ # @return [Array<VulnerabilityMetrics>]
801
+ def get_vulnerability_metrics(opts = {})
802
+ data, _status_code, _headers = get_vulnerability_metrics_with_http_info(opts)
803
+ data
804
+ end
805
+
806
+ # Returns the sum of all vulnerabilities in the database by year and month
807
+ # @param [Hash] opts the optional parameters
808
+ # @return [Array<(Array<VulnerabilityMetrics>, Integer, Hash)>] Array<VulnerabilityMetrics> data, response status code and response headers
809
+ def get_vulnerability_metrics_with_http_info(opts = {})
810
+ if @api_client.config.debugging
811
+ @api_client.config.logger.debug 'Calling API: MetricsApi.get_vulnerability_metrics ...'
812
+ end
813
+ # resource path
814
+ local_var_path = '/v1/metrics/vulnerability'
815
+
816
+ # query parameters
817
+ query_params = opts[:query_params] || {}
818
+
819
+ # header parameters
820
+ header_params = opts[:header_params] || {}
821
+ # HTTP header 'Accept' (if needed)
822
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
823
+
824
+ # form parameters
825
+ form_params = opts[:form_params] || {}
826
+
827
+ # http body (model)
828
+ post_body = opts[:body]
829
+
830
+ # return_type
831
+ return_type = opts[:return_type] || 'Array<VulnerabilityMetrics>'
832
+
833
+ # auth_names
834
+ auth_names = opts[:auth_names] || ['X-Api-Key']
835
+
836
+ new_options = opts.merge(
837
+ :header_params => header_params,
838
+ :query_params => query_params,
839
+ :form_params => form_params,
840
+ :body => post_body,
841
+ :auth_names => auth_names,
842
+ :return_type => return_type
843
+ )
844
+
845
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
846
+ if @api_client.config.debugging
847
+ @api_client.config.logger.debug "API called: MetricsApi#get_vulnerability_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
848
+ end
849
+ return data, status_code, headers
850
+ end
851
+
852
+ # Requests a refresh of a specific components metrics
853
+ # @param uuid [String] The UUID of the component to refresh metrics on
854
+ # @param [Hash] opts the optional parameters
855
+ # @return [nil]
856
+ def refresh_component_metrics(uuid, opts = {})
857
+ refresh_component_metrics_with_http_info(uuid, opts)
858
+ nil
859
+ end
860
+
861
+ # Requests a refresh of a specific components metrics
862
+ # @param uuid [String] The UUID of the component to refresh metrics on
863
+ # @param [Hash] opts the optional parameters
864
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
865
+ def refresh_component_metrics_with_http_info(uuid, opts = {})
866
+ if @api_client.config.debugging
867
+ @api_client.config.logger.debug 'Calling API: MetricsApi.refresh_component_metrics ...'
868
+ end
869
+ # verify the required parameter 'uuid' is set
870
+ if @api_client.config.client_side_validation && uuid.nil?
871
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.refresh_component_metrics"
872
+ end
873
+ # resource path
874
+ local_var_path = '/v1/metrics/component/{uuid}/refresh'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
875
+
876
+ # query parameters
877
+ query_params = opts[:query_params] || {}
878
+
879
+ # header parameters
880
+ header_params = opts[:header_params] || {}
881
+
882
+ # form parameters
883
+ form_params = opts[:form_params] || {}
884
+
885
+ # http body (model)
886
+ post_body = opts[:body]
887
+
888
+ # return_type
889
+ return_type = opts[:return_type]
890
+
891
+ # auth_names
892
+ auth_names = opts[:auth_names] || ['X-Api-Key']
893
+
894
+ new_options = opts.merge(
895
+ :header_params => header_params,
896
+ :query_params => query_params,
897
+ :form_params => form_params,
898
+ :body => post_body,
899
+ :auth_names => auth_names,
900
+ :return_type => return_type
901
+ )
902
+
903
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
904
+ if @api_client.config.debugging
905
+ @api_client.config.logger.debug "API called: MetricsApi#refresh_component_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
906
+ end
907
+ return data, status_code, headers
908
+ end
909
+
910
+ # Requests a refresh of a specific dependency metrics
911
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
912
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
913
+ # @param [Hash] opts the optional parameters
914
+ # @return [nil]
915
+ def refresh_dependency_metrics(project_uuid, component_uuid, opts = {})
916
+ refresh_dependency_metrics_with_http_info(project_uuid, component_uuid, opts)
917
+ nil
918
+ end
919
+
920
+ # Requests a refresh of a specific dependency metrics
921
+ # @param project_uuid [String] The UUID of the project to retrieve metrics for
922
+ # @param component_uuid [String] The UUID of the component to retrieve metrics for
923
+ # @param [Hash] opts the optional parameters
924
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
925
+ def refresh_dependency_metrics_with_http_info(project_uuid, component_uuid, opts = {})
926
+ if @api_client.config.debugging
927
+ @api_client.config.logger.debug 'Calling API: MetricsApi.refresh_dependency_metrics ...'
928
+ end
929
+ # verify the required parameter 'project_uuid' is set
930
+ if @api_client.config.client_side_validation && project_uuid.nil?
931
+ fail ArgumentError, "Missing the required parameter 'project_uuid' when calling MetricsApi.refresh_dependency_metrics"
932
+ end
933
+ # verify the required parameter 'component_uuid' is set
934
+ if @api_client.config.client_side_validation && component_uuid.nil?
935
+ fail ArgumentError, "Missing the required parameter 'component_uuid' when calling MetricsApi.refresh_dependency_metrics"
936
+ end
937
+ # resource path
938
+ local_var_path = '/v1/metrics/project/{projectUuid}/component/{componentUuid}/refresh'.sub('{' + 'projectUuid' + '}', CGI.escape(project_uuid.to_s)).sub('{' + 'componentUuid' + '}', CGI.escape(component_uuid.to_s))
939
+
940
+ # query parameters
941
+ query_params = opts[:query_params] || {}
942
+
943
+ # header parameters
944
+ header_params = opts[:header_params] || {}
945
+
946
+ # form parameters
947
+ form_params = opts[:form_params] || {}
948
+
949
+ # http body (model)
950
+ post_body = opts[:body]
951
+
952
+ # return_type
953
+ return_type = opts[:return_type]
954
+
955
+ # auth_names
956
+ auth_names = opts[:auth_names] || ['X-Api-Key']
957
+
958
+ new_options = opts.merge(
959
+ :header_params => header_params,
960
+ :query_params => query_params,
961
+ :form_params => form_params,
962
+ :body => post_body,
963
+ :auth_names => auth_names,
964
+ :return_type => return_type
965
+ )
966
+
967
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
968
+ if @api_client.config.debugging
969
+ @api_client.config.logger.debug "API called: MetricsApi#refresh_dependency_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
970
+ end
971
+ return data, status_code, headers
972
+ end
973
+
974
+ # Requests a refresh of the portfolio metrics
975
+ # @param [Hash] opts the optional parameters
976
+ # @return [PortfolioMetrics]
977
+ def refresh_portfolio_metrics(opts = {})
978
+ data, _status_code, _headers = refresh_portfolio_metrics_with_http_info(opts)
979
+ data
980
+ end
981
+
982
+ # Requests a refresh of the portfolio metrics
983
+ # @param [Hash] opts the optional parameters
984
+ # @return [Array<(PortfolioMetrics, Integer, Hash)>] PortfolioMetrics data, response status code and response headers
985
+ def refresh_portfolio_metrics_with_http_info(opts = {})
986
+ if @api_client.config.debugging
987
+ @api_client.config.logger.debug 'Calling API: MetricsApi.refresh_portfolio_metrics ...'
988
+ end
989
+ # resource path
990
+ local_var_path = '/v1/metrics/portfolio/refresh'
991
+
992
+ # query parameters
993
+ query_params = opts[:query_params] || {}
994
+
995
+ # header parameters
996
+ header_params = opts[:header_params] || {}
997
+ # HTTP header 'Accept' (if needed)
998
+ header_params['Accept'] = @api_client.select_header_accept(['application/json'])
999
+
1000
+ # form parameters
1001
+ form_params = opts[:form_params] || {}
1002
+
1003
+ # http body (model)
1004
+ post_body = opts[:body]
1005
+
1006
+ # return_type
1007
+ return_type = opts[:return_type] || 'PortfolioMetrics'
1008
+
1009
+ # auth_names
1010
+ auth_names = opts[:auth_names] || ['X-Api-Key']
1011
+
1012
+ new_options = opts.merge(
1013
+ :header_params => header_params,
1014
+ :query_params => query_params,
1015
+ :form_params => form_params,
1016
+ :body => post_body,
1017
+ :auth_names => auth_names,
1018
+ :return_type => return_type
1019
+ )
1020
+
1021
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1022
+ if @api_client.config.debugging
1023
+ @api_client.config.logger.debug "API called: MetricsApi#refresh_portfolio_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1024
+ end
1025
+ return data, status_code, headers
1026
+ end
1027
+
1028
+ # Requests a refresh of a specific projects metrics
1029
+ # @param uuid [String] The UUID of the project to refresh metrics on
1030
+ # @param [Hash] opts the optional parameters
1031
+ # @return [nil]
1032
+ def refresh_project_metrics(uuid, opts = {})
1033
+ refresh_project_metrics_with_http_info(uuid, opts)
1034
+ nil
1035
+ end
1036
+
1037
+ # Requests a refresh of a specific projects metrics
1038
+ # @param uuid [String] The UUID of the project to refresh metrics on
1039
+ # @param [Hash] opts the optional parameters
1040
+ # @return [Array<(nil, Integer, Hash)>] nil, response status code and response headers
1041
+ def refresh_project_metrics_with_http_info(uuid, opts = {})
1042
+ if @api_client.config.debugging
1043
+ @api_client.config.logger.debug 'Calling API: MetricsApi.refresh_project_metrics ...'
1044
+ end
1045
+ # verify the required parameter 'uuid' is set
1046
+ if @api_client.config.client_side_validation && uuid.nil?
1047
+ fail ArgumentError, "Missing the required parameter 'uuid' when calling MetricsApi.refresh_project_metrics"
1048
+ end
1049
+ # resource path
1050
+ local_var_path = '/v1/metrics/project/{uuid}/refresh'.sub('{' + 'uuid' + '}', CGI.escape(uuid.to_s))
1051
+
1052
+ # query parameters
1053
+ query_params = opts[:query_params] || {}
1054
+
1055
+ # header parameters
1056
+ header_params = opts[:header_params] || {}
1057
+
1058
+ # form parameters
1059
+ form_params = opts[:form_params] || {}
1060
+
1061
+ # http body (model)
1062
+ post_body = opts[:body]
1063
+
1064
+ # return_type
1065
+ return_type = opts[:return_type]
1066
+
1067
+ # auth_names
1068
+ auth_names = opts[:auth_names] || ['X-Api-Key']
1069
+
1070
+ new_options = opts.merge(
1071
+ :header_params => header_params,
1072
+ :query_params => query_params,
1073
+ :form_params => form_params,
1074
+ :body => post_body,
1075
+ :auth_names => auth_names,
1076
+ :return_type => return_type
1077
+ )
1078
+
1079
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
1080
+ if @api_client.config.debugging
1081
+ @api_client.config.logger.debug "API called: MetricsApi#refresh_project_metrics\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
1082
+ end
1083
+ return data, status_code, headers
1084
+ end
1085
+ end
1086
+ end