SematextCloud 0.3.0 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (351) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +70 -0
  3. data/README.md +1 -1
  4. data/SematextCloud.gemspec +4 -5
  5. data/docs/AlertNotification.md +2 -1
  6. data/docs/AlertNotificationRequest.md +2 -1
  7. data/docs/AlertNotificationsApi.md +19 -17
  8. data/docs/AlertRule.md +3 -1
  9. data/docs/AlertRuleResponse.md +2 -1
  10. data/docs/AlertRuleResponseEntry.md +2 -1
  11. data/docs/AlertRuleScheduleTimeRangeDto.md +2 -1
  12. data/docs/AlertRuleScheduleWeekdayDto.md +2 -1
  13. data/docs/AlertRulesResponse.md +2 -1
  14. data/docs/AlertRulesResponseEntry.md +2 -1
  15. data/docs/AlertsApi.md +42 -40
  16. data/docs/App.md +2 -1
  17. data/docs/AppDescription.md +2 -1
  18. data/docs/AppMetadata.md +2 -1
  19. data/docs/AppResponse.md +2 -1
  20. data/docs/AppResponseEntry.md +2 -1
  21. data/docs/AppTypesResponse.md +2 -1
  22. data/docs/AppTypesResponseEntry.md +2 -1
  23. data/docs/AppsApi.md +93 -88
  24. data/docs/AppsResponse.md +2 -1
  25. data/docs/AppsResponseEntry.md +2 -1
  26. data/docs/AwsSettingsControllerApi.md +17 -15
  27. data/docs/BasicAuthMethodDto.md +2 -1
  28. data/docs/BasicOrganizationDto.md +2 -1
  29. data/docs/BillingApi.md +32 -30
  30. data/docs/BillingInfo.md +2 -1
  31. data/docs/ChargesDetailsResponseDto.md +2 -1
  32. data/docs/CloudWatchSettings.md +2 -1
  33. data/docs/CloudWatchSettingsResponse.md +2 -1
  34. data/docs/CloudWatchSettingsResponseEntry.md +2 -1
  35. data/docs/CreateAppInfo.md +2 -1
  36. data/docs/CreateTokenDto.md +2 -1
  37. data/docs/DailyDto.md +10 -7
  38. data/docs/DayUsageData.md +23 -23
  39. data/docs/Dimension.md +2 -1
  40. data/docs/Error.md +2 -1
  41. data/docs/EventDto.md +2 -1
  42. data/docs/FilterValue.md +2 -1
  43. data/docs/GenericApiResponse.md +2 -1
  44. data/docs/GenericMapBasedApiResponse.md +2 -1
  45. data/docs/Invitation.md +2 -1
  46. data/docs/Invoice.md +2 -1
  47. data/docs/InvoiceResponse.md +2 -1
  48. data/docs/InvoiceResponseEntry.md +2 -1
  49. data/docs/LimitChangeEventDTO.md +2 -1
  50. data/docs/LogsAppApi.md +10 -8
  51. data/docs/LogsUsageApiControllerApi.md +9 -7
  52. data/docs/MailReportResponse.md +2 -1
  53. data/docs/MailReportResponseResponseEntry.md +2 -1
  54. data/docs/MinPeriodFeePeriod.md +17 -14
  55. data/docs/MonitoringAppApi.md +10 -8
  56. data/docs/NotificationIntegration.md +2 -1
  57. data/docs/NotificationsResponse.md +2 -1
  58. data/docs/NotificationsResponseEntry.md +2 -1
  59. data/docs/Plan.md +2 -1
  60. data/docs/PlansResponse.md +2 -1
  61. data/docs/PlansResponseEntry.md +2 -1
  62. data/docs/ReportInfo.md +13 -11
  63. data/docs/ResetPasswordApi.md +10 -8
  64. data/docs/ServiceIntegration.md +16 -15
  65. data/docs/Subscription.md +20 -18
  66. data/docs/SubscriptionDashboardDto.md +2 -1
  67. data/docs/SubscriptionDto.md +17 -15
  68. data/docs/SubscriptionResponse.md +2 -1
  69. data/docs/SubscriptionResponseEntry.md +2 -1
  70. data/docs/SubscriptionsApi.md +121 -118
  71. data/docs/SubscriptionsResponse.md +2 -1
  72. data/docs/SubscriptionsResponseEntry.md +2 -1
  73. data/docs/TagApiControllerApi.md +102 -33
  74. data/docs/TagNamesResponse.md +2 -1
  75. data/docs/TagsGrouped.md +8 -0
  76. data/docs/TagsGroupedResponse.md +7 -0
  77. data/docs/TokenDto.md +2 -1
  78. data/docs/TokenResponse.md +2 -1
  79. data/docs/TokenResponseEntry.md +2 -1
  80. data/docs/TokensApiControllerApi.md +51 -49
  81. data/docs/TokensResponse.md +2 -1
  82. data/docs/TokensResponseEntry.md +2 -1
  83. data/docs/UpdateAppInfo.md +2 -1
  84. data/docs/UpdatePlanResponse.md +2 -1
  85. data/docs/UpdatePlanResponseDto.md +2 -1
  86. data/docs/UpdatePlanResponseEntry.md +2 -1
  87. data/docs/UpdateSubscriptionDto.md +2 -1
  88. data/docs/UpdateTokenDto.md +2 -1
  89. data/docs/UsageDto.md +6 -3
  90. data/docs/UsageMultiResponse.md +2 -1
  91. data/docs/UsageMultiResponseEntry.md +2 -1
  92. data/docs/UsageResponse.md +2 -1
  93. data/docs/UsageResponseEntry.md +2 -1
  94. data/docs/UserInfo.md +2 -1
  95. data/docs/UserPermissions.md +7 -6
  96. data/docs/UserRole.md +7 -6
  97. data/lib/SematextCloud/api/alert_notifications_api.rb +47 -42
  98. data/lib/SematextCloud/api/alerts_api.rb +69 -60
  99. data/lib/SematextCloud/api/apps_api.rb +138 -119
  100. data/lib/SematextCloud/api/aws_settings_controller_api.rb +23 -22
  101. data/lib/SematextCloud/api/billing_api.rb +62 -57
  102. data/lib/SematextCloud/api/logs_app_api.rb +21 -20
  103. data/lib/{stcloud → SematextCloud}/api/logs_usage_api_controller_api.rb +2 -2
  104. data/lib/SematextCloud/api/monitoring_app_api.rb +21 -20
  105. data/lib/SematextCloud/api/reset_password_api.rb +21 -20
  106. data/lib/SematextCloud/api/subscriptions_api.rb +194 -163
  107. data/lib/SematextCloud/api/tag_api_controller_api.rb +132 -50
  108. data/lib/SematextCloud/api/tokens_api_controller_api.rb +97 -86
  109. data/lib/SematextCloud/api_client.rb +41 -42
  110. data/lib/SematextCloud/api_error.rb +21 -2
  111. data/lib/SematextCloud/configuration.rb +5 -9
  112. data/lib/{stcloud → SematextCloud}/models/alert_notification.rb +5 -5
  113. data/lib/SematextCloud/models/alert_notification_request.rb +49 -26
  114. data/lib/SematextCloud/models/alert_rule.rb +197 -153
  115. data/lib/{stcloud/models/app_response.rb → SematextCloud/models/alert_rule_response.rb} +6 -6
  116. data/lib/{stcloud → SematextCloud}/models/alert_rule_response_entry.rb +5 -5
  117. data/lib/SematextCloud/models/alert_rule_schedule_time_range_dto.rb +44 -21
  118. data/lib/SematextCloud/models/alert_rule_schedule_weekday_dto.rb +49 -26
  119. data/lib/SematextCloud/models/alert_rules_response.rb +235 -0
  120. data/lib/{stcloud → SematextCloud}/models/alert_rules_response_entry.rb +5 -5
  121. data/lib/SematextCloud/models/app.rb +163 -93
  122. data/lib/SematextCloud/models/app_description.rb +41 -18
  123. data/lib/SematextCloud/models/app_metadata.rb +60 -37
  124. data/lib/{stcloud/models/alert_rule_response.rb → SematextCloud/models/app_response.rb} +6 -6
  125. data/lib/{stcloud → SematextCloud}/models/app_response_entry.rb +5 -5
  126. data/lib/{stcloud → SematextCloud}/models/app_types_response.rb +5 -5
  127. data/lib/{stcloud → SematextCloud}/models/app_types_response_entry.rb +5 -5
  128. data/lib/{stcloud/models/alert_rules_response.rb → SematextCloud/models/apps_response.rb} +6 -6
  129. data/lib/{stcloud → SematextCloud}/models/apps_response_entry.rb +5 -5
  130. data/lib/SematextCloud/models/basic_auth_method_dto.rb +47 -24
  131. data/lib/SematextCloud/models/basic_organization_dto.rb +51 -28
  132. data/lib/SematextCloud/models/billing_info.rb +48 -25
  133. data/lib/{stcloud → SematextCloud}/models/charges_details_response_dto.rb +5 -5
  134. data/lib/SematextCloud/models/cloud_watch_settings.rb +56 -33
  135. data/lib/SematextCloud/models/cloud_watch_settings_response.rb +235 -0
  136. data/lib/{stcloud → SematextCloud}/models/cloud_watch_settings_response_entry.rb +5 -5
  137. data/lib/SematextCloud/models/create_app_info.rb +53 -31
  138. data/lib/SematextCloud/models/create_token_dto.rb +46 -23
  139. data/lib/{stcloud → SematextCloud}/models/daily_dto.rb +36 -18
  140. data/lib/{stcloud → SematextCloud}/models/day_usage_data.rb +5 -5
  141. data/lib/{stcloud → SematextCloud}/models/dimension.rb +5 -5
  142. data/lib/SematextCloud/models/error.rb +43 -20
  143. data/lib/{stcloud → SematextCloud}/models/event_dto.rb +7 -7
  144. data/lib/SematextCloud/models/filter_value.rb +53 -30
  145. data/lib/SematextCloud/models/generic_api_response.rb +46 -24
  146. data/lib/{stcloud → SematextCloud}/models/generic_map_based_api_response.rb +5 -5
  147. data/lib/SematextCloud/models/invitation.rb +74 -52
  148. data/lib/{stcloud → SematextCloud}/models/invoice.rb +5 -5
  149. data/lib/{stcloud/models/notifications_response.rb → SematextCloud/models/invoice_response.rb} +6 -6
  150. data/lib/{stcloud → SematextCloud}/models/invoice_response_entry.rb +5 -5
  151. data/lib/{stcloud → SematextCloud}/models/limit_change_event_dto.rb +5 -5
  152. data/lib/{stcloud → SematextCloud}/models/mail_report_response.rb +5 -5
  153. data/lib/{stcloud/models/subscription_response_entry.rb → SematextCloud/models/mail_report_response_response_entry.rb} +6 -6
  154. data/lib/{stcloud → SematextCloud}/models/min_period_fee_period.rb +24 -6
  155. data/lib/SematextCloud/models/notification_integration.rb +73 -50
  156. data/lib/SematextCloud/models/notifications_response.rb +235 -0
  157. data/lib/{stcloud → SematextCloud}/models/notifications_response_entry.rb +5 -5
  158. data/lib/SematextCloud/models/plan.rb +80 -57
  159. data/lib/{stcloud → SematextCloud}/models/plans_response.rb +5 -5
  160. data/lib/{stcloud → SematextCloud}/models/plans_response_entry.rb +5 -5
  161. data/lib/SematextCloud/models/report_info.rb +69 -37
  162. data/lib/SematextCloud/models/service_integration.rb +71 -48
  163. data/lib/{stcloud → SematextCloud}/models/subscription.rb +15 -6
  164. data/lib/SematextCloud/models/subscription_dashboard_dto.rb +72 -49
  165. data/lib/SematextCloud/models/subscription_dto.rb +85 -53
  166. data/lib/{stcloud/models/cloud_watch_settings_response.rb → SematextCloud/models/subscription_response.rb} +6 -6
  167. data/lib/{stcloud/models/mail_report_response_response_entry.rb → SematextCloud/models/subscription_response_entry.rb} +6 -6
  168. data/lib/{stcloud → SematextCloud}/models/subscriptions_response.rb +5 -5
  169. data/lib/{stcloud → SematextCloud}/models/subscriptions_response_entry.rb +5 -5
  170. data/lib/{stcloud → SematextCloud}/models/tag_names_response.rb +5 -5
  171. data/lib/SematextCloud/models/tags_grouped.rb +227 -0
  172. data/lib/SematextCloud/models/tags_grouped_response.rb +213 -0
  173. data/lib/{stcloud → SematextCloud}/models/token_dto.rb +5 -5
  174. data/lib/{stcloud → SematextCloud}/models/token_response.rb +5 -5
  175. data/lib/{stcloud → SematextCloud}/models/token_response_entry.rb +5 -5
  176. data/lib/{stcloud/models/subscription_response.rb → SematextCloud/models/tokens_response.rb} +6 -6
  177. data/lib/{stcloud → SematextCloud}/models/tokens_response_entry.rb +5 -5
  178. data/lib/SematextCloud/models/update_app_info.rb +64 -41
  179. data/lib/{stcloud → SematextCloud}/models/update_plan_response.rb +5 -5
  180. data/lib/{stcloud → SematextCloud}/models/update_plan_response_dto.rb +5 -5
  181. data/lib/{stcloud → SematextCloud}/models/update_plan_response_entry.rb +5 -5
  182. data/lib/SematextCloud/models/update_subscription_dto.rb +42 -19
  183. data/lib/SematextCloud/models/update_token_dto.rb +44 -21
  184. data/lib/{stcloud → SematextCloud}/models/usage_dto.rb +39 -21
  185. data/lib/{stcloud → SematextCloud}/models/usage_multi_response.rb +5 -5
  186. data/lib/{stcloud → SematextCloud}/models/usage_multi_response_entry.rb +5 -5
  187. data/lib/{stcloud → SematextCloud}/models/usage_response.rb +5 -5
  188. data/lib/{stcloud → SematextCloud}/models/usage_response_entry.rb +5 -5
  189. data/lib/SematextCloud/models/user_info.rb +42 -19
  190. data/lib/SematextCloud/models/user_permissions.rb +48 -25
  191. data/lib/SematextCloud/models/user_role.rb +53 -30
  192. data/lib/SematextCloud/version.rb +2 -3
  193. data/lib/SematextCloud.rb +59 -7
  194. data/spec/api/alert_notifications_api_spec.rb +4 -4
  195. data/spec/api/alerts_api_spec.rb +4 -4
  196. data/spec/api/apps_api_spec.rb +14 -14
  197. data/spec/api/aws_settings_controller_api_spec.rb +6 -6
  198. data/spec/api/billing_api_spec.rb +6 -6
  199. data/spec/api/logs_app_api_spec.rb +4 -4
  200. data/spec/api/logs_usage_api_controller_api_spec.rb +4 -4
  201. data/spec/api/monitoring_app_api_spec.rb +4 -4
  202. data/spec/api/reset_password_api_spec.rb +4 -4
  203. data/spec/api/subscriptions_api_spec.rb +16 -16
  204. data/spec/api/tag_api_controller_api_spec.rb +24 -6
  205. data/spec/api/tokens_api_controller_api_spec.rb +8 -8
  206. data/spec/api_client_spec.rb +30 -30
  207. data/spec/configuration_spec.rb +4 -4
  208. data/spec/models/alert_notification_request_spec.rb +4 -4
  209. data/spec/models/alert_notification_spec.rb +4 -4
  210. data/spec/models/alert_rule_response_entry_spec.rb +4 -4
  211. data/spec/models/alert_rule_response_spec.rb +4 -4
  212. data/spec/models/alert_rule_schedule_time_range_dto_spec.rb +4 -4
  213. data/spec/models/alert_rule_schedule_weekday_dto_spec.rb +4 -4
  214. data/spec/models/alert_rule_spec.rb +14 -4
  215. data/spec/models/alert_rules_response_entry_spec.rb +4 -4
  216. data/spec/models/alert_rules_response_spec.rb +4 -4
  217. data/spec/models/app_description_spec.rb +4 -4
  218. data/spec/models/app_metadata_spec.rb +4 -4
  219. data/spec/models/app_response_entry_spec.rb +4 -4
  220. data/spec/models/app_response_spec.rb +4 -4
  221. data/spec/models/app_spec.rb +4 -4
  222. data/spec/models/app_types_response_entry_spec.rb +4 -4
  223. data/spec/models/app_types_response_spec.rb +4 -4
  224. data/spec/models/apps_response_entry_spec.rb +4 -4
  225. data/spec/models/apps_response_spec.rb +4 -4
  226. data/spec/models/basic_auth_method_dto_spec.rb +4 -4
  227. data/spec/models/basic_organization_dto_spec.rb +4 -4
  228. data/spec/models/billing_info_spec.rb +4 -4
  229. data/spec/models/charges_details_response_dto_spec.rb +4 -4
  230. data/spec/models/cloud_watch_settings_response_entry_spec.rb +4 -4
  231. data/spec/models/cloud_watch_settings_response_spec.rb +4 -4
  232. data/spec/models/cloud_watch_settings_spec.rb +4 -4
  233. data/spec/models/create_app_info_spec.rb +4 -4
  234. data/spec/models/create_token_dto_spec.rb +4 -4
  235. data/spec/models/daily_dto_spec.rb +18 -6
  236. data/spec/models/day_usage_data_spec.rb +4 -4
  237. data/spec/models/dimension_spec.rb +4 -4
  238. data/spec/models/error_spec.rb +4 -4
  239. data/spec/models/event_dto_spec.rb +5 -5
  240. data/spec/models/filter_value_spec.rb +4 -4
  241. data/spec/models/generic_api_response_spec.rb +4 -4
  242. data/spec/models/generic_map_based_api_response_spec.rb +4 -4
  243. data/spec/models/invitation_spec.rb +4 -4
  244. data/spec/models/invoice_response_entry_spec.rb +4 -4
  245. data/spec/models/invoice_response_spec.rb +4 -4
  246. data/spec/models/invoice_spec.rb +4 -4
  247. data/spec/models/limit_change_event_dto_spec.rb +4 -4
  248. data/spec/models/mail_report_response_response_entry_spec.rb +4 -4
  249. data/spec/models/mail_report_response_spec.rb +4 -4
  250. data/spec/models/min_period_fee_period_spec.rb +16 -4
  251. data/spec/models/notification_integration_spec.rb +4 -4
  252. data/spec/models/notifications_response_entry_spec.rb +4 -4
  253. data/spec/models/notifications_response_spec.rb +4 -4
  254. data/spec/models/plan_spec.rb +5 -5
  255. data/spec/models/plans_response_entry_spec.rb +4 -4
  256. data/spec/models/plans_response_spec.rb +4 -4
  257. data/spec/models/report_info_spec.rb +10 -4
  258. data/spec/models/service_integration_spec.rb +4 -4
  259. data/spec/models/subscription_dashboard_dto_spec.rb +4 -4
  260. data/spec/models/subscription_dto_spec.rb +10 -4
  261. data/spec/models/subscription_response_entry_spec.rb +4 -4
  262. data/spec/models/subscription_response_spec.rb +4 -4
  263. data/spec/models/subscription_spec.rb +10 -4
  264. data/spec/models/subscriptions_response_entry_spec.rb +4 -4
  265. data/spec/models/subscriptions_response_spec.rb +4 -4
  266. data/spec/models/tag_names_response_spec.rb +4 -4
  267. data/spec/models/tags_grouped_response_spec.rb +40 -0
  268. data/spec/models/{data_series_filter_spec.rb → tags_grouped_spec.rb} +9 -20
  269. data/spec/models/token_dto_spec.rb +4 -4
  270. data/spec/models/token_response_entry_spec.rb +4 -4
  271. data/spec/models/token_response_spec.rb +4 -4
  272. data/spec/models/tokens_response_entry_spec.rb +4 -4
  273. data/spec/models/tokens_response_spec.rb +4 -4
  274. data/spec/models/update_app_info_spec.rb +4 -4
  275. data/spec/models/update_plan_response_dto_spec.rb +4 -4
  276. data/spec/models/update_plan_response_entry_spec.rb +4 -4
  277. data/spec/models/update_plan_response_spec.rb +4 -4
  278. data/spec/models/update_subscription_dto_spec.rb +4 -4
  279. data/spec/models/update_token_dto_spec.rb +4 -4
  280. data/spec/models/usage_dto_spec.rb +22 -10
  281. data/spec/models/usage_multi_response_entry_spec.rb +4 -4
  282. data/spec/models/usage_multi_response_spec.rb +4 -4
  283. data/spec/models/usage_response_entry_spec.rb +4 -4
  284. data/spec/models/usage_response_spec.rb +4 -4
  285. data/spec/models/user_info_spec.rb +4 -4
  286. data/spec/models/user_permissions_spec.rb +4 -4
  287. data/spec/models/user_role_spec.rb +4 -4
  288. data/spec/spec_helper.rb +2 -2
  289. metadata +135 -192
  290. data/docs/DataSeriesFilter.md +0 -8
  291. data/docs/DataSeriesRequest.md +0 -12
  292. data/docs/MetricsApi.md +0 -227
  293. data/docs/SavedQueriesApi.md +0 -220
  294. data/docs/SavedQuery.md +0 -18
  295. data/lib/SematextCloud/api/metrics_api.rb +0 -247
  296. data/lib/SematextCloud/api/saved_queries_api.rb +0 -237
  297. data/lib/SematextCloud/models/data_series_filter.rb +0 -237
  298. data/lib/SematextCloud/models/data_series_request.rb +0 -283
  299. data/lib/SematextCloud/models/saved_query.rb +0 -291
  300. data/lib/stcloud/api/alert_notifications_api.rb +0 -142
  301. data/lib/stcloud/api/alerts_api.rb +0 -292
  302. data/lib/stcloud/api/apps_api.rb +0 -452
  303. data/lib/stcloud/api/aws_settings_controller_api.rb +0 -84
  304. data/lib/stcloud/api/billing_api.rb +0 -202
  305. data/lib/stcloud/api/logs_app_api.rb +0 -76
  306. data/lib/stcloud/api/monitoring_app_api.rb +0 -76
  307. data/lib/stcloud/api/reset_password_api.rb +0 -76
  308. data/lib/stcloud/api/subscriptions_api.rb +0 -610
  309. data/lib/stcloud/api/tag_api_controller_api.rb +0 -250
  310. data/lib/stcloud/api/tokens_api_controller_api.rb +0 -324
  311. data/lib/stcloud/api_client.rb +0 -388
  312. data/lib/stcloud/api_error.rb +0 -57
  313. data/lib/stcloud/configuration.rb +0 -205
  314. data/lib/stcloud/models/alert_notification_request.rb +0 -235
  315. data/lib/stcloud/models/alert_rule.rb +0 -675
  316. data/lib/stcloud/models/alert_rule_schedule_time_range_dto.rb +0 -215
  317. data/lib/stcloud/models/alert_rule_schedule_weekday_dto.rb +0 -244
  318. data/lib/stcloud/models/app.rb +0 -489
  319. data/lib/stcloud/models/app_description.rb +0 -206
  320. data/lib/stcloud/models/app_metadata.rb +0 -291
  321. data/lib/stcloud/models/apps_response.rb +0 -235
  322. data/lib/stcloud/models/basic_auth_method_dto.rb +0 -249
  323. data/lib/stcloud/models/basic_organization_dto.rb +0 -269
  324. data/lib/stcloud/models/billing_info.rb +0 -224
  325. data/lib/stcloud/models/cloud_watch_settings.rb +0 -279
  326. data/lib/stcloud/models/create_app_info.rb +0 -242
  327. data/lib/stcloud/models/create_token_dto.rb +0 -224
  328. data/lib/stcloud/models/error.rb +0 -215
  329. data/lib/stcloud/models/filter_value.rb +0 -253
  330. data/lib/stcloud/models/generic_api_response.rb +0 -236
  331. data/lib/stcloud/models/invitation.rb +0 -348
  332. data/lib/stcloud/models/invoice_response.rb +0 -235
  333. data/lib/stcloud/models/notification_integration.rb +0 -347
  334. data/lib/stcloud/models/plan.rb +0 -360
  335. data/lib/stcloud/models/report_info.rb +0 -270
  336. data/lib/stcloud/models/service_integration.rb +0 -305
  337. data/lib/stcloud/models/subscription_dashboard_dto.rb +0 -342
  338. data/lib/stcloud/models/subscription_dto.rb +0 -351
  339. data/lib/stcloud/models/tokens_response.rb +0 -235
  340. data/lib/stcloud/models/update_app_info.rb +0 -312
  341. data/lib/stcloud/models/update_subscription_dto.rb +0 -206
  342. data/lib/stcloud/models/update_token_dto.rb +0 -215
  343. data/lib/stcloud/models/user_info.rb +0 -206
  344. data/lib/stcloud/models/user_permissions.rb +0 -224
  345. data/lib/stcloud/models/user_role.rb +0 -270
  346. data/lib/stcloud/version.rb +0 -14
  347. data/lib/stcloud.rb +0 -128
  348. data/spec/api/metrics_api_spec.rb +0 -83
  349. data/spec/api/saved_queries_api_spec.rb +0 -80
  350. data/spec/models/data_series_request_spec.rb +0 -81
  351. data/spec/models/saved_query_spec.rb +0 -113
