spartera_api_sdk 0.3.6

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 (499) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +9 -0
  3. data/Gemfile +9 -0
  4. data/LICENSE +21 -0
  5. data/README.md +372 -0
  6. data/Rakefile +10 -0
  7. data/docs/APIKeysApi.md +537 -0
  8. data/docs/Alerts.md +30 -0
  9. data/docs/AlertsApi.md +525 -0
  10. data/docs/AlertsInput.md +24 -0
  11. data/docs/AlertsUpdate.md +24 -0
  12. data/docs/ApiKeys.md +40 -0
  13. data/docs/ApiKeysInput.md +34 -0
  14. data/docs/ApiKeysUpdate.md +34 -0
  15. data/docs/AssetPriceHistory.md +30 -0
  16. data/docs/AssetPriceHistoryApi.md +597 -0
  17. data/docs/AssetPriceHistoryInput.md +24 -0
  18. data/docs/AssetPriceHistoryUpdate.md +24 -0
  19. data/docs/AssetUsecases.md +28 -0
  20. data/docs/AssetUsecasesApi.md +157 -0
  21. data/docs/Assets.md +142 -0
  22. data/docs/AssetsApi.md +1197 -0
  23. data/docs/AssetsInput.md +128 -0
  24. data/docs/AssetsUpdate.md +128 -0
  25. data/docs/CloudProviders.md +28 -0
  26. data/docs/CloudProvidersApi.md +157 -0
  27. data/docs/CloudProvidersInput.md +22 -0
  28. data/docs/CloudProvidersUpdate.md +22 -0
  29. data/docs/Companies.md +46 -0
  30. data/docs/CompaniesApi.md +805 -0
  31. data/docs/CompaniesInput.md +40 -0
  32. data/docs/CompaniesUpdate.md +40 -0
  33. data/docs/Connections.md +38 -0
  34. data/docs/ConnectionsApi.md +607 -0
  35. data/docs/ConnectionsInput.md +32 -0
  36. data/docs/ConnectionsUpdate.md +32 -0
  37. data/docs/CreateAlerts200Response.md +20 -0
  38. data/docs/CreateAlerts200ResponseData.md +18 -0
  39. data/docs/CreateApiKeys200Response.md +20 -0
  40. data/docs/CreateApiKeys200ResponseData.md +18 -0
  41. data/docs/CreateAssetPriceHistory200Response.md +20 -0
  42. data/docs/CreateAssetPriceHistory200ResponseData.md +18 -0
  43. data/docs/CreateAssetsAnalyze200Response.md +20 -0
  44. data/docs/CreateAssetsAnalyze200ResponseData.md +18 -0
  45. data/docs/CreateConnections200Response.md +20 -0
  46. data/docs/CreateConnections200ResponseData.md +18 -0
  47. data/docs/CreateEndpoints200Response.md +20 -0
  48. data/docs/CreateEndpoints200ResponseData.md +18 -0
  49. data/docs/CreateFavorites200Response.md +20 -0
  50. data/docs/CreateFavorites200ResponseData.md +18 -0
  51. data/docs/CreatePostgenIntegrations200Response.md +20 -0
  52. data/docs/CreatePostgenIntegrations200ResponseData.md +18 -0
  53. data/docs/CreatePosts200Response.md +20 -0
  54. data/docs/CreatePosts200ResponseData.md +18 -0
  55. data/docs/CreateUsers200Response.md +20 -0
  56. data/docs/CreateUsers200ResponseData.md +18 -0
  57. data/docs/DeleteAlerts200Response.md +20 -0
  58. data/docs/DeleteAlerts200ResponseData.md +18 -0
  59. data/docs/DeleteApiKeys200Response.md +20 -0
  60. data/docs/DeleteApiKeys200ResponseData.md +18 -0
  61. data/docs/DeleteAssetPriceHistory200Response.md +20 -0
  62. data/docs/DeleteAssetPriceHistory200ResponseData.md +18 -0
  63. data/docs/DeleteAssets200Response.md +20 -0
  64. data/docs/DeleteAssets200ResponseData.md +18 -0
  65. data/docs/DeleteConnections200Response.md +20 -0
  66. data/docs/DeleteConnections200ResponseData.md +18 -0
  67. data/docs/DeleteEndpoints200Response.md +20 -0
  68. data/docs/DeleteEndpoints200ResponseData.md +18 -0
  69. data/docs/DeleteFavorites200Response.md +20 -0
  70. data/docs/DeleteFavorites200ResponseData.md +18 -0
  71. data/docs/DeletePostgenIntegrations200Response.md +20 -0
  72. data/docs/DeletePostgenIntegrations200ResponseData.md +18 -0
  73. data/docs/DeletePosts200Response.md +20 -0
  74. data/docs/DeletePosts200ResponseData.md +18 -0
  75. data/docs/DeleteUsers200Response.md +20 -0
  76. data/docs/DeleteUsers200ResponseData.md +18 -0
  77. data/docs/Endpoints.md +96 -0
  78. data/docs/EndpointsApi.md +1189 -0
  79. data/docs/EndpointsInput.md +94 -0
  80. data/docs/EndpointsUpdate.md +94 -0
  81. data/docs/Error.md +24 -0
  82. data/docs/Favorites.md +34 -0
  83. data/docs/FavoritesApi.md +597 -0
  84. data/docs/FavoritesInput.md +28 -0
  85. data/docs/FavoritesUpdate.md +28 -0
  86. data/docs/GetAlertsById200Response.md +20 -0
  87. data/docs/GetApiKeysById200Response.md +20 -0
  88. data/docs/GetAssetPriceHistoryById200Response.md +20 -0
  89. data/docs/GetAssetUsecasesById200Response.md +20 -0
  90. data/docs/GetAssetsByIdAnalyze200Response.md +20 -0
  91. data/docs/GetCloudProvidersById200Response.md +20 -0
  92. data/docs/GetCompaniesById200Response.md +20 -0
  93. data/docs/GetConnectionsById200Response.md +20 -0
  94. data/docs/GetEndpointsByIdConnectionsDescribe200Response.md +20 -0
  95. data/docs/GetFavoritesById200Response.md +20 -0
  96. data/docs/GetIndustriesById200Response.md +20 -0
  97. data/docs/GetJobFunctionsById200Response.md +20 -0
  98. data/docs/GetPostgenIntegrationsById200Response.md +20 -0
  99. data/docs/GetPostsById200Response.md +20 -0
  100. data/docs/GetStorageEnginesById200Response.md +20 -0
  101. data/docs/GetUsersById200Response.md +20 -0
  102. data/docs/Industries.md +32 -0
  103. data/docs/IndustriesApi.md +237 -0
  104. data/docs/InlineObject.md +22 -0
  105. data/docs/InlineObject1.md +20 -0
  106. data/docs/InlineObject2.md +20 -0
  107. data/docs/InlineObject3.md +20 -0
  108. data/docs/InlineObject4.md +20 -0
  109. data/docs/InlineObject5.md +20 -0
  110. data/docs/InlineObject6.md +22 -0
  111. data/docs/InlineObject7.md +20 -0
  112. data/docs/JobFunctions.md +24 -0
  113. data/docs/JobFunctionsApi.md +157 -0
  114. data/docs/JobFunctionsInput.md +18 -0
  115. data/docs/JobFunctionsUpdate.md +18 -0
  116. data/docs/ListApiKeys200Response.md +20 -0
  117. data/docs/ListAssetUsecases200Response.md +20 -0
  118. data/docs/ListAssets200Response.md +20 -0
  119. data/docs/ListCloudProviders200Response.md +20 -0
  120. data/docs/ListCompaniesAnalyticsAssets200Response.md +20 -0
  121. data/docs/ListConnections200Response.md +20 -0
  122. data/docs/ListEndpoints200Response.md +20 -0
  123. data/docs/ListIndustries200Response.md +20 -0
  124. data/docs/ListJobFunctions200Response.md +20 -0
  125. data/docs/ListPostgenIntegrations200Response.md +20 -0
  126. data/docs/ListPosts200Response.md +20 -0
  127. data/docs/ListStorageEngines200Response.md +20 -0
  128. data/docs/ListUsers200Response.md +20 -0
  129. data/docs/PostPublications.md +40 -0
  130. data/docs/PostPublicationsInput.md +34 -0
  131. data/docs/PostPublicationsUpdate.md +34 -0
  132. data/docs/PostgenIntegrations.md +36 -0
  133. data/docs/PostgenIntegrationsApi.md +463 -0
  134. data/docs/PostgenIntegrationsInput.md +30 -0
  135. data/docs/PostgenIntegrationsUpdate.md +30 -0
  136. data/docs/Posts.md +68 -0
  137. data/docs/PostsApi.md +843 -0
  138. data/docs/PostsInput.md +62 -0
  139. data/docs/PostsUpdate.md +62 -0
  140. data/docs/StorageEngines.md +32 -0
  141. data/docs/StorageEnginesApi.md +161 -0
  142. data/docs/UpdateAlerts200Response.md +20 -0
  143. data/docs/UpdateAlerts200ResponseData.md +18 -0
  144. data/docs/UpdateApiKeys200Response.md +20 -0
  145. data/docs/UpdateApiKeys200ResponseData.md +18 -0
  146. data/docs/UpdateAssetPriceHistory200Response.md +20 -0
  147. data/docs/UpdateAssetPriceHistory200ResponseData.md +18 -0
  148. data/docs/UpdateAssets200Response.md +20 -0
  149. data/docs/UpdateAssets200ResponseData.md +18 -0
  150. data/docs/UpdateCompanies200Response.md +20 -0
  151. data/docs/UpdateCompanies200ResponseData.md +18 -0
  152. data/docs/UpdateConnections200Response.md +20 -0
  153. data/docs/UpdateConnections200ResponseData.md +18 -0
  154. data/docs/UpdateEndpoints200Response.md +20 -0
  155. data/docs/UpdateEndpoints200ResponseData.md +18 -0
  156. data/docs/UpdateFavorites200Response.md +20 -0
  157. data/docs/UpdateFavorites200ResponseData.md +18 -0
  158. data/docs/UpdatePostgenIntegrations200Response.md +20 -0
  159. data/docs/UpdatePostgenIntegrations200ResponseData.md +18 -0
  160. data/docs/UpdatePosts200Response.md +20 -0
  161. data/docs/UpdatePosts200ResponseData.md +18 -0
  162. data/docs/UpdateUsers200Response.md +20 -0
  163. data/docs/UpdateUsers200ResponseData.md +18 -0
  164. data/docs/Users.md +36 -0
  165. data/docs/UsersApi.md +639 -0
  166. data/docs/UsersInput.md +30 -0
  167. data/docs/UsersUpdate.md +30 -0
  168. data/git_push.sh +57 -0
  169. data/lib/spartera_api_sdk/api/alerts_api.rb +790 -0
  170. data/lib/spartera_api_sdk/api/api_keys_api.rb +746 -0
  171. data/lib/spartera_api_sdk/api/asset_price_history_api.rb +867 -0
  172. data/lib/spartera_api_sdk/api/asset_usecases_api.rb +190 -0
  173. data/lib/spartera_api_sdk/api/assets_api.rb +1554 -0
  174. data/lib/spartera_api_sdk/api/cloud_providers_api.rb +190 -0
  175. data/lib/spartera_api_sdk/api/companies_api.rb +1085 -0
  176. data/lib/spartera_api_sdk/api/connections_api.rb +828 -0
  177. data/lib/spartera_api_sdk/api/endpoints_api.rb +1613 -0
  178. data/lib/spartera_api_sdk/api/favorites_api.rb +870 -0
  179. data/lib/spartera_api_sdk/api/industries_api.rb +284 -0
  180. data/lib/spartera_api_sdk/api/job_functions_api.rb +190 -0
  181. data/lib/spartera_api_sdk/api/postgen_integrations_api.rb +634 -0
  182. data/lib/spartera_api_sdk/api/posts_api.rb +1190 -0
  183. data/lib/spartera_api_sdk/api/storage_engines_api.rb +228 -0
  184. data/lib/spartera_api_sdk/api/users_api.rb +891 -0
  185. data/lib/spartera_api_sdk/api_client.rb +397 -0
  186. data/lib/spartera_api_sdk/api_error.rb +58 -0
  187. data/lib/spartera_api_sdk/api_model_base.rb +88 -0
  188. data/lib/spartera_api_sdk/configuration.rb +312 -0
  189. data/lib/spartera_api_sdk/models/alerts.rb +260 -0
  190. data/lib/spartera_api_sdk/models/alerts_input.rb +213 -0
  191. data/lib/spartera_api_sdk/models/alerts_update.rb +179 -0
  192. data/lib/spartera_api_sdk/models/api_keys.rb +344 -0
  193. data/lib/spartera_api_sdk/models/api_keys_input.rb +263 -0
  194. data/lib/spartera_api_sdk/models/api_keys_update.rb +229 -0
  195. data/lib/spartera_api_sdk/models/asset_price_history.rb +209 -0
  196. data/lib/spartera_api_sdk/models/asset_price_history_input.rb +179 -0
  197. data/lib/spartera_api_sdk/models/asset_price_history_update.rb +179 -0
  198. data/lib/spartera_api_sdk/models/asset_usecases.rb +216 -0
  199. data/lib/spartera_api_sdk/models/assets.rb +1068 -0
  200. data/lib/spartera_api_sdk/models/assets_input.rb +918 -0
  201. data/lib/spartera_api_sdk/models/assets_update.rb +877 -0
  202. data/lib/spartera_api_sdk/models/cloud_providers.rb +216 -0
  203. data/lib/spartera_api_sdk/models/cloud_providers_input.rb +186 -0
  204. data/lib/spartera_api_sdk/models/cloud_providers_update.rb +169 -0
  205. data/lib/spartera_api_sdk/models/companies.rb +374 -0
  206. data/lib/spartera_api_sdk/models/companies_input.rb +327 -0
  207. data/lib/spartera_api_sdk/models/companies_update.rb +293 -0
  208. data/lib/spartera_api_sdk/models/connections.rb +317 -0
  209. data/lib/spartera_api_sdk/models/connections_input.rb +287 -0
  210. data/lib/spartera_api_sdk/models/connections_update.rb +253 -0
  211. data/lib/spartera_api_sdk/models/create_alerts200_response.rb +191 -0
  212. data/lib/spartera_api_sdk/models/create_alerts200_response_data.rb +165 -0
  213. data/lib/spartera_api_sdk/models/create_api_keys200_response.rb +191 -0
  214. data/lib/spartera_api_sdk/models/create_api_keys200_response_data.rb +165 -0
  215. data/lib/spartera_api_sdk/models/create_asset_price_history200_response.rb +191 -0
  216. data/lib/spartera_api_sdk/models/create_asset_price_history200_response_data.rb +165 -0
  217. data/lib/spartera_api_sdk/models/create_assets_analyze200_response.rb +191 -0
  218. data/lib/spartera_api_sdk/models/create_assets_analyze200_response_data.rb +165 -0
  219. data/lib/spartera_api_sdk/models/create_connections200_response.rb +191 -0
  220. data/lib/spartera_api_sdk/models/create_connections200_response_data.rb +165 -0
  221. data/lib/spartera_api_sdk/models/create_endpoints200_response.rb +191 -0
  222. data/lib/spartera_api_sdk/models/create_endpoints200_response_data.rb +165 -0
  223. data/lib/spartera_api_sdk/models/create_favorites200_response.rb +191 -0
  224. data/lib/spartera_api_sdk/models/create_favorites200_response_data.rb +165 -0
  225. data/lib/spartera_api_sdk/models/create_postgen_integrations200_response.rb +191 -0
  226. data/lib/spartera_api_sdk/models/create_postgen_integrations200_response_data.rb +165 -0
  227. data/lib/spartera_api_sdk/models/create_posts200_response.rb +191 -0
  228. data/lib/spartera_api_sdk/models/create_posts200_response_data.rb +165 -0
  229. data/lib/spartera_api_sdk/models/create_users200_response.rb +191 -0
  230. data/lib/spartera_api_sdk/models/create_users200_response_data.rb +165 -0
  231. data/lib/spartera_api_sdk/models/delete_alerts200_response.rb +191 -0
  232. data/lib/spartera_api_sdk/models/delete_alerts200_response_data.rb +165 -0
  233. data/lib/spartera_api_sdk/models/delete_api_keys200_response.rb +191 -0
  234. data/lib/spartera_api_sdk/models/delete_api_keys200_response_data.rb +165 -0
  235. data/lib/spartera_api_sdk/models/delete_asset_price_history200_response.rb +191 -0
  236. data/lib/spartera_api_sdk/models/delete_asset_price_history200_response_data.rb +165 -0
  237. data/lib/spartera_api_sdk/models/delete_assets200_response.rb +191 -0
  238. data/lib/spartera_api_sdk/models/delete_assets200_response_data.rb +165 -0
  239. data/lib/spartera_api_sdk/models/delete_connections200_response.rb +191 -0
  240. data/lib/spartera_api_sdk/models/delete_connections200_response_data.rb +165 -0
  241. data/lib/spartera_api_sdk/models/delete_endpoints200_response.rb +191 -0
  242. data/lib/spartera_api_sdk/models/delete_endpoints200_response_data.rb +165 -0
  243. data/lib/spartera_api_sdk/models/delete_favorites200_response.rb +191 -0
  244. data/lib/spartera_api_sdk/models/delete_favorites200_response_data.rb +165 -0
  245. data/lib/spartera_api_sdk/models/delete_postgen_integrations200_response.rb +191 -0
  246. data/lib/spartera_api_sdk/models/delete_postgen_integrations200_response_data.rb +165 -0
  247. data/lib/spartera_api_sdk/models/delete_posts200_response.rb +191 -0
  248. data/lib/spartera_api_sdk/models/delete_posts200_response_data.rb +165 -0
  249. data/lib/spartera_api_sdk/models/delete_users200_response.rb +191 -0
  250. data/lib/spartera_api_sdk/models/delete_users200_response_data.rb +165 -0
  251. data/lib/spartera_api_sdk/models/endpoints.rb +788 -0
  252. data/lib/spartera_api_sdk/models/endpoints_input.rb +686 -0
  253. data/lib/spartera_api_sdk/models/endpoints_update.rb +635 -0
  254. data/lib/spartera_api_sdk/models/error.rb +212 -0
  255. data/lib/spartera_api_sdk/models/favorites.rb +280 -0
  256. data/lib/spartera_api_sdk/models/favorites_input.rb +233 -0
  257. data/lib/spartera_api_sdk/models/favorites_update.rb +199 -0
  258. data/lib/spartera_api_sdk/models/get_alerts_by_id200_response.rb +191 -0
  259. data/lib/spartera_api_sdk/models/get_api_keys_by_id200_response.rb +191 -0
  260. data/lib/spartera_api_sdk/models/get_asset_price_history_by_id200_response.rb +191 -0
  261. data/lib/spartera_api_sdk/models/get_asset_usecases_by_id200_response.rb +191 -0
  262. data/lib/spartera_api_sdk/models/get_assets_by_id_analyze200_response.rb +191 -0
  263. data/lib/spartera_api_sdk/models/get_cloud_providers_by_id200_response.rb +191 -0
  264. data/lib/spartera_api_sdk/models/get_companies_by_id200_response.rb +191 -0
  265. data/lib/spartera_api_sdk/models/get_connections_by_id200_response.rb +191 -0
  266. data/lib/spartera_api_sdk/models/get_endpoints_by_id_connections_describe200_response.rb +191 -0
  267. data/lib/spartera_api_sdk/models/get_favorites_by_id200_response.rb +191 -0
  268. data/lib/spartera_api_sdk/models/get_industries_by_id200_response.rb +191 -0
  269. data/lib/spartera_api_sdk/models/get_job_functions_by_id200_response.rb +191 -0
  270. data/lib/spartera_api_sdk/models/get_postgen_integrations_by_id200_response.rb +191 -0
  271. data/lib/spartera_api_sdk/models/get_posts_by_id200_response.rb +191 -0
  272. data/lib/spartera_api_sdk/models/get_storage_engines_by_id200_response.rb +191 -0
  273. data/lib/spartera_api_sdk/models/get_users_by_id200_response.rb +191 -0
  274. data/lib/spartera_api_sdk/models/industries.rb +253 -0
  275. data/lib/spartera_api_sdk/models/inline_object.rb +167 -0
  276. data/lib/spartera_api_sdk/models/inline_object1.rb +156 -0
  277. data/lib/spartera_api_sdk/models/inline_object2.rb +156 -0
  278. data/lib/spartera_api_sdk/models/inline_object3.rb +156 -0
  279. data/lib/spartera_api_sdk/models/inline_object4.rb +156 -0
  280. data/lib/spartera_api_sdk/models/inline_object5.rb +156 -0
  281. data/lib/spartera_api_sdk/models/inline_object6.rb +166 -0
  282. data/lib/spartera_api_sdk/models/inline_object7.rb +156 -0
  283. data/lib/spartera_api_sdk/models/job_functions.rb +213 -0
  284. data/lib/spartera_api_sdk/models/job_functions_input.rb +166 -0
  285. data/lib/spartera_api_sdk/models/job_functions_update.rb +149 -0
  286. data/lib/spartera_api_sdk/models/list_api_keys200_response.rb +193 -0
  287. data/lib/spartera_api_sdk/models/list_asset_usecases200_response.rb +193 -0
  288. data/lib/spartera_api_sdk/models/list_assets200_response.rb +193 -0
  289. data/lib/spartera_api_sdk/models/list_cloud_providers200_response.rb +193 -0
  290. data/lib/spartera_api_sdk/models/list_companies_analytics_assets200_response.rb +193 -0
  291. data/lib/spartera_api_sdk/models/list_connections200_response.rb +193 -0
  292. data/lib/spartera_api_sdk/models/list_endpoints200_response.rb +193 -0
  293. data/lib/spartera_api_sdk/models/list_industries200_response.rb +193 -0
  294. data/lib/spartera_api_sdk/models/list_job_functions200_response.rb +193 -0
  295. data/lib/spartera_api_sdk/models/list_postgen_integrations200_response.rb +193 -0
  296. data/lib/spartera_api_sdk/models/list_posts200_response.rb +193 -0
  297. data/lib/spartera_api_sdk/models/list_storage_engines200_response.rb +193 -0
  298. data/lib/spartera_api_sdk/models/list_users200_response.rb +193 -0
  299. data/lib/spartera_api_sdk/models/post_publications.rb +327 -0
  300. data/lib/spartera_api_sdk/models/post_publications_input.rb +280 -0
  301. data/lib/spartera_api_sdk/models/post_publications_update.rb +229 -0
  302. data/lib/spartera_api_sdk/models/postgen_integrations.rb +341 -0
  303. data/lib/spartera_api_sdk/models/postgen_integrations_input.rb +294 -0
  304. data/lib/spartera_api_sdk/models/postgen_integrations_update.rb +209 -0
  305. data/lib/spartera_api_sdk/models/posts.rb +586 -0
  306. data/lib/spartera_api_sdk/models/posts_input.rb +437 -0
  307. data/lib/spartera_api_sdk/models/posts_update.rb +369 -0
  308. data/lib/spartera_api_sdk/models/storage_engines.rb +294 -0
  309. data/lib/spartera_api_sdk/models/update_alerts200_response.rb +191 -0
  310. data/lib/spartera_api_sdk/models/update_alerts200_response_data.rb +165 -0
  311. data/lib/spartera_api_sdk/models/update_api_keys200_response.rb +191 -0
  312. data/lib/spartera_api_sdk/models/update_api_keys200_response_data.rb +165 -0
  313. data/lib/spartera_api_sdk/models/update_asset_price_history200_response.rb +191 -0
  314. data/lib/spartera_api_sdk/models/update_asset_price_history200_response_data.rb +165 -0
  315. data/lib/spartera_api_sdk/models/update_assets200_response.rb +191 -0
  316. data/lib/spartera_api_sdk/models/update_assets200_response_data.rb +165 -0
  317. data/lib/spartera_api_sdk/models/update_companies200_response.rb +191 -0
  318. data/lib/spartera_api_sdk/models/update_companies200_response_data.rb +165 -0
  319. data/lib/spartera_api_sdk/models/update_connections200_response.rb +191 -0
  320. data/lib/spartera_api_sdk/models/update_connections200_response_data.rb +165 -0
  321. data/lib/spartera_api_sdk/models/update_endpoints200_response.rb +191 -0
  322. data/lib/spartera_api_sdk/models/update_endpoints200_response_data.rb +165 -0
  323. data/lib/spartera_api_sdk/models/update_favorites200_response.rb +191 -0
  324. data/lib/spartera_api_sdk/models/update_favorites200_response_data.rb +165 -0
  325. data/lib/spartera_api_sdk/models/update_postgen_integrations200_response.rb +191 -0
  326. data/lib/spartera_api_sdk/models/update_postgen_integrations200_response_data.rb +165 -0
  327. data/lib/spartera_api_sdk/models/update_posts200_response.rb +191 -0
  328. data/lib/spartera_api_sdk/models/update_posts200_response_data.rb +165 -0
  329. data/lib/spartera_api_sdk/models/update_users200_response.rb +191 -0
  330. data/lib/spartera_api_sdk/models/update_users200_response_data.rb +165 -0
  331. data/lib/spartera_api_sdk/models/users.rb +331 -0
  332. data/lib/spartera_api_sdk/models/users_input.rb +260 -0
  333. data/lib/spartera_api_sdk/models/users_update.rb +243 -0
  334. data/lib/spartera_api_sdk/version.rb +15 -0
  335. data/lib/spartera_api_sdk.rb +201 -0
  336. data/spartera_api_sdk.gemspec +39 -0
  337. data/spec/api/alerts_api_spec.rb +126 -0
  338. data/spec/api/api_keys_api_spec.rb +130 -0
  339. data/spec/api/asset_price_history_api_spec.rb +138 -0
  340. data/spec/api/asset_usecases_api_spec.rb +61 -0
  341. data/spec/api/assets_api_spec.rb +243 -0
  342. data/spec/api/cloud_providers_api_spec.rb +61 -0
  343. data/spec/api/companies_api_spec.rb +186 -0
  344. data/spec/api/connections_api_spec.rb +141 -0
  345. data/spec/api/endpoints_api_spec.rb +240 -0
  346. data/spec/api/favorites_api_spec.rb +138 -0
  347. data/spec/api/industries_api_spec.rb +76 -0
  348. data/spec/api/job_functions_api_spec.rb +61 -0
  349. data/spec/api/postgen_integrations_api_spec.rb +117 -0
  350. data/spec/api/posts_api_spec.rb +186 -0
  351. data/spec/api/storage_engines_api_spec.rb +63 -0
  352. data/spec/api/users_api_spec.rb +154 -0
  353. data/spec/models/alerts_input_spec.rb +54 -0
  354. data/spec/models/alerts_spec.rb +72 -0
  355. data/spec/models/alerts_update_spec.rb +54 -0
  356. data/spec/models/api_keys_input_spec.rb +84 -0
  357. data/spec/models/api_keys_spec.rb +102 -0
  358. data/spec/models/api_keys_update_spec.rb +84 -0
  359. data/spec/models/asset_price_history_input_spec.rb +54 -0
  360. data/spec/models/asset_price_history_spec.rb +72 -0
  361. data/spec/models/asset_price_history_update_spec.rb +54 -0
  362. data/spec/models/asset_usecases_spec.rb +66 -0
  363. data/spec/models/assets_input_spec.rb +418 -0
  364. data/spec/models/assets_spec.rb +464 -0
  365. data/spec/models/assets_update_spec.rb +418 -0
  366. data/spec/models/cloud_providers_input_spec.rb +48 -0
  367. data/spec/models/cloud_providers_spec.rb +66 -0
  368. data/spec/models/cloud_providers_update_spec.rb +48 -0
  369. data/spec/models/companies_input_spec.rb +106 -0
  370. data/spec/models/companies_spec.rb +124 -0
  371. data/spec/models/companies_update_spec.rb +106 -0
  372. data/spec/models/connections_input_spec.rb +82 -0
  373. data/spec/models/connections_spec.rb +100 -0
  374. data/spec/models/connections_update_spec.rb +82 -0
  375. data/spec/models/create_alerts200_response_data_spec.rb +36 -0
  376. data/spec/models/create_alerts200_response_spec.rb +42 -0
  377. data/spec/models/create_api_keys200_response_data_spec.rb +36 -0
  378. data/spec/models/create_api_keys200_response_spec.rb +42 -0
  379. data/spec/models/create_asset_price_history200_response_data_spec.rb +36 -0
  380. data/spec/models/create_asset_price_history200_response_spec.rb +42 -0
  381. data/spec/models/create_assets_analyze200_response_data_spec.rb +36 -0
  382. data/spec/models/create_assets_analyze200_response_spec.rb +42 -0
  383. data/spec/models/create_connections200_response_data_spec.rb +36 -0
  384. data/spec/models/create_connections200_response_spec.rb +42 -0
  385. data/spec/models/create_endpoints200_response_data_spec.rb +36 -0
  386. data/spec/models/create_endpoints200_response_spec.rb +42 -0
  387. data/spec/models/create_favorites200_response_data_spec.rb +36 -0
  388. data/spec/models/create_favorites200_response_spec.rb +42 -0
  389. data/spec/models/create_postgen_integrations200_response_data_spec.rb +36 -0
  390. data/spec/models/create_postgen_integrations200_response_spec.rb +42 -0
  391. data/spec/models/create_posts200_response_data_spec.rb +36 -0
  392. data/spec/models/create_posts200_response_spec.rb +42 -0
  393. data/spec/models/create_users200_response_data_spec.rb +36 -0
  394. data/spec/models/create_users200_response_spec.rb +42 -0
  395. data/spec/models/delete_alerts200_response_data_spec.rb +36 -0
  396. data/spec/models/delete_alerts200_response_spec.rb +42 -0
  397. data/spec/models/delete_api_keys200_response_data_spec.rb +36 -0
  398. data/spec/models/delete_api_keys200_response_spec.rb +42 -0
  399. data/spec/models/delete_asset_price_history200_response_data_spec.rb +36 -0
  400. data/spec/models/delete_asset_price_history200_response_spec.rb +42 -0
  401. data/spec/models/delete_assets200_response_data_spec.rb +36 -0
  402. data/spec/models/delete_assets200_response_spec.rb +42 -0
  403. data/spec/models/delete_connections200_response_data_spec.rb +36 -0
  404. data/spec/models/delete_connections200_response_spec.rb +42 -0
  405. data/spec/models/delete_endpoints200_response_data_spec.rb +36 -0
  406. data/spec/models/delete_endpoints200_response_spec.rb +42 -0
  407. data/spec/models/delete_favorites200_response_data_spec.rb +36 -0
  408. data/spec/models/delete_favorites200_response_spec.rb +42 -0
  409. data/spec/models/delete_postgen_integrations200_response_data_spec.rb +36 -0
  410. data/spec/models/delete_postgen_integrations200_response_spec.rb +42 -0
  411. data/spec/models/delete_posts200_response_data_spec.rb +36 -0
  412. data/spec/models/delete_posts200_response_spec.rb +42 -0
  413. data/spec/models/delete_users200_response_data_spec.rb +36 -0
  414. data/spec/models/delete_users200_response_spec.rb +42 -0
  415. data/spec/models/endpoints_input_spec.rb +292 -0
  416. data/spec/models/endpoints_spec.rb +298 -0
  417. data/spec/models/endpoints_update_spec.rb +292 -0
  418. data/spec/models/error_spec.rb +54 -0
  419. data/spec/models/favorites_input_spec.rb +66 -0
  420. data/spec/models/favorites_spec.rb +84 -0
  421. data/spec/models/favorites_update_spec.rb +66 -0
  422. data/spec/models/get_alerts_by_id200_response_spec.rb +42 -0
  423. data/spec/models/get_api_keys_by_id200_response_spec.rb +42 -0
  424. data/spec/models/get_asset_price_history_by_id200_response_spec.rb +42 -0
  425. data/spec/models/get_asset_usecases_by_id200_response_spec.rb +42 -0
  426. data/spec/models/get_assets_by_id_analyze200_response_spec.rb +42 -0
  427. data/spec/models/get_cloud_providers_by_id200_response_spec.rb +42 -0
  428. data/spec/models/get_companies_by_id200_response_spec.rb +42 -0
  429. data/spec/models/get_connections_by_id200_response_spec.rb +42 -0
  430. data/spec/models/get_endpoints_by_id_connections_describe200_response_spec.rb +42 -0
  431. data/spec/models/get_favorites_by_id200_response_spec.rb +42 -0
  432. data/spec/models/get_industries_by_id200_response_spec.rb +42 -0
  433. data/spec/models/get_job_functions_by_id200_response_spec.rb +42 -0
  434. data/spec/models/get_postgen_integrations_by_id200_response_spec.rb +42 -0
  435. data/spec/models/get_posts_by_id200_response_spec.rb +42 -0
  436. data/spec/models/get_storage_engines_by_id200_response_spec.rb +42 -0
  437. data/spec/models/get_users_by_id200_response_spec.rb +42 -0
  438. data/spec/models/industries_spec.rb +78 -0
  439. data/spec/models/inline_object1_spec.rb +42 -0
  440. data/spec/models/inline_object2_spec.rb +42 -0
  441. data/spec/models/inline_object3_spec.rb +42 -0
  442. data/spec/models/inline_object4_spec.rb +42 -0
  443. data/spec/models/inline_object5_spec.rb +42 -0
  444. data/spec/models/inline_object6_spec.rb +48 -0
  445. data/spec/models/inline_object7_spec.rb +42 -0
  446. data/spec/models/inline_object_spec.rb +48 -0
  447. data/spec/models/job_functions_input_spec.rb +36 -0
  448. data/spec/models/job_functions_spec.rb +54 -0
  449. data/spec/models/job_functions_update_spec.rb +36 -0
  450. data/spec/models/list_api_keys200_response_spec.rb +42 -0
  451. data/spec/models/list_asset_usecases200_response_spec.rb +42 -0
  452. data/spec/models/list_assets200_response_spec.rb +42 -0
  453. data/spec/models/list_cloud_providers200_response_spec.rb +42 -0
  454. data/spec/models/list_companies_analytics_assets200_response_spec.rb +42 -0
  455. data/spec/models/list_connections200_response_spec.rb +42 -0
  456. data/spec/models/list_endpoints200_response_spec.rb +42 -0
  457. data/spec/models/list_industries200_response_spec.rb +42 -0
  458. data/spec/models/list_job_functions200_response_spec.rb +42 -0
  459. data/spec/models/list_postgen_integrations200_response_spec.rb +42 -0
  460. data/spec/models/list_posts200_response_spec.rb +42 -0
  461. data/spec/models/list_storage_engines200_response_spec.rb +42 -0
  462. data/spec/models/list_users200_response_spec.rb +42 -0
  463. data/spec/models/post_publications_input_spec.rb +84 -0
  464. data/spec/models/post_publications_spec.rb +102 -0
  465. data/spec/models/post_publications_update_spec.rb +84 -0
  466. data/spec/models/postgen_integrations_input_spec.rb +72 -0
  467. data/spec/models/postgen_integrations_spec.rb +90 -0
  468. data/spec/models/postgen_integrations_update_spec.rb +72 -0
  469. data/spec/models/posts_input_spec.rb +168 -0
  470. data/spec/models/posts_spec.rb +186 -0
  471. data/spec/models/posts_update_spec.rb +168 -0
  472. data/spec/models/storage_engines_spec.rb +82 -0
  473. data/spec/models/update_alerts200_response_data_spec.rb +36 -0
  474. data/spec/models/update_alerts200_response_spec.rb +42 -0
  475. data/spec/models/update_api_keys200_response_data_spec.rb +36 -0
  476. data/spec/models/update_api_keys200_response_spec.rb +42 -0
  477. data/spec/models/update_asset_price_history200_response_data_spec.rb +36 -0
  478. data/spec/models/update_asset_price_history200_response_spec.rb +42 -0
  479. data/spec/models/update_assets200_response_data_spec.rb +36 -0
  480. data/spec/models/update_assets200_response_spec.rb +42 -0
  481. data/spec/models/update_companies200_response_data_spec.rb +36 -0
  482. data/spec/models/update_companies200_response_spec.rb +42 -0
  483. data/spec/models/update_connections200_response_data_spec.rb +36 -0
  484. data/spec/models/update_connections200_response_spec.rb +42 -0
  485. data/spec/models/update_endpoints200_response_data_spec.rb +36 -0
  486. data/spec/models/update_endpoints200_response_spec.rb +42 -0
  487. data/spec/models/update_favorites200_response_data_spec.rb +36 -0
  488. data/spec/models/update_favorites200_response_spec.rb +42 -0
  489. data/spec/models/update_postgen_integrations200_response_data_spec.rb +36 -0
  490. data/spec/models/update_postgen_integrations200_response_spec.rb +42 -0
  491. data/spec/models/update_posts200_response_data_spec.rb +36 -0
  492. data/spec/models/update_posts200_response_spec.rb +42 -0
  493. data/spec/models/update_users200_response_data_spec.rb +36 -0
  494. data/spec/models/update_users200_response_spec.rb +42 -0
  495. data/spec/models/users_input_spec.rb +76 -0
  496. data/spec/models/users_spec.rb +94 -0
  497. data/spec/models/users_update_spec.rb +76 -0
  498. data/spec/spec_helper.rb +111 -0
  499. metadata +742 -0