@@ -1,388 +0,0 @@
1
- =begin
2
- #Sematext Cloud API
3
-
4
- #API Explorer provides access and documentation for Sematext REST API. The REST API requires the API Key to be sent as part of `Authorization` header. E.g.: `Authorization : apiKey e5f18450-205a-48eb-8589-7d49edaea813`.
5
-
6
- OpenAPI spec version: v3
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 3.0.25
10
- =end
11
-
12
- require 'date'
13
- require 'json'
14
- require 'logger'
15
- require 'tempfile'
16
- require 'typhoeus'
17
- require 'uri'
18
-
19
- module stcloud
20
- class ApiClient
21
- # The Configuration object holding settings to be used in the API client.
22
- attr_accessor :config
23
-
24
- # Defines the headers to be used in HTTP requests of all API calls by default.
25
- #
26
- # @return [Hash]
27
- attr_accessor :default_headers
28
-
29
- # Initializes the ApiClient
30
- # @option config [Configuration] Configuration for initializing the object, default to Configuration.default
31
- def initialize(config = Configuration.default)
32
- @config = config
33
- @user_agent = "Swagger-Codegen/#{VERSION}/ruby"
34
- @default_headers = {
35
- 'Content-Type' => 'application/json',
36
- 'User-Agent' => @user_agent
37
- }
38
- end
39
-
40
- def self.default
41
- @@default ||= ApiClient.new
42
- end
43
-
44
- # Call an API with given options.
45
- #
46
- # @return [Array<(Object, Integer, Hash)>] an array of 3 elements:
47
- # the data deserialized from response body (could be nil), response status code and response headers.
48
- def call_api(http_method, path, opts = {})
49
- request = build_request(http_method, path, opts)
50
- response = request.run
51
-
52
- if @config.debugging
53
- @config.logger.debug "HTTP response body ~BEGIN~\n#{response.body}\n~END~\n"
54
- end
55
-
56
- unless response.success?
57
- if response.timed_out?
58
- fail ApiError.new('Connection timed out')
59
- elsif response.code == 0
60
- # Errors from libcurl will be made visible here
61
- fail ApiError.new(:code => 0,
62
- :message => response.return_message)
63
- else
64
- fail ApiError.new(:code => response.code,
65
- :response_headers => response.headers,
66
- :response_body => response.body),
67
- response.status_message
68
- end
69
- end
70
-
71
- if opts[:return_type]
72
- data = deserialize(response, opts[:return_type])
73
- else
74
- data = nil
75
- end
76
- return data, response.code, response.headers
77
- end
78
-
79
- # Builds the HTTP request
80
- #
81
- # @param [String] http_method HTTP method/verb (e.g. POST)
82
- # @param [String] path URL path (e.g. /account/new)
83
- # @option opts [Hash] :header_params Header parameters
84
- # @option opts [Hash] :query_params Query parameters
85
- # @option opts [Hash] :form_params Query parameters
86
- # @option opts [Object] :body HTTP body (JSON/XML)
87
- # @return [Typhoeus::Request] A Typhoeus Request
88
- def build_request(http_method, path, opts = {})
89
- url = build_request_url(path)
90
- http_method = http_method.to_sym.downcase
91
-
92
- header_params = @default_headers.merge(opts[:header_params] || {})
93
- query_params = opts[:query_params] || {}
94
- form_params = opts[:form_params] || {}
95
-
96
- update_params_for_auth! header_params, query_params, opts[:auth_names]
97
-
98
- # set ssl_verifyhosts option based on @config.verify_ssl_host (true/false)
99
- _verify_ssl_host = @config.verify_ssl_host ? 2 : 0
100
-
101
- req_opts = {
102
- :method => http_method,
103
- :headers => header_params,
104
- :params => query_params,
105
- :params_encoding => @config.params_encoding,
106
- :timeout => @config.timeout,
107
- :ssl_verifypeer => @config.verify_ssl,
108
- :ssl_verifyhost => _verify_ssl_host,
109
- :sslcert => @config.cert_file,
110
- :sslkey => @config.key_file,
111
- :verbose => @config.debugging
112
- }
113
-
114
- # set custom cert, if provided
115
- req_opts[:cainfo] = @config.ssl_ca_cert if @config.ssl_ca_cert
116
-
117
- if [:post, :patch, :put, :delete].include?(http_method)
118
- req_body = build_request_body(header_params, form_params, opts[:body])
119
- req_opts.update :body => req_body
120
- if @config.debugging
121
- @config.logger.debug "HTTP request body param ~BEGIN~\n#{req_body}\n~END~\n"
122
- end
123
- end
124
-
125
- request = Typhoeus::Request.new(url, req_opts)
126
- download_file(request) if opts[:return_type] == 'File'
127
- request
128
- end
129
-
130
- # Builds the HTTP request body
131
- #
132
- # @param [Hash] header_params Header parameters
133
- # @param [Hash] form_params Query parameters
134
- # @param [Object] body HTTP body (JSON/XML)
135
- # @return [String] HTTP body data in the form of string
136
- def build_request_body(header_params, form_params, body)
137
- # http form
138
- if header_params['Content-Type'] == 'application/x-www-form-urlencoded' ||
139
- header_params['Content-Type'] == 'multipart/form-data'
140
- data = {}
141
- form_params.each do |key, value|
142
- case value
143
- when ::File, ::Array, nil
144
- # let typhoeus handle File, Array and nil parameters
145
- data[key] = value
146
- else
147
- data[key] = value.to_s
148
- end
149
- end
150
- elsif body
151
- data = body.is_a?(String) ? body : body.to_json
152
- else
153
- data = nil
154
- end
155
- data
156
- end
157
-
158
- # Check if the given MIME is a JSON MIME.
159
- # JSON MIME examples:
160
- # application/json
161
- # application/json; charset=UTF8
162
- # APPLICATION/JSON
163
- # */*
164
- # @param [String] mime MIME
165
- # @return [Boolean] True if the MIME is application/json
166
- def json_mime?(mime)
167
- (mime == '*/*') || !(mime =~ /Application\/.*json(?!p)(;.*)?/i).nil?
168
- end
169
-
170
- # Deserialize the response to the given return type.
171
- #
172
- # @param [Response] response HTTP response
173
- # @param [String] return_type some examples: "User", "Array<User>", "Hash<String, Integer>"
174
- def deserialize(response, return_type)
175
- body = response.body
176
-
177
- # handle file downloading - return the File instance processed in request callbacks
178
- # note that response body is empty when the file is written in chunks in request on_body callback
179
- return @tempfile if return_type == 'File'
180
-
181
- return nil if body.nil? || body.empty?
182
-
183
- # return response body directly for String return type
184
- return body if return_type == 'String'
185
-
186
- # ensuring a default content type
187
- content_type = response.headers['Content-Type'] || 'application/json'
188
-
189
- fail "Content-Type is not supported: #{content_type}" unless json_mime?(content_type)
190
-
191
- begin
192
- data = JSON.parse("[#{body}]", :symbolize_names => true)[0]
193
- rescue JSON::ParserError => e
194
- if %w(String Date DateTime).include?(return_type)
195
- data = body
196
- else
197
- raise e
198
- end
199
- end
200
-
201
- convert_to_type data, return_type
202
- end
203
-
204
- # Convert data to the given return type.
205
- # @param [Object] data Data to be converted
206
- # @param [String] return_type Return type
207
- # @return [Mixed] Data in a particular type
208
- def convert_to_type(data, return_type)
209
- return nil if data.nil?
210
- case return_type
211
- when 'String'
212
- data.to_s
213
- when 'Integer'
214
- data.to_i
215
- when 'Float'
216
- data.to_f
217
- when 'Boolean'
218
- data == true
219
- when 'DateTime'
220
- # parse date time (expecting ISO 8601 format)
221
- DateTime.parse data
222
- when 'Date'
223
- # parse date time (expecting ISO 8601 format)
224
- Date.parse data
225
- when 'Object'
226
- # generic object (usually a Hash), return directly
227
- data
228
- when /\AArray<(.+)>\z/
229
- # e.g. Array<Pet>
230
- sub_type = $1
231
- data.map { |item| convert_to_type(item, sub_type) }
232
- when /\AHash\<String, (.+)\>\z/
233
- # e.g. Hash<String, Integer>
234
- sub_type = $1
235
- {}.tap do |hash|
236
- data.each { |k, v| hash[k] = convert_to_type(v, sub_type) }
237
- end
238
- else
239
- # models, e.g. Pet
240
- stcloud.const_get(return_type).build_from_hash(data)
241
- end
242
- end
243
-
244
- # Save response body into a file in (the defined) temporary folder, using the filename
245
- # from the "Content-Disposition" header if provided, otherwise a random filename.
246
- # The response body is written to the file in chunks in order to handle files which
247
- # size is larger than maximum Ruby String or even larger than the maximum memory a Ruby
248
- # process can use.
249
- #
250
- # @see Configuration#temp_folder_path
251
- def download_file(request)
252
- tempfile = nil
253
- encoding = nil
254
- request.on_headers do |response|
255
- content_disposition = response.headers['Content-Disposition']
256
- if content_disposition && content_disposition =~ /filename=/i
257
- filename = content_disposition[/filename=['"]?([^'"\s]+)['"]?/, 1]
258
- prefix = sanitize_filename(filename)
259
- else
260
- prefix = 'download-'
261
- end
262
- prefix = prefix + '-' unless prefix.end_with?('-')
263
- encoding = response.body.encoding
264
- tempfile = Tempfile.open(prefix, @config.temp_folder_path, encoding: encoding)
265
- @tempfile = tempfile
266
- end
267
- request.on_body do |chunk|
268
- chunk.force_encoding(encoding)
269
- tempfile.write(chunk)
270
- end
271
- request.on_complete do |response|
272
- if tempfile
273
- tempfile.close
274
- @config.logger.info "Temp file written to #{tempfile.path}, please copy the file to a proper folder "\
275
- "with e.g. `FileUtils.cp(tempfile.path, '/new/file/path')` otherwise the temp file "\
276
- "will be deleted automatically with GC. It's also recommended to delete the temp file "\
277
- "explicitly with `tempfile.delete`"
278
- end
279
- end
280
- end
281
-
282
- # Sanitize filename by removing path.
283
- # e.g. ../../sun.gif becomes sun.gif
284
- #
285
- # @param [String] filename the filename to be sanitized
286
- # @return [String] the sanitized filename
287
- def sanitize_filename(filename)
288
- filename.gsub(/.*[\/\\]/, '')
289
- end
290
-
291
- def build_request_url(path)
292
- # Add leading and trailing slashes to path
293
- path = "/#{path}".gsub(/\/+/, '/')
294
- @config.base_url + path
295
- end
296
-
297
- # Update hearder and query params based on authentication settings.
298
- #
299
- # @param [Hash] header_params Header parameters
300
- # @param [Hash] query_params Query parameters
301
- # @param [String] auth_names Authentication scheme name
302
- def update_params_for_auth!(header_params, query_params, auth_names)
303
- Array(auth_names).each do |auth_name|
304
- auth_setting = @config.auth_settings[auth_name]
305
- next unless auth_setting
306
- case auth_setting[:in]
307
- when 'header' then header_params[auth_setting[:key]] = auth_setting[:value]
308
- when 'query' then query_params[auth_setting[:key]] = auth_setting[:value]
309
- else fail ArgumentError, 'Authentication token must be in `query` of `header`'
310
- end
311
- end
312
- end
313
-
314
- # Sets user agent in HTTP header
315
- #
316
- # @param [String] user_agent User agent (e.g. swagger-codegen/ruby/1.0.0)
317
- def user_agent=(user_agent)
318
- @user_agent = user_agent
319
- @default_headers['User-Agent'] = @user_agent
320
- end
321
-
322
- # Return Accept header based on an array of accepts provided.
323
- # @param [Array] accepts array for Accept
324
- # @return [String] the Accept header (e.g. application/json)
325
- def select_header_accept(accepts)
326
- return nil if accepts.nil? || accepts.empty?
327
- # use JSON when present, otherwise use all of the provided
328
- json_accept = accepts.find { |s| json_mime?(s) }
329
- json_accept || accepts.join(',')
330
- end
331
-
332
- # Return Content-Type header based on an array of content types provided.
333
- # @param [Array] content_types array for Content-Type
334
- # @return [String] the Content-Type header (e.g. application/json)
335
- def select_header_content_type(content_types)
336
- # use application/json by default
337
- return 'application/json' if content_types.nil? || content_types.empty?
338
- # use JSON when present, otherwise use the first one
339
- json_content_type = content_types.find { |s| json_mime?(s) }
340
- json_content_type || content_types.first
341
- end
342
-
343
- # Convert object (array, hash, object, etc) to JSON string.
344
- # @param [Object] model object to be converted into JSON string
345
- # @return [String] JSON string representation of the object
346
- def object_to_http_body(model)
347
- return model if model.nil? || model.is_a?(String)
348
- local_body = nil
349
- if model.is_a?(Array)
350
- local_body = model.map { |m| object_to_hash(m) }
351
- else
352
- local_body = object_to_hash(model)
353
- end
354
- local_body.to_json
355
- end
356
-
357
- # Convert object(non-array) to hash.
358
- # @param [Object] obj object to be converted into JSON string
359
- # @return [String] JSON string representation of the object
360
- def object_to_hash(obj)
361
- if obj.respond_to?(:to_hash)
362
- obj.to_hash
363
- else
364
- obj
365
- end
366
- end
367
-
368
- # Build parameter value according to the given collection format.
369
- # @param [String] collection_format one of :csv, :ssv, :tsv, :pipes and :multi
370
- def build_collection_param(param, collection_format)
371
- case collection_format
372
- when :csv
373
- param.join(',')
374
- when :ssv
375
- param.join(' ')
376
- when :tsv
377
- param.join("\t")
378
- when :pipes
379
- param.join('|')
380
- when :multi
381
- # return the array directly as typhoeus will handle it as expected
382
- param
383
- else
384
- fail "unknown collection format: #{collection_format.inspect}"
385
- end
386
- end
387
- end
388
- end
@@ -1,57 +0,0 @@
1
- =begin
2
- #Sematext Cloud API
3
-
4
- #API Explorer provides access and documentation for Sematext REST API. The REST API requires the API Key to be sent as part of `Authorization` header. E.g.: `Authorization : apiKey e5f18450-205a-48eb-8589-7d49edaea813`.
5
-
6
- OpenAPI spec version: v3
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 3.0.25
10
- =end
11
-
12
- module stcloud
13
- class ApiError < StandardError
14
- attr_reader :code, :response_headers, :response_body
15
-
16
- # Usage examples:
17
- # ApiError.new
18
- # ApiError.new("message")
19
- # ApiError.new(:code => 500, :response_headers => {}, :response_body => "")
20
- # ApiError.new(:code => 404, :message => "Not Found")
21
- def initialize(arg = nil)
22
- if arg.is_a? Hash
23
- if arg.key?(:message) || arg.key?('message')
24
- super(arg[:message] || arg['message'])
25
- else
26
- super arg
27
- end
28
-
29
- arg.each do |k, v|
30
- instance_variable_set "@#{k}", v
31
- end
32
- else
33
- super arg
34
- end
35
- end
36
-
37
- # Override to_s to display a friendly error message
38
- def to_s
39
- message
40
- end
41
-
42
- def message
43
- if @message.nil?
44
- msg = "Error message: the server returns an error"
45
- else
46
- msg = @message
47
- end
48
-
49
- msg += "\nHTTP status code: #{code}" if code
50
- msg += "\nResponse headers: #{response_headers}" if response_headers
51
- msg += "\nResponse body: #{response_body}" if response_body
52
-
53
- msg
54
- end
55
-
56
- end
57
- end
@@ -1,205 +0,0 @@
1
- =begin
2
- #Sematext Cloud API
3
-
4
- #API Explorer provides access and documentation for Sematext REST API. The REST API requires the API Key to be sent as part of `Authorization` header. E.g.: `Authorization : apiKey e5f18450-205a-48eb-8589-7d49edaea813`.
5
-
6
- OpenAPI spec version: v3
7
-
8
- Generated by: https://github.com/swagger-api/swagger-codegen.git
9
- Swagger Codegen version: 3.0.25
10
- =end
11
-
12
- module stcloud
13
- class Configuration
14
- # Defines url scheme
15
- attr_accessor :scheme
16
-
17
- # Defines url host
18
- attr_accessor :host
19
-
20
- # Defines url base path
21
- attr_accessor :base_path
22
-
23
- # Defines API keys used with API Key authentications.
24
- #
25
- # @return [Hash] key: parameter name, value: parameter value (API key)
26
- #
27
- # @example parameter name is "api_key", API key is "xxx" (e.g. "api_key=xxx" in query string)
28
- # config.api_key['api_key'] = 'xxx'
29
- attr_accessor :api_key
30
-
31
- # Defines API key prefixes used with API Key authentications.
32
- #
33
- # @return [Hash] key: parameter name, value: API key prefix
34
- #
35
- # @example parameter name is "Authorization", API key prefix is "Token" (e.g. "Authorization: Token xxx" in headers)
36
- # config.api_key_prefix['api_key'] = 'Token'
37
- attr_accessor :api_key_prefix
38
-
39
- # Defines the username used with HTTP basic authentication.
40
- #
41
- # @return [String]
42
- attr_accessor :username
43
-
44
- # Defines the password used with HTTP basic authentication.
45
- #
46
- # @return [String]
47
- attr_accessor :password
48
-
49
- # Defines the access token (Bearer) used with OAuth2.
50
- attr_accessor :access_token
51
-
52
- # Set this to enable/disable debugging. When enabled (set to true), HTTP request/response
53
- # details will be logged with `logger.debug` (see the `logger` attribute).
54
- # Default to false.
55
- #
56
- # @return [true, false]
57
- attr_accessor :debugging
58
-
59
- # Defines the logger used for debugging.
60
- # Default to `Rails.logger` (when in Rails) or logging to STDOUT.
61
- #
62
- # @return [#debug]
63
- attr_accessor :logger
64
-
65
- # Defines the temporary folder to store downloaded files
66
- # (for API endpoints that have file response).
67
- # Default to use `Tempfile`.
68
- #
69
- # @return [String]
70
- attr_accessor :temp_folder_path
71
-
72
- # The time limit for HTTP request in seconds.
73
- # Default to 0 (never times out).
74
- attr_accessor :timeout
75
-
76
- # Set this to false to skip client side validation in the operation.
77
- # Default to true.
78
- # @return [true, false]
79
- attr_accessor :client_side_validation
80
-
81
- ### TLS/SSL setting
82
- # Set this to false to skip verifying SSL certificate when calling API from https server.
83
- # Default to true.
84
- #
85
- # @note Do NOT set it to false in production code, otherwise you would face multiple types of cryptographic attacks.
86
- #
87
- # @return [true, false]
88
- attr_accessor :verify_ssl
89
-
90
- ### TLS/SSL setting
91
- # Set this to false to skip verifying SSL host name
92
- # Default to true.
93
- #
94
- # @note Do NOT set it to false in production code, otherwise you would face multiple types of cryptographic attacks.
95
- #
96
- # @return [true, false]
97
- attr_accessor :verify_ssl_host
98
-
99
- ### TLS/SSL setting
100
- # Set this to customize the certificate file to verify the peer.
101
- #
102
- # @return [String] the path to the certificate file
103
- #
104
- # @see The `cainfo` option of Typhoeus, `--cert` option of libcurl. Related source code:
105
- # https://github.com/typhoeus/typhoeus/blob/master/lib/typhoeus/easy_factory.rb#L145
106
- attr_accessor :ssl_ca_cert
107
-
108
- ### TLS/SSL setting
109
- # Client certificate file (for client certificate)
110
- attr_accessor :cert_file
111
-
112
- ### TLS/SSL setting
113
- # Client private key file (for client certificate)
114
- attr_accessor :key_file
115
-
116
- # Set this to customize parameters encoding of array parameter with multi collectionFormat.
117
- # Default to nil.
118
- #
119
- # @see The params_encoding option of Ethon. Related source code:
120
- # https://github.com/typhoeus/ethon/blob/master/lib/ethon/easy/queryable.rb#L96
121
- attr_accessor :params_encoding
122
-
123
- attr_accessor :inject_format
124
-
125
- attr_accessor :force_ending_format
126
-
127
- def initialize
128
- @scheme = 'http'
129
- @host = 'apps.sematext.com'
130
- @base_path = '/'
131
- @api_key = {}
132
- @api_key_prefix = {}
133
- @timeout = 0
134
- @client_side_validation = true
135
- @verify_ssl = true
136
- @verify_ssl_host = true
137
- @params_encoding = nil
138
- @cert_file = nil
139
- @key_file = nil
140
- @debugging = false
141
- @inject_format = false
142
- @force_ending_format = false
143
- @logger = defined?(Rails) ? Rails.logger : Logger.new(STDOUT)
144
-
145
- yield(self) if block_given?
146
- end
147
-
148
- # The default Configuration object.
149
- def self.default
150
- @@default ||= Configuration.new
151
- end
152
-
153
- def configure
154
- yield(self) if block_given?
155
- end
156
-
157
- def scheme=(scheme)
158
- # remove :// from scheme
159
- @scheme = scheme.sub(/:\/\//, '')
160
- end
161
-
162
- def host=(host)
163
- # remove http(s):// and anything after a slash
164
- @host = host.sub(/https?:\/\//, '').split('/').first
165
- end
166
-
167
- def base_path=(base_path)
168
- # Add leading and trailing slashes to base_path
169
- @base_path = "/#{base_path}".gsub(/\/+/, '/')
170
- @base_path = '' if @base_path == '/'
171
- end
172
-
173
- def base_url
174
- "#{scheme}://#{[host, base_path].join('/').gsub(/\/+/, '/')}".sub(/\/+\z/, '')
175
- end
176
-
177
- # Gets API key (with prefix if set).
178
- # @param [String] param_name the parameter name of API key auth
179
- def api_key_with_prefix(param_name)
180
- if @api_key_prefix[param_name]
181
- "#{@api_key_prefix[param_name]} #{@api_key[param_name]}"
182
- else
183
- @api_key[param_name]
184
- end
185
- end
186
-
187
- # Gets Basic Auth token string
188
- def basic_auth_token
189
- 'Basic ' + ["#{username}:#{password}"].pack('m').delete("\r\n")
190
- end
191
-
192
- # Returns Auth Settings hash for api client.
193
- def auth_settings
194
- {
195
- 'api_key' =>
196
- {
197
- type: 'api_key',
198
- in: 'header',
199
- key: 'Authorization',
200
- value: api_key_with_prefix('Authorization')
201
- },
202
- }
203
- end
204
- end
205
- end