@@ -0,0 +1,746 @@
1
+ =begin
2
+ #Spartera API Documentation
3
+
4
+ #Auto-generated API documentation for REST services of the Spartera platform
5
+
6
+ The version of the OpenAPI document: 1.25.0
7
+ Contact: support@spartera.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.21.0
10
+
11
+ =end
12
+
13
+ require 'cgi'
14
+
15
+ module SparteraApiSdk
16
+ class APIKeysApi
17
+ attr_accessor :api_client
18
+
19
+ def initialize(api_client = ApiClient.default)
20
+ @api_client = api_client
21
+ end
22
+ # Create single API key. Returns the actual sk_ key (only time it's exposed) and api_key_id for future operations.
23
+ # @param company_id [String] Unique identifier for the Company
24
+ # @param api_keys_input [ApiKeysInput]
25
+ # @param [Hash] opts the optional parameters
26
+ # @option opts [Integer] :page Page number for pagination (default to 1)
27
+ # @option opts [Integer] :limit Number of items per page (default to 20)
28
+ # @option opts [String] :sort_by Field to sort by
29
+ # @option opts [String] :sort_order Sort order (ascending or descending) (default to 'desc')
30
+ # @option opts [String] :search Search term to filter results
31
+ # @return [CreateApiKeys200Response]
32
+ def create_api_keys(company_id, api_keys_input, opts = {})
33
+ data, _status_code, _headers = create_api_keys_with_http_info(company_id, api_keys_input, opts)
34
+ data
35
+ end
36
+
37
+ # Create single API key. Returns the actual sk_ key (only time it's exposed) and api_key_id for future operations.
38
+ # @param company_id [String] Unique identifier for the Company
39
+ # @param api_keys_input [ApiKeysInput]
40
+ # @param [Hash] opts the optional parameters
41
+ # @option opts [Integer] :page Page number for pagination (default to 1)
42
+ # @option opts [Integer] :limit Number of items per page (default to 20)
43
+ # @option opts [String] :sort_by Field to sort by
44
+ # @option opts [String] :sort_order Sort order (ascending or descending) (default to 'desc')
45
+ # @option opts [String] :search Search term to filter results
46
+ # @return [Array<(CreateApiKeys200Response, Integer, Hash)>] CreateApiKeys200Response data, response status code and response headers
47
+ def create_api_keys_with_http_info(company_id, api_keys_input, opts = {})
48
+ if @api_client.config.debugging
49
+ @api_client.config.logger.debug 'Calling API: APIKeysApi.create_api_keys ...'
50
+ end
51
+ # verify the required parameter 'company_id' is set
52
+ if @api_client.config.client_side_validation && company_id.nil?
53
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling APIKeysApi.create_api_keys"
54
+ end
55
+ if @api_client.config.client_side_validation && company_id.to_s.length > 255
56
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.create_api_keys, the character length must be smaller than or equal to 255.'
57
+ end
58
+
59
+ if @api_client.config.client_side_validation && company_id.to_s.length < 1
60
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.create_api_keys, the character length must be greater than or equal to 1.'
61
+ end
62
+
63
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
64
+ if @api_client.config.client_side_validation && company_id !~ pattern
65
+ fail ArgumentError, "invalid value for 'company_id' when calling APIKeysApi.create_api_keys, must conform to the pattern #{pattern}."
66
+ end
67
+
68
+ # verify the required parameter 'api_keys_input' is set
69
+ if @api_client.config.client_side_validation && api_keys_input.nil?
70
+ fail ArgumentError, "Missing the required parameter 'api_keys_input' when calling APIKeysApi.create_api_keys"
71
+ end
72
+ if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
73
+ fail ArgumentError, 'invalid value for "opts[:"page"]" when calling APIKeysApi.create_api_keys, must be greater than or equal to 1.'
74
+ end
75
+
76
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
77
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling APIKeysApi.create_api_keys, must be smaller than or equal to 100.'
78
+ end
79
+
80
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
81
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling APIKeysApi.create_api_keys, must be greater than or equal to 1.'
82
+ end
83
+
84
+ allowable_values = ["asc", "desc"]
85
+ if @api_client.config.client_side_validation && opts[:'sort_order'] && !allowable_values.include?(opts[:'sort_order'])
86
+ fail ArgumentError, "invalid value for \"sort_order\", must be one of #{allowable_values}"
87
+ end
88
+ if @api_client.config.client_side_validation && !opts[:'search'].nil? && opts[:'search'].to_s.length > 255
89
+ fail ArgumentError, 'invalid value for "opts[:"search"]" when calling APIKeysApi.create_api_keys, the character length must be smaller than or equal to 255.'
90
+ end
91
+
92
+ if @api_client.config.client_side_validation && !opts[:'search'].nil? && opts[:'search'].to_s.length < 1
93
+ fail ArgumentError, 'invalid value for "opts[:"search"]" when calling APIKeysApi.create_api_keys, the character length must be greater than or equal to 1.'
94
+ end
95
+
96
+ # resource path
97
+ local_var_path = '/companies/{company_id}/api-keys'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s))
98
+
99
+ # query parameters
100
+ query_params = opts[:query_params] || {}
101
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
102
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
103
+ query_params[:'sort_by'] = opts[:'sort_by'] if !opts[:'sort_by'].nil?
104
+ query_params[:'sort_order'] = opts[:'sort_order'] if !opts[:'sort_order'].nil?
105
+ query_params[:'search'] = opts[:'search'] if !opts[:'search'].nil?
106
+
107
+ # header parameters
108
+ header_params = opts[:header_params] || {}
109
+ # HTTP header 'Accept' (if needed)
110
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
111
+ # HTTP header 'Content-Type'
112
+ content_type = @api_client.select_header_content_type(['application/json'])
113
+ if !content_type.nil?
114
+ header_params['Content-Type'] = content_type
115
+ end
116
+
117
+ # form parameters
118
+ form_params = opts[:form_params] || {}
119
+
120
+ # http body (model)
121
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(api_keys_input)
122
+
123
+ # return_type
124
+ return_type = opts[:debug_return_type] || 'CreateApiKeys200Response'
125
+
126
+ # auth_names
127
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
128
+
129
+ new_options = opts.merge(
130
+ :operation => :"APIKeysApi.create_api_keys",
131
+ :header_params => header_params,
132
+ :query_params => query_params,
133
+ :form_params => form_params,
134
+ :body => post_body,
135
+ :auth_names => auth_names,
136
+ :return_type => return_type
137
+ )
138
+
139
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
140
+ if @api_client.config.debugging
141
+ @api_client.config.logger.debug "API called: APIKeysApi#create_api_keys\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
142
+ end
143
+ return data, status_code, headers
144
+ end
145
+
146
+ # Explicitly revoke an API key with reason tracking. This is different from delete as it includes revocation metadata.
147
+ # @param company_id [String] Unique identifier for the Company
148
+ # @param api_key_id [String] Unique identifier for the Api Key
149
+ # @param api_keys_input [ApiKeysInput]
150
+ # @param [Hash] opts the optional parameters
151
+ # @return [CreateApiKeys200Response]
152
+ def create_api_keys_api_keys_revoke(company_id, api_key_id, api_keys_input, opts = {})
153
+ data, _status_code, _headers = create_api_keys_api_keys_revoke_with_http_info(company_id, api_key_id, api_keys_input, opts)
154
+ data
155
+ end
156
+
157
+ # Explicitly revoke an API key with reason tracking. This is different from delete as it includes revocation metadata.
158
+ # @param company_id [String] Unique identifier for the Company
159
+ # @param api_key_id [String] Unique identifier for the Api Key
160
+ # @param api_keys_input [ApiKeysInput]
161
+ # @param [Hash] opts the optional parameters
162
+ # @return [Array<(CreateApiKeys200Response, Integer, Hash)>] CreateApiKeys200Response data, response status code and response headers
163
+ def create_api_keys_api_keys_revoke_with_http_info(company_id, api_key_id, api_keys_input, opts = {})
164
+ if @api_client.config.debugging
165
+ @api_client.config.logger.debug 'Calling API: APIKeysApi.create_api_keys_api_keys_revoke ...'
166
+ end
167
+ # verify the required parameter 'company_id' is set
168
+ if @api_client.config.client_side_validation && company_id.nil?
169
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling APIKeysApi.create_api_keys_api_keys_revoke"
170
+ end
171
+ if @api_client.config.client_side_validation && company_id.to_s.length > 255
172
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.create_api_keys_api_keys_revoke, the character length must be smaller than or equal to 255.'
173
+ end
174
+
175
+ if @api_client.config.client_side_validation && company_id.to_s.length < 1
176
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.create_api_keys_api_keys_revoke, the character length must be greater than or equal to 1.'
177
+ end
178
+
179
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
180
+ if @api_client.config.client_side_validation && company_id !~ pattern
181
+ fail ArgumentError, "invalid value for 'company_id' when calling APIKeysApi.create_api_keys_api_keys_revoke, must conform to the pattern #{pattern}."
182
+ end
183
+
184
+ # verify the required parameter 'api_key_id' is set
185
+ if @api_client.config.client_side_validation && api_key_id.nil?
186
+ fail ArgumentError, "Missing the required parameter 'api_key_id' when calling APIKeysApi.create_api_keys_api_keys_revoke"
187
+ end
188
+ if @api_client.config.client_side_validation && api_key_id.to_s.length > 255
189
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.create_api_keys_api_keys_revoke, the character length must be smaller than or equal to 255.'
190
+ end
191
+
192
+ if @api_client.config.client_side_validation && api_key_id.to_s.length < 1
193
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.create_api_keys_api_keys_revoke, the character length must be greater than or equal to 1.'
194
+ end
195
+
196
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
197
+ if @api_client.config.client_side_validation && api_key_id !~ pattern
198
+ fail ArgumentError, "invalid value for 'api_key_id' when calling APIKeysApi.create_api_keys_api_keys_revoke, must conform to the pattern #{pattern}."
199
+ end
200
+
201
+ # verify the required parameter 'api_keys_input' is set
202
+ if @api_client.config.client_side_validation && api_keys_input.nil?
203
+ fail ArgumentError, "Missing the required parameter 'api_keys_input' when calling APIKeysApi.create_api_keys_api_keys_revoke"
204
+ end
205
+ # resource path
206
+ local_var_path = '/companies/{company_id}/api-keys/{api_key_id}/revoke'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'api_key_id' + '}', CGI.escape(api_key_id.to_s))
207
+
208
+ # query parameters
209
+ query_params = opts[:query_params] || {}
210
+
211
+ # header parameters
212
+ header_params = opts[:header_params] || {}
213
+ # HTTP header 'Accept' (if needed)
214
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
215
+ # HTTP header 'Content-Type'
216
+ content_type = @api_client.select_header_content_type(['application/json'])
217
+ if !content_type.nil?
218
+ header_params['Content-Type'] = content_type
219
+ end
220
+
221
+ # form parameters
222
+ form_params = opts[:form_params] || {}
223
+
224
+ # http body (model)
225
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(api_keys_input)
226
+
227
+ # return_type
228
+ return_type = opts[:debug_return_type] || 'CreateApiKeys200Response'
229
+
230
+ # auth_names
231
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
232
+
233
+ new_options = opts.merge(
234
+ :operation => :"APIKeysApi.create_api_keys_api_keys_revoke",
235
+ :header_params => header_params,
236
+ :query_params => query_params,
237
+ :form_params => form_params,
238
+ :body => post_body,
239
+ :auth_names => auth_names,
240
+ :return_type => return_type
241
+ )
242
+
243
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path, new_options)
244
+ if @api_client.config.debugging
245
+ @api_client.config.logger.debug "API called: APIKeysApi#create_api_keys_api_keys_revoke\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
246
+ end
247
+ return data, status_code, headers
248
+ end
249
+
250
+ # Delete (deactivate) single API key by api_key_id. Uses the api_key_id returned during creation for clean identification. Fixed to use correct primary key lookup.
251
+ # @param company_id [String] Unique identifier for the Company
252
+ # @param api_key_id [String] Unique identifier for the Api Key
253
+ # @param [Hash] opts the optional parameters
254
+ # @return [DeleteApiKeys200Response]
255
+ def delete_api_keys(company_id, api_key_id, opts = {})
256
+ data, _status_code, _headers = delete_api_keys_with_http_info(company_id, api_key_id, opts)
257
+ data
258
+ end
259
+
260
+ # Delete (deactivate) single API key by api_key_id. Uses the api_key_id returned during creation for clean identification. Fixed to use correct primary key lookup.
261
+ # @param company_id [String] Unique identifier for the Company
262
+ # @param api_key_id [String] Unique identifier for the Api Key
263
+ # @param [Hash] opts the optional parameters
264
+ # @return [Array<(DeleteApiKeys200Response, Integer, Hash)>] DeleteApiKeys200Response data, response status code and response headers
265
+ def delete_api_keys_with_http_info(company_id, api_key_id, opts = {})
266
+ if @api_client.config.debugging
267
+ @api_client.config.logger.debug 'Calling API: APIKeysApi.delete_api_keys ...'
268
+ end
269
+ # verify the required parameter 'company_id' is set
270
+ if @api_client.config.client_side_validation && company_id.nil?
271
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling APIKeysApi.delete_api_keys"
272
+ end
273
+ if @api_client.config.client_side_validation && company_id.to_s.length > 255
274
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.delete_api_keys, the character length must be smaller than or equal to 255.'
275
+ end
276
+
277
+ if @api_client.config.client_side_validation && company_id.to_s.length < 1
278
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.delete_api_keys, the character length must be greater than or equal to 1.'
279
+ end
280
+
281
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
282
+ if @api_client.config.client_side_validation && company_id !~ pattern
283
+ fail ArgumentError, "invalid value for 'company_id' when calling APIKeysApi.delete_api_keys, must conform to the pattern #{pattern}."
284
+ end
285
+
286
+ # verify the required parameter 'api_key_id' is set
287
+ if @api_client.config.client_side_validation && api_key_id.nil?
288
+ fail ArgumentError, "Missing the required parameter 'api_key_id' when calling APIKeysApi.delete_api_keys"
289
+ end
290
+ if @api_client.config.client_side_validation && api_key_id.to_s.length > 255
291
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.delete_api_keys, the character length must be smaller than or equal to 255.'
292
+ end
293
+
294
+ if @api_client.config.client_side_validation && api_key_id.to_s.length < 1
295
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.delete_api_keys, the character length must be greater than or equal to 1.'
296
+ end
297
+
298
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
299
+ if @api_client.config.client_side_validation && api_key_id !~ pattern
300
+ fail ArgumentError, "invalid value for 'api_key_id' when calling APIKeysApi.delete_api_keys, must conform to the pattern #{pattern}."
301
+ end
302
+
303
+ # resource path
304
+ local_var_path = '/companies/{company_id}/api-keys/{api_key_id}'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'api_key_id' + '}', CGI.escape(api_key_id.to_s))
305
+
306
+ # query parameters
307
+ query_params = opts[:query_params] || {}
308
+
309
+ # header parameters
310
+ header_params = opts[:header_params] || {}
311
+ # HTTP header 'Accept' (if needed)
312
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
313
+
314
+ # form parameters
315
+ form_params = opts[:form_params] || {}
316
+
317
+ # http body (model)
318
+ post_body = opts[:debug_body]
319
+
320
+ # return_type
321
+ return_type = opts[:debug_return_type] || 'DeleteApiKeys200Response'
322
+
323
+ # auth_names
324
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
325
+
326
+ new_options = opts.merge(
327
+ :operation => :"APIKeysApi.delete_api_keys",
328
+ :header_params => header_params,
329
+ :query_params => query_params,
330
+ :form_params => form_params,
331
+ :body => post_body,
332
+ :auth_names => auth_names,
333
+ :return_type => return_type
334
+ )
335
+
336
+ data, status_code, headers = @api_client.call_api(:DELETE, local_var_path, new_options)
337
+ if @api_client.config.debugging
338
+ @api_client.config.logger.debug "API called: APIKeysApi#delete_api_keys\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
339
+ end
340
+ return data, status_code, headers
341
+ end
342
+
343
+ # Get single API key by ID. Returns masked API key for security (sk_****1234).
344
+ # @param company_id [String] Unique identifier for the Company
345
+ # @param api_key_id [String] Unique identifier for the Api Key
346
+ # @param [Hash] opts the optional parameters
347
+ # @return [GetApiKeysById200Response]
348
+ def get_api_keys_by_id(company_id, api_key_id, opts = {})
349
+ data, _status_code, _headers = get_api_keys_by_id_with_http_info(company_id, api_key_id, opts)
350
+ data
351
+ end
352
+
353
+ # Get single API key by ID. Returns masked API key for security (sk_****1234).
354
+ # @param company_id [String] Unique identifier for the Company
355
+ # @param api_key_id [String] Unique identifier for the Api Key
356
+ # @param [Hash] opts the optional parameters
357
+ # @return [Array<(GetApiKeysById200Response, Integer, Hash)>] GetApiKeysById200Response data, response status code and response headers
358
+ def get_api_keys_by_id_with_http_info(company_id, api_key_id, opts = {})
359
+ if @api_client.config.debugging
360
+ @api_client.config.logger.debug 'Calling API: APIKeysApi.get_api_keys_by_id ...'
361
+ end
362
+ # verify the required parameter 'company_id' is set
363
+ if @api_client.config.client_side_validation && company_id.nil?
364
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling APIKeysApi.get_api_keys_by_id"
365
+ end
366
+ if @api_client.config.client_side_validation && company_id.to_s.length > 255
367
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.get_api_keys_by_id, the character length must be smaller than or equal to 255.'
368
+ end
369
+
370
+ if @api_client.config.client_side_validation && company_id.to_s.length < 1
371
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.get_api_keys_by_id, the character length must be greater than or equal to 1.'
372
+ end
373
+
374
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
375
+ if @api_client.config.client_side_validation && company_id !~ pattern
376
+ fail ArgumentError, "invalid value for 'company_id' when calling APIKeysApi.get_api_keys_by_id, must conform to the pattern #{pattern}."
377
+ end
378
+
379
+ # verify the required parameter 'api_key_id' is set
380
+ if @api_client.config.client_side_validation && api_key_id.nil?
381
+ fail ArgumentError, "Missing the required parameter 'api_key_id' when calling APIKeysApi.get_api_keys_by_id"
382
+ end
383
+ if @api_client.config.client_side_validation && api_key_id.to_s.length > 255
384
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.get_api_keys_by_id, the character length must be smaller than or equal to 255.'
385
+ end
386
+
387
+ if @api_client.config.client_side_validation && api_key_id.to_s.length < 1
388
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.get_api_keys_by_id, the character length must be greater than or equal to 1.'
389
+ end
390
+
391
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
392
+ if @api_client.config.client_side_validation && api_key_id !~ pattern
393
+ fail ArgumentError, "invalid value for 'api_key_id' when calling APIKeysApi.get_api_keys_by_id, must conform to the pattern #{pattern}."
394
+ end
395
+
396
+ # resource path
397
+ local_var_path = '/companies/{company_id}/api-keys/{api_key_id}'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'api_key_id' + '}', CGI.escape(api_key_id.to_s))
398
+
399
+ # query parameters
400
+ query_params = opts[:query_params] || {}
401
+
402
+ # header parameters
403
+ header_params = opts[:header_params] || {}
404
+ # HTTP header 'Accept' (if needed)
405
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
406
+
407
+ # form parameters
408
+ form_params = opts[:form_params] || {}
409
+
410
+ # http body (model)
411
+ post_body = opts[:debug_body]
412
+
413
+ # return_type
414
+ return_type = opts[:debug_return_type] || 'GetApiKeysById200Response'
415
+
416
+ # auth_names
417
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
418
+
419
+ new_options = opts.merge(
420
+ :operation => :"APIKeysApi.get_api_keys_by_id",
421
+ :header_params => header_params,
422
+ :query_params => query_params,
423
+ :form_params => form_params,
424
+ :body => post_body,
425
+ :auth_names => auth_names,
426
+ :return_type => return_type
427
+ )
428
+
429
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
430
+ if @api_client.config.debugging
431
+ @api_client.config.logger.debug "API called: APIKeysApi#get_api_keys_by_id\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
432
+ end
433
+ return data, status_code, headers
434
+ end
435
+
436
+ # Get usage statistics for a specific API key. Returns usage count, last used date, failed attempts, etc.
437
+ # @param company_id [String] Unique identifier for the Company
438
+ # @param api_key_id [String] Unique identifier for the Api Key
439
+ # @param [Hash] opts the optional parameters
440
+ # @return [GetApiKeysById200Response]
441
+ def get_api_keys_by_id_api_keys_stats(company_id, api_key_id, opts = {})
442
+ data, _status_code, _headers = get_api_keys_by_id_api_keys_stats_with_http_info(company_id, api_key_id, opts)
443
+ data
444
+ end
445
+
446
+ # Get usage statistics for a specific API key. Returns usage count, last used date, failed attempts, etc.
447
+ # @param company_id [String] Unique identifier for the Company
448
+ # @param api_key_id [String] Unique identifier for the Api Key
449
+ # @param [Hash] opts the optional parameters
450
+ # @return [Array<(GetApiKeysById200Response, Integer, Hash)>] GetApiKeysById200Response data, response status code and response headers
451
+ def get_api_keys_by_id_api_keys_stats_with_http_info(company_id, api_key_id, opts = {})
452
+ if @api_client.config.debugging
453
+ @api_client.config.logger.debug 'Calling API: APIKeysApi.get_api_keys_by_id_api_keys_stats ...'
454
+ end
455
+ # verify the required parameter 'company_id' is set
456
+ if @api_client.config.client_side_validation && company_id.nil?
457
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling APIKeysApi.get_api_keys_by_id_api_keys_stats"
458
+ end
459
+ if @api_client.config.client_side_validation && company_id.to_s.length > 255
460
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.get_api_keys_by_id_api_keys_stats, the character length must be smaller than or equal to 255.'
461
+ end
462
+
463
+ if @api_client.config.client_side_validation && company_id.to_s.length < 1
464
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.get_api_keys_by_id_api_keys_stats, the character length must be greater than or equal to 1.'
465
+ end
466
+
467
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
468
+ if @api_client.config.client_side_validation && company_id !~ pattern
469
+ fail ArgumentError, "invalid value for 'company_id' when calling APIKeysApi.get_api_keys_by_id_api_keys_stats, must conform to the pattern #{pattern}."
470
+ end
471
+
472
+ # verify the required parameter 'api_key_id' is set
473
+ if @api_client.config.client_side_validation && api_key_id.nil?
474
+ fail ArgumentError, "Missing the required parameter 'api_key_id' when calling APIKeysApi.get_api_keys_by_id_api_keys_stats"
475
+ end
476
+ if @api_client.config.client_side_validation && api_key_id.to_s.length > 255
477
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.get_api_keys_by_id_api_keys_stats, the character length must be smaller than or equal to 255.'
478
+ end
479
+
480
+ if @api_client.config.client_side_validation && api_key_id.to_s.length < 1
481
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.get_api_keys_by_id_api_keys_stats, the character length must be greater than or equal to 1.'
482
+ end
483
+
484
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
485
+ if @api_client.config.client_side_validation && api_key_id !~ pattern
486
+ fail ArgumentError, "invalid value for 'api_key_id' when calling APIKeysApi.get_api_keys_by_id_api_keys_stats, must conform to the pattern #{pattern}."
487
+ end
488
+
489
+ # resource path
490
+ local_var_path = '/companies/{company_id}/api-keys/{api_key_id}/stats'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'api_key_id' + '}', CGI.escape(api_key_id.to_s))
491
+
492
+ # query parameters
493
+ query_params = opts[:query_params] || {}
494
+
495
+ # header parameters
496
+ header_params = opts[:header_params] || {}
497
+ # HTTP header 'Accept' (if needed)
498
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
499
+
500
+ # form parameters
501
+ form_params = opts[:form_params] || {}
502
+
503
+ # http body (model)
504
+ post_body = opts[:debug_body]
505
+
506
+ # return_type
507
+ return_type = opts[:debug_return_type] || 'GetApiKeysById200Response'
508
+
509
+ # auth_names
510
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
511
+
512
+ new_options = opts.merge(
513
+ :operation => :"APIKeysApi.get_api_keys_by_id_api_keys_stats",
514
+ :header_params => header_params,
515
+ :query_params => query_params,
516
+ :form_params => form_params,
517
+ :body => post_body,
518
+ :auth_names => auth_names,
519
+ :return_type => return_type
520
+ )
521
+
522
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
523
+ if @api_client.config.debugging
524
+ @api_client.config.logger.debug "API called: APIKeysApi#get_api_keys_by_id_api_keys_stats\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
525
+ end
526
+ return data, status_code, headers
527
+ end
528
+
529
+ # Get all API keys for a company. Returns masked API keys for security (sk_****1234).
530
+ # @param company_id [String] Unique identifier for the Company
531
+ # @param [Hash] opts the optional parameters
532
+ # @option opts [Integer] :page Page number for pagination (default to 1)
533
+ # @option opts [Integer] :limit Number of items per page (default to 20)
534
+ # @option opts [String] :sort_by Field to sort by
535
+ # @option opts [String] :sort_order Sort order (ascending or descending) (default to 'desc')
536
+ # @option opts [String] :search Search term to filter results
537
+ # @return [ListApiKeys200Response]
538
+ def list_api_keys(company_id, opts = {})
539
+ data, _status_code, _headers = list_api_keys_with_http_info(company_id, opts)
540
+ data
541
+ end
542
+
543
+ # Get all API keys for a company. Returns masked API keys for security (sk_****1234).
544
+ # @param company_id [String] Unique identifier for the Company
545
+ # @param [Hash] opts the optional parameters
546
+ # @option opts [Integer] :page Page number for pagination (default to 1)
547
+ # @option opts [Integer] :limit Number of items per page (default to 20)
548
+ # @option opts [String] :sort_by Field to sort by
549
+ # @option opts [String] :sort_order Sort order (ascending or descending) (default to 'desc')
550
+ # @option opts [String] :search Search term to filter results
551
+ # @return [Array<(ListApiKeys200Response, Integer, Hash)>] ListApiKeys200Response data, response status code and response headers
552
+ def list_api_keys_with_http_info(company_id, opts = {})
553
+ if @api_client.config.debugging
554
+ @api_client.config.logger.debug 'Calling API: APIKeysApi.list_api_keys ...'
555
+ end
556
+ # verify the required parameter 'company_id' is set
557
+ if @api_client.config.client_side_validation && company_id.nil?
558
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling APIKeysApi.list_api_keys"
559
+ end
560
+ if @api_client.config.client_side_validation && company_id.to_s.length > 255
561
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.list_api_keys, the character length must be smaller than or equal to 255.'
562
+ end
563
+
564
+ if @api_client.config.client_side_validation && company_id.to_s.length < 1
565
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.list_api_keys, the character length must be greater than or equal to 1.'
566
+ end
567
+
568
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
569
+ if @api_client.config.client_side_validation && company_id !~ pattern
570
+ fail ArgumentError, "invalid value for 'company_id' when calling APIKeysApi.list_api_keys, must conform to the pattern #{pattern}."
571
+ end
572
+
573
+ if @api_client.config.client_side_validation && !opts[:'page'].nil? && opts[:'page'] < 1
574
+ fail ArgumentError, 'invalid value for "opts[:"page"]" when calling APIKeysApi.list_api_keys, must be greater than or equal to 1.'
575
+ end
576
+
577
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] > 100
578
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling APIKeysApi.list_api_keys, must be smaller than or equal to 100.'
579
+ end
580
+
581
+ if @api_client.config.client_side_validation && !opts[:'limit'].nil? && opts[:'limit'] < 1
582
+ fail ArgumentError, 'invalid value for "opts[:"limit"]" when calling APIKeysApi.list_api_keys, must be greater than or equal to 1.'
583
+ end
584
+
585
+ allowable_values = ["asc", "desc"]
586
+ if @api_client.config.client_side_validation && opts[:'sort_order'] && !allowable_values.include?(opts[:'sort_order'])
587
+ fail ArgumentError, "invalid value for \"sort_order\", must be one of #{allowable_values}"
588
+ end
589
+ if @api_client.config.client_side_validation && !opts[:'search'].nil? && opts[:'search'].to_s.length > 255
590
+ fail ArgumentError, 'invalid value for "opts[:"search"]" when calling APIKeysApi.list_api_keys, the character length must be smaller than or equal to 255.'
591
+ end
592
+
593
+ if @api_client.config.client_side_validation && !opts[:'search'].nil? && opts[:'search'].to_s.length < 1
594
+ fail ArgumentError, 'invalid value for "opts[:"search"]" when calling APIKeysApi.list_api_keys, the character length must be greater than or equal to 1.'
595
+ end
596
+
597
+ # resource path
598
+ local_var_path = '/companies/{company_id}/api-keys'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s))
599
+
600
+ # query parameters
601
+ query_params = opts[:query_params] || {}
602
+ query_params[:'page'] = opts[:'page'] if !opts[:'page'].nil?
603
+ query_params[:'limit'] = opts[:'limit'] if !opts[:'limit'].nil?
604
+ query_params[:'sort_by'] = opts[:'sort_by'] if !opts[:'sort_by'].nil?
605
+ query_params[:'sort_order'] = opts[:'sort_order'] if !opts[:'sort_order'].nil?
606
+ query_params[:'search'] = opts[:'search'] if !opts[:'search'].nil?
607
+
608
+ # header parameters
609
+ header_params = opts[:header_params] || {}
610
+ # HTTP header 'Accept' (if needed)
611
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
612
+
613
+ # form parameters
614
+ form_params = opts[:form_params] || {}
615
+
616
+ # http body (model)
617
+ post_body = opts[:debug_body]
618
+
619
+ # return_type
620
+ return_type = opts[:debug_return_type] || 'ListApiKeys200Response'
621
+
622
+ # auth_names
623
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
624
+
625
+ new_options = opts.merge(
626
+ :operation => :"APIKeysApi.list_api_keys",
627
+ :header_params => header_params,
628
+ :query_params => query_params,
629
+ :form_params => form_params,
630
+ :body => post_body,
631
+ :auth_names => auth_names,
632
+ :return_type => return_type
633
+ )
634
+
635
+ data, status_code, headers = @api_client.call_api(:GET, local_var_path, new_options)
636
+ if @api_client.config.debugging
637
+ @api_client.config.logger.debug "API called: APIKeysApi#list_api_keys\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
638
+ end
639
+ return data, status_code, headers
640
+ end
641
+
642
+ # Update an existing API key by ID. Can update metadata like name, expiration, rate limits, etc. Cannot update the actual key value (for security).
643
+ # @param company_id [String] Unique identifier for the Company
644
+ # @param api_key_id [String] Unique identifier for the Api Key
645
+ # @param api_keys_update [ApiKeysUpdate]
646
+ # @param [Hash] opts the optional parameters
647
+ # @return [UpdateApiKeys200Response]
648
+ def update_api_keys(company_id, api_key_id, api_keys_update, opts = {})
649
+ data, _status_code, _headers = update_api_keys_with_http_info(company_id, api_key_id, api_keys_update, opts)
650
+ data
651
+ end
652
+
653
+ # Update an existing API key by ID. Can update metadata like name, expiration, rate limits, etc. Cannot update the actual key value (for security).
654
+ # @param company_id [String] Unique identifier for the Company
655
+ # @param api_key_id [String] Unique identifier for the Api Key
656
+ # @param api_keys_update [ApiKeysUpdate]
657
+ # @param [Hash] opts the optional parameters
658
+ # @return [Array<(UpdateApiKeys200Response, Integer, Hash)>] UpdateApiKeys200Response data, response status code and response headers
659
+ def update_api_keys_with_http_info(company_id, api_key_id, api_keys_update, opts = {})
660
+ if @api_client.config.debugging
661
+ @api_client.config.logger.debug 'Calling API: APIKeysApi.update_api_keys ...'
662
+ end
663
+ # verify the required parameter 'company_id' is set
664
+ if @api_client.config.client_side_validation && company_id.nil?
665
+ fail ArgumentError, "Missing the required parameter 'company_id' when calling APIKeysApi.update_api_keys"
666
+ end
667
+ if @api_client.config.client_side_validation && company_id.to_s.length > 255
668
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.update_api_keys, the character length must be smaller than or equal to 255.'
669
+ end
670
+
671
+ if @api_client.config.client_side_validation && company_id.to_s.length < 1
672
+ fail ArgumentError, 'invalid value for "company_id" when calling APIKeysApi.update_api_keys, the character length must be greater than or equal to 1.'
673
+ end
674
+
675
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
676
+ if @api_client.config.client_side_validation && company_id !~ pattern
677
+ fail ArgumentError, "invalid value for 'company_id' when calling APIKeysApi.update_api_keys, must conform to the pattern #{pattern}."
678
+ end
679
+
680
+ # verify the required parameter 'api_key_id' is set
681
+ if @api_client.config.client_side_validation && api_key_id.nil?
682
+ fail ArgumentError, "Missing the required parameter 'api_key_id' when calling APIKeysApi.update_api_keys"
683
+ end
684
+ if @api_client.config.client_side_validation && api_key_id.to_s.length > 255
685
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.update_api_keys, the character length must be smaller than or equal to 255.'
686
+ end
687
+
688
+ if @api_client.config.client_side_validation && api_key_id.to_s.length < 1
689
+ fail ArgumentError, 'invalid value for "api_key_id" when calling APIKeysApi.update_api_keys, the character length must be greater than or equal to 1.'
690
+ end
691
+
692
+ pattern = Regexp.new(/^[a-zA-Z0-9_-]+$/)
693
+ if @api_client.config.client_side_validation && api_key_id !~ pattern
694
+ fail ArgumentError, "invalid value for 'api_key_id' when calling APIKeysApi.update_api_keys, must conform to the pattern #{pattern}."
695
+ end
696
+
697
+ # verify the required parameter 'api_keys_update' is set
698
+ if @api_client.config.client_side_validation && api_keys_update.nil?
699
+ fail ArgumentError, "Missing the required parameter 'api_keys_update' when calling APIKeysApi.update_api_keys"
700
+ end
701
+ # resource path
702
+ local_var_path = '/companies/{company_id}/api-keys/{api_key_id}'.sub('{' + 'company_id' + '}', CGI.escape(company_id.to_s)).sub('{' + 'api_key_id' + '}', CGI.escape(api_key_id.to_s))
703
+
704
+ # query parameters
705
+ query_params = opts[:query_params] || {}
706
+
707
+ # header parameters
708
+ header_params = opts[:header_params] || {}
709
+ # HTTP header 'Accept' (if needed)
710
+ header_params['Accept'] = @api_client.select_header_accept(['application/json']) unless header_params['Accept']
711
+ # HTTP header 'Content-Type'
712
+ content_type = @api_client.select_header_content_type(['application/json'])
713
+ if !content_type.nil?
714
+ header_params['Content-Type'] = content_type
715
+ end
716
+
717
+ # form parameters
718
+ form_params = opts[:form_params] || {}
719
+
720
+ # http body (model)
721
+ post_body = opts[:debug_body] || @api_client.object_to_http_body(api_keys_update)
722
+
723
+ # return_type
724
+ return_type = opts[:debug_return_type] || 'UpdateApiKeys200Response'
725
+
726
+ # auth_names
727
+ auth_names = opts[:debug_auth_names] || ['ApiKeyAuth']
728
+
729
+ new_options = opts.merge(
730
+ :operation => :"APIKeysApi.update_api_keys",
731
+ :header_params => header_params,
732
+ :query_params => query_params,
733
+ :form_params => form_params,
734
+ :body => post_body,
735
+ :auth_names => auth_names,
736
+ :return_type => return_type
737
+ )
738
+
739
+ data, status_code, headers = @api_client.call_api(:PATCH, local_var_path, new_options)
740
+ if @api_client.config.debugging
741
+ @api_client.config.logger.debug "API called: APIKeysApi#update_api_keys\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
742
+ end
743
+ return data, status_code, headers
744
+ end
745
+ end
746
+ end