qsafe-sdk 1.0.4

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 (313) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +134 -0
  4. data/Rakefile +10 -0
  5. data/docs/APIKeysApi.md +427 -0
  6. data/docs/ApiKey.md +40 -0
  7. data/docs/AuthResponse.md +20 -0
  8. data/docs/AuthResponseData.md +26 -0
  9. data/docs/AuthenticationApi.md +276 -0
  10. data/docs/ChangePassword200Response.md +20 -0
  11. data/docs/ChangePasswordRequest.md +20 -0
  12. data/docs/CreateApiKey201Response.md +20 -0
  13. data/docs/CreateApiKey201ResponseData.md +20 -0
  14. data/docs/CreateApiKeyRequest.md +28 -0
  15. data/docs/CryptographicOperationsApi.md +331 -0
  16. data/docs/DebugApi.md +84 -0
  17. data/docs/DebugRedisTest200Response.md +30 -0
  18. data/docs/DebugRedisTest200ResponseRateLimitTest.md +22 -0
  19. data/docs/DebugRedisTest200ResponseServicesStatus.md +24 -0
  20. data/docs/DebugRedisTest500Response.md +20 -0
  21. data/docs/DecryptData200Response.md +20 -0
  22. data/docs/DecryptData200ResponseData.md +24 -0
  23. data/docs/DecryptRequest.md +28 -0
  24. data/docs/DecryptRequestEphemeralCrypto.md +24 -0
  25. data/docs/EncryptData200Response.md +20 -0
  26. data/docs/EncryptData200ResponseData.md +28 -0
  27. data/docs/EncryptData200ResponseDataEphemeralStorage.md +22 -0
  28. data/docs/EncryptRequest.md +26 -0
  29. data/docs/EncryptRequestEphemeralStorage.md +22 -0
  30. data/docs/Error.md +28 -0
  31. data/docs/GenerateKeypair201Response.md +20 -0
  32. data/docs/GenerateKeypairRequest.md +24 -0
  33. data/docs/GenerateKeypairRequestKeyPolicy.md +20 -0
  34. data/docs/GetApiKey200Response.md +20 -0
  35. data/docs/GetApiKeyUsage200Response.md +20 -0
  36. data/docs/GetApiKeyUsage200ResponseData.md +22 -0
  37. data/docs/GetApiKeyUsage200ResponseDataDailyUsageInner.md +20 -0
  38. data/docs/GetAuthInfo200Response.md +20 -0
  39. data/docs/GetAuthInfo200ResponseData.md +26 -0
  40. data/docs/GetHealth200Response.md +22 -0
  41. data/docs/GetHealth200ResponseServices.md +22 -0
  42. data/docs/GetHealth200ResponseServicesApi.md +22 -0
  43. data/docs/GetHealth200ResponseServicesEphemeralStorage.md +18 -0
  44. data/docs/GetHealth200ResponseServicesRedis.md +20 -0
  45. data/docs/GetRateLimitStatus200Response.md +20 -0
  46. data/docs/GetRateLimitStatus200ResponseData.md +22 -0
  47. data/docs/GetRateLimitStatus200ResponseDataCurrentUsage.md +22 -0
  48. data/docs/GetRateLimitStatus200ResponseDataLimits.md +22 -0
  49. data/docs/GetRateLimitStatus200ResponseDataResetTimes.md +22 -0
  50. data/docs/HealthApi.md +69 -0
  51. data/docs/Keypair.md +40 -0
  52. data/docs/KeypairsApi.md +341 -0
  53. data/docs/ListApiKeys200Response.md +20 -0
  54. data/docs/ListApiKeys200ResponseData.md +22 -0
  55. data/docs/ListApiKeys200ResponseDataPagination.md +22 -0
  56. data/docs/ListKeypairs200Response.md +20 -0
  57. data/docs/ListKeypairs200ResponseData.md +22 -0
  58. data/docs/ListKeypairs200ResponseDataPagination.md +22 -0
  59. data/docs/LoginRequest.md +20 -0
  60. data/docs/RegisterRequest.md +24 -0
  61. data/docs/RevokeKeypair200Response.md +22 -0
  62. data/docs/RevokeKeypairRequest.md +22 -0
  63. data/docs/RotateApiKey200Response.md +20 -0
  64. data/docs/RotateApiKey200ResponseData.md +20 -0
  65. data/docs/SignData200Response.md +20 -0
  66. data/docs/SignData200ResponseData.md +30 -0
  67. data/docs/SignData200ResponseDataEphemeralStorage.md +22 -0
  68. data/docs/SignRequest.md +26 -0
  69. data/docs/SignRequestEphemeralStorage.md +20 -0
  70. data/docs/UpdateApiKeyRequest.md +28 -0
  71. data/docs/UpdateKeypair200Response.md +20 -0
  72. data/docs/UpdateKeypairRequest.md +24 -0
  73. data/docs/User.md +32 -0
  74. data/docs/UtilitiesApi.md +81 -0
  75. data/docs/VerifyRequest.md +26 -0
  76. data/docs/VerifySignature200Response.md +20 -0
  77. data/docs/VerifySignature200ResponseData.md +22 -0
  78. data/docs/VerifySignature200ResponseDataSignatureInfo.md +20 -0
  79. data/docs/VerifySignature200ResponseDataVerificationResult.md +22 -0
  80. data/git_push.sh +57 -0
  81. data/lib/qsafe/api/api_keys_api.rb +430 -0
  82. data/lib/qsafe/api/authentication_api.rb +275 -0
  83. data/lib/qsafe/api/cryptographic_operations_api.rb +314 -0
  84. data/lib/qsafe/api/debug_api.rb +79 -0
  85. data/lib/qsafe/api/health_api.rb +79 -0
  86. data/lib/qsafe/api/keypairs_api.rb +345 -0
  87. data/lib/qsafe/api/utilities_api.rb +79 -0
  88. data/lib/qsafe/api_client.rb +394 -0
  89. data/lib/qsafe/api_error.rb +58 -0
  90. data/lib/qsafe/configuration.rb +327 -0
  91. data/lib/qsafe/models/api_key.rb +325 -0
  92. data/lib/qsafe/models/auth_response.rb +223 -0
  93. data/lib/qsafe/models/auth_response_data.rb +242 -0
  94. data/lib/qsafe/models/change_password200_response.rb +223 -0
  95. data/lib/qsafe/models/change_password_request.rb +256 -0
  96. data/lib/qsafe/models/create_api_key201_response.rb +233 -0
  97. data/lib/qsafe/models/create_api_key_request.rb +350 -0
  98. data/lib/qsafe/models/debug_redis_test200_response.rb +304 -0
  99. data/lib/qsafe/models/debug_redis_test200_response_rate_limit_test.rb +232 -0
  100. data/lib/qsafe/models/debug_redis_test200_response_services_status.rb +241 -0
  101. data/lib/qsafe/models/debug_redis_test500_response.rb +223 -0
  102. data/lib/qsafe/models/decrypt_data200_response.rb +223 -0
  103. data/lib/qsafe/models/decrypt_data200_response_data.rb +242 -0
  104. data/lib/qsafe/models/decrypt_request.rb +301 -0
  105. data/lib/qsafe/models/decrypt_request_ephemeral_crypto.rb +276 -0
  106. data/lib/qsafe/models/encrypt_data200_response.rb +223 -0
  107. data/lib/qsafe/models/encrypt_data200_response_data.rb +263 -0
  108. data/lib/qsafe/models/encrypt_request.rb +322 -0
  109. data/lib/qsafe/models/encrypt_request_ephemeral_storage.rb +289 -0
  110. data/lib/qsafe/models/error.rb +275 -0
  111. data/lib/qsafe/models/generate_keypair201_response.rb +233 -0
  112. data/lib/qsafe/models/generate_keypair_request.rb +297 -0
  113. data/lib/qsafe/models/generate_keypair_request_key_policy.rb +266 -0
  114. data/lib/qsafe/models/get_api_key200_response.rb +223 -0
  115. data/lib/qsafe/models/get_api_key_usage200_response.rb +223 -0
  116. data/lib/qsafe/models/get_api_key_usage200_response_data.rb +236 -0
  117. data/lib/qsafe/models/get_api_key_usage200_response_data_daily_usage_inner.rb +223 -0
  118. data/lib/qsafe/models/get_auth_info200_response.rb +223 -0
  119. data/lib/qsafe/models/get_auth_info200_response_data.rb +284 -0
  120. data/lib/qsafe/models/get_health200_response.rb +232 -0
  121. data/lib/qsafe/models/get_health200_response_services.rb +232 -0
  122. data/lib/qsafe/models/get_health200_response_services_api.rb +232 -0
  123. data/lib/qsafe/models/get_health200_response_services_ephemeral_storage.rb +214 -0
  124. data/lib/qsafe/models/get_health200_response_services_redis.rb +223 -0
  125. data/lib/qsafe/models/get_rate_limit_status200_response.rb +223 -0
  126. data/lib/qsafe/models/get_rate_limit_status200_response_data.rb +232 -0
  127. data/lib/qsafe/models/get_rate_limit_status200_response_data_current_usage.rb +232 -0
  128. data/lib/qsafe/models/get_rate_limit_status200_response_data_limits.rb +232 -0
  129. data/lib/qsafe/models/get_rate_limit_status200_response_data_reset_times.rb +232 -0
  130. data/lib/qsafe/models/keypair.rb +379 -0
  131. data/lib/qsafe/models/list_api_keys200_response.rb +223 -0
  132. data/lib/qsafe/models/list_api_keys200_response_data.rb +234 -0
  133. data/lib/qsafe/models/list_api_keys200_response_data_pagination.rb +232 -0
  134. data/lib/qsafe/models/list_keypairs200_response.rb +223 -0
  135. data/lib/qsafe/models/list_keypairs200_response_data.rb +234 -0
  136. data/lib/qsafe/models/list_keypairs200_response_data_pagination.rb +232 -0
  137. data/lib/qsafe/models/login_request.rb +237 -0
  138. data/lib/qsafe/models/register_request.rb +345 -0
  139. data/lib/qsafe/models/revoke_keypair200_response.rb +232 -0
  140. data/lib/qsafe/models/revoke_keypair_request.rb +301 -0
  141. data/lib/qsafe/models/rotate_api_key200_response.rb +232 -0
  142. data/lib/qsafe/models/sign_data200_response.rb +223 -0
  143. data/lib/qsafe/models/sign_data200_response_data.rb +262 -0
  144. data/lib/qsafe/models/sign_request.rb +321 -0
  145. data/lib/qsafe/models/sign_request_ephemeral_storage.rb +279 -0
  146. data/lib/qsafe/models/update_api_key_request.rb +343 -0
  147. data/lib/qsafe/models/update_keypair200_response.rb +223 -0
  148. data/lib/qsafe/models/update_keypair_request.rb +317 -0
  149. data/lib/qsafe/models/user.rb +293 -0
  150. data/lib/qsafe/models/verify_request.rb +389 -0
  151. data/lib/qsafe/models/verify_signature200_response.rb +223 -0
  152. data/lib/qsafe/models/verify_signature200_response_data.rb +251 -0
  153. data/lib/qsafe/version.rb +15 -0
  154. data/lib/qsafe-sdk/api/api_keys_api.rb +430 -0
  155. data/lib/qsafe-sdk/api/authentication_api.rb +275 -0
  156. data/lib/qsafe-sdk/api/cryptographic_operations_api.rb +314 -0
  157. data/lib/qsafe-sdk/api/debug_api.rb +79 -0
  158. data/lib/qsafe-sdk/api/health_api.rb +79 -0
  159. data/lib/qsafe-sdk/api/keypairs_api.rb +345 -0
  160. data/lib/qsafe-sdk/api/utilities_api.rb +79 -0
  161. data/lib/qsafe-sdk/api_client.rb +394 -0
  162. data/lib/qsafe-sdk/api_error.rb +58 -0
  163. data/lib/qsafe-sdk/configuration.rb +327 -0
  164. data/lib/qsafe-sdk/models/api_key.rb +345 -0
  165. data/lib/qsafe-sdk/models/auth_response.rb +223 -0
  166. data/lib/qsafe-sdk/models/auth_response_data.rb +252 -0
  167. data/lib/qsafe-sdk/models/change_password200_response.rb +223 -0
  168. data/lib/qsafe-sdk/models/change_password_request.rb +256 -0
  169. data/lib/qsafe-sdk/models/create_api_key201_response.rb +223 -0
  170. data/lib/qsafe-sdk/models/create_api_key201_response_data.rb +224 -0
  171. data/lib/qsafe-sdk/models/create_api_key_request.rb +350 -0
  172. data/lib/qsafe-sdk/models/debug_redis_test200_response.rb +304 -0
  173. data/lib/qsafe-sdk/models/debug_redis_test200_response_rate_limit_test.rb +232 -0
  174. data/lib/qsafe-sdk/models/debug_redis_test200_response_services_status.rb +241 -0
  175. data/lib/qsafe-sdk/models/debug_redis_test500_response.rb +223 -0
  176. data/lib/qsafe-sdk/models/decrypt_data200_response.rb +223 -0
  177. data/lib/qsafe-sdk/models/decrypt_data200_response_data.rb +242 -0
  178. data/lib/qsafe-sdk/models/decrypt_request.rb +301 -0
  179. data/lib/qsafe-sdk/models/decrypt_request_ephemeral_crypto.rb +276 -0
  180. data/lib/qsafe-sdk/models/encrypt_data200_response.rb +223 -0
  181. data/lib/qsafe-sdk/models/encrypt_data200_response_data.rb +262 -0
  182. data/lib/qsafe-sdk/models/encrypt_data200_response_data_ephemeral_storage.rb +235 -0
  183. data/lib/qsafe-sdk/models/encrypt_request.rb +322 -0
  184. data/lib/qsafe-sdk/models/encrypt_request_ephemeral_storage.rb +289 -0
  185. data/lib/qsafe-sdk/models/error.rb +275 -0
  186. data/lib/qsafe-sdk/models/generate_keypair201_response.rb +223 -0
  187. data/lib/qsafe-sdk/models/generate_keypair_request.rb +297 -0
  188. data/lib/qsafe-sdk/models/generate_keypair_request_key_policy.rb +266 -0
  189. data/lib/qsafe-sdk/models/get_api_key200_response.rb +223 -0
  190. data/lib/qsafe-sdk/models/get_api_key_usage200_response.rb +223 -0
  191. data/lib/qsafe-sdk/models/get_api_key_usage200_response_data.rb +236 -0
  192. data/lib/qsafe-sdk/models/get_api_key_usage200_response_data_daily_usage_inner.rb +223 -0
  193. data/lib/qsafe-sdk/models/get_auth_info200_response.rb +223 -0
  194. data/lib/qsafe-sdk/models/get_auth_info200_response_data.rb +284 -0
  195. data/lib/qsafe-sdk/models/get_health200_response.rb +232 -0
  196. data/lib/qsafe-sdk/models/get_health200_response_services.rb +232 -0
  197. data/lib/qsafe-sdk/models/get_health200_response_services_api.rb +232 -0
  198. data/lib/qsafe-sdk/models/get_health200_response_services_ephemeral_storage.rb +214 -0
  199. data/lib/qsafe-sdk/models/get_health200_response_services_redis.rb +223 -0
  200. data/lib/qsafe-sdk/models/get_rate_limit_status200_response.rb +223 -0
  201. data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data.rb +232 -0
  202. data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data_current_usage.rb +232 -0
  203. data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data_limits.rb +232 -0
  204. data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data_reset_times.rb +232 -0
  205. data/lib/qsafe-sdk/models/keypair.rb +379 -0
  206. data/lib/qsafe-sdk/models/list_api_keys200_response.rb +223 -0
  207. data/lib/qsafe-sdk/models/list_api_keys200_response_data.rb +234 -0
  208. data/lib/qsafe-sdk/models/list_api_keys200_response_data_pagination.rb +232 -0
  209. data/lib/qsafe-sdk/models/list_keypairs200_response.rb +223 -0
  210. data/lib/qsafe-sdk/models/list_keypairs200_response_data.rb +234 -0
  211. data/lib/qsafe-sdk/models/list_keypairs200_response_data_pagination.rb +232 -0
  212. data/lib/qsafe-sdk/models/login_request.rb +237 -0
  213. data/lib/qsafe-sdk/models/register_request.rb +345 -0
  214. data/lib/qsafe-sdk/models/revoke_keypair200_response.rb +232 -0
  215. data/lib/qsafe-sdk/models/revoke_keypair_request.rb +301 -0
  216. data/lib/qsafe-sdk/models/rotate_api_key200_response.rb +223 -0
  217. data/lib/qsafe-sdk/models/rotate_api_key200_response_data.rb +224 -0
  218. data/lib/qsafe-sdk/models/sign_data200_response.rb +223 -0
  219. data/lib/qsafe-sdk/models/sign_data200_response_data.rb +270 -0
  220. data/lib/qsafe-sdk/models/sign_data200_response_data_ephemeral_storage.rb +234 -0
  221. data/lib/qsafe-sdk/models/sign_request.rb +321 -0
  222. data/lib/qsafe-sdk/models/sign_request_ephemeral_storage.rb +279 -0
  223. data/lib/qsafe-sdk/models/update_api_key_request.rb +343 -0
  224. data/lib/qsafe-sdk/models/update_keypair200_response.rb +223 -0
  225. data/lib/qsafe-sdk/models/update_keypair_request.rb +317 -0
  226. data/lib/qsafe-sdk/models/user.rb +312 -0
  227. data/lib/qsafe-sdk/models/verify_request.rb +389 -0
  228. data/lib/qsafe-sdk/models/verify_signature200_response.rb +223 -0
  229. data/lib/qsafe-sdk/models/verify_signature200_response_data.rb +232 -0
  230. data/lib/qsafe-sdk/models/verify_signature200_response_data_signature_info.rb +223 -0
  231. data/lib/qsafe-sdk/models/verify_signature200_response_data_verification_result.rb +233 -0
  232. data/lib/qsafe-sdk/version.rb +15 -0
  233. data/lib/qsafe-sdk.rb +114 -0
  234. data/lib/qsafe.rb +108 -0
  235. data/qsafe-sdk.gemspec +39 -0
  236. data/qsafe.gemspec +39 -0
  237. data/spec/api/api_keys_api_spec.rb +105 -0
  238. data/spec/api/authentication_api_spec.rb +78 -0
  239. data/spec/api/cryptographic_operations_api_spec.rb +85 -0
  240. data/spec/api/debug_api_spec.rb +46 -0
  241. data/spec/api/health_api_spec.rb +46 -0
  242. data/spec/api/keypairs_api_spec.rb +89 -0
  243. data/spec/api/utilities_api_spec.rb +46 -0
  244. data/spec/models/api_key_spec.rb +94 -0
  245. data/spec/models/auth_response_data_spec.rb +54 -0
  246. data/spec/models/auth_response_spec.rb +42 -0
  247. data/spec/models/change_password200_response_spec.rb +42 -0
  248. data/spec/models/change_password_request_spec.rb +42 -0
  249. data/spec/models/create_api_key201_response_data_spec.rb +42 -0
  250. data/spec/models/create_api_key201_response_spec.rb +48 -0
  251. data/spec/models/create_api_key_request_spec.rb +70 -0
  252. data/spec/models/debug_redis_test200_response_rate_limit_test_spec.rb +48 -0
  253. data/spec/models/debug_redis_test200_response_services_status_spec.rb +54 -0
  254. data/spec/models/debug_redis_test200_response_spec.rb +76 -0
  255. data/spec/models/debug_redis_test500_response_spec.rb +42 -0
  256. data/spec/models/decrypt_data200_response_data_spec.rb +54 -0
  257. data/spec/models/decrypt_data200_response_spec.rb +42 -0
  258. data/spec/models/decrypt_request_ephemeral_crypto_spec.rb +54 -0
  259. data/spec/models/decrypt_request_spec.rb +66 -0
  260. data/spec/models/encrypt_data200_response_data_ephemeral_storage_spec.rb +48 -0
  261. data/spec/models/encrypt_data200_response_data_spec.rb +66 -0
  262. data/spec/models/encrypt_data200_response_spec.rb +42 -0
  263. data/spec/models/encrypt_request_ephemeral_storage_spec.rb +48 -0
  264. data/spec/models/encrypt_request_spec.rb +64 -0
  265. data/spec/models/error_spec.rb +66 -0
  266. data/spec/models/generate_keypair201_response_spec.rb +48 -0
  267. data/spec/models/generate_keypair_request_key_policy_spec.rb +46 -0
  268. data/spec/models/generate_keypair_request_spec.rb +62 -0
  269. data/spec/models/get_api_key200_response_spec.rb +42 -0
  270. data/spec/models/get_api_key_usage200_response_data_daily_usage_inner_spec.rb +42 -0
  271. data/spec/models/get_api_key_usage200_response_data_spec.rb +48 -0
  272. data/spec/models/get_api_key_usage200_response_spec.rb +42 -0
  273. data/spec/models/get_auth_info200_response_data_spec.rb +64 -0
  274. data/spec/models/get_auth_info200_response_spec.rb +42 -0
  275. data/spec/models/get_health200_response_services_api_spec.rb +48 -0
  276. data/spec/models/get_health200_response_services_ephemeral_storage_spec.rb +36 -0
  277. data/spec/models/get_health200_response_services_redis_spec.rb +42 -0
  278. data/spec/models/get_health200_response_services_spec.rb +48 -0
  279. data/spec/models/get_health200_response_spec.rb +48 -0
  280. data/spec/models/get_rate_limit_status200_response_data_current_usage_spec.rb +48 -0
  281. data/spec/models/get_rate_limit_status200_response_data_limits_spec.rb +48 -0
  282. data/spec/models/get_rate_limit_status200_response_data_reset_times_spec.rb +48 -0
  283. data/spec/models/get_rate_limit_status200_response_data_spec.rb +48 -0
  284. data/spec/models/get_rate_limit_status200_response_spec.rb +42 -0
  285. data/spec/models/keypair_spec.rb +114 -0
  286. data/spec/models/list_api_keys200_response_data_pagination_spec.rb +48 -0
  287. data/spec/models/list_api_keys200_response_data_spec.rb +48 -0
  288. data/spec/models/list_api_keys200_response_spec.rb +42 -0
  289. data/spec/models/list_keypairs200_response_data_pagination_spec.rb +48 -0
  290. data/spec/models/list_keypairs200_response_data_spec.rb +48 -0
  291. data/spec/models/list_keypairs200_response_spec.rb +42 -0
  292. data/spec/models/login_request_spec.rb +42 -0
  293. data/spec/models/register_request_spec.rb +54 -0
  294. data/spec/models/revoke_keypair200_response_spec.rb +48 -0
  295. data/spec/models/revoke_keypair_request_spec.rb +52 -0
  296. data/spec/models/rotate_api_key200_response_data_spec.rb +42 -0
  297. data/spec/models/rotate_api_key200_response_spec.rb +48 -0
  298. data/spec/models/sign_data200_response_data_ephemeral_storage_spec.rb +48 -0
  299. data/spec/models/sign_data200_response_data_spec.rb +66 -0
  300. data/spec/models/sign_data200_response_spec.rb +42 -0
  301. data/spec/models/sign_request_ephemeral_storage_spec.rb +42 -0
  302. data/spec/models/sign_request_spec.rb +64 -0
  303. data/spec/models/update_api_key_request_spec.rb +70 -0
  304. data/spec/models/update_keypair200_response_spec.rb +42 -0
  305. data/spec/models/update_keypair_request_spec.rb +58 -0
  306. data/spec/models/user_spec.rb +70 -0
  307. data/spec/models/verify_request_spec.rb +64 -0
  308. data/spec/models/verify_signature200_response_data_signature_info_spec.rb +42 -0
  309. data/spec/models/verify_signature200_response_data_spec.rb +60 -0
  310. data/spec/models/verify_signature200_response_data_verification_result_spec.rb +48 -0
  311. data/spec/models/verify_signature200_response_spec.rb +42 -0
  312. data/spec/spec_helper.rb +111 -0
  313. metadata +477 -0
data/lib/qsafe-sdk.rb ADDED
@@ -0,0 +1,114 @@
1
+ =begin
2
+ #QSafe PQC API
3
+
4
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: rushikesh.n.kakadiya@gmail.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ # Common files
14
+ require 'qsafe-sdk/api_client'
15
+ require 'qsafe-sdk/api_error'
16
+ require 'qsafe-sdk/version'
17
+ require 'qsafe-sdk/configuration'
18
+
19
+ # Models
20
+ require 'qsafe-sdk/models/api_key'
21
+ require 'qsafe-sdk/models/auth_response'
22
+ require 'qsafe-sdk/models/auth_response_data'
23
+ require 'qsafe-sdk/models/change_password200_response'
24
+ require 'qsafe-sdk/models/change_password_request'
25
+ require 'qsafe-sdk/models/create_api_key201_response'
26
+ require 'qsafe-sdk/models/create_api_key201_response_data'
27
+ require 'qsafe-sdk/models/create_api_key_request'
28
+ require 'qsafe-sdk/models/debug_redis_test200_response'
29
+ require 'qsafe-sdk/models/debug_redis_test200_response_rate_limit_test'
30
+ require 'qsafe-sdk/models/debug_redis_test200_response_services_status'
31
+ require 'qsafe-sdk/models/debug_redis_test500_response'
32
+ require 'qsafe-sdk/models/decrypt_data200_response'
33
+ require 'qsafe-sdk/models/decrypt_data200_response_data'
34
+ require 'qsafe-sdk/models/decrypt_request'
35
+ require 'qsafe-sdk/models/decrypt_request_ephemeral_crypto'
36
+ require 'qsafe-sdk/models/encrypt_data200_response'
37
+ require 'qsafe-sdk/models/encrypt_data200_response_data'
38
+ require 'qsafe-sdk/models/encrypt_data200_response_data_ephemeral_storage'
39
+ require 'qsafe-sdk/models/encrypt_request'
40
+ require 'qsafe-sdk/models/encrypt_request_ephemeral_storage'
41
+ require 'qsafe-sdk/models/error'
42
+ require 'qsafe-sdk/models/generate_keypair201_response'
43
+ require 'qsafe-sdk/models/generate_keypair_request'
44
+ require 'qsafe-sdk/models/generate_keypair_request_key_policy'
45
+ require 'qsafe-sdk/models/get_api_key200_response'
46
+ require 'qsafe-sdk/models/get_api_key_usage200_response'
47
+ require 'qsafe-sdk/models/get_api_key_usage200_response_data'
48
+ require 'qsafe-sdk/models/get_api_key_usage200_response_data_daily_usage_inner'
49
+ require 'qsafe-sdk/models/get_auth_info200_response'
50
+ require 'qsafe-sdk/models/get_auth_info200_response_data'
51
+ require 'qsafe-sdk/models/get_health200_response'
52
+ require 'qsafe-sdk/models/get_health200_response_services'
53
+ require 'qsafe-sdk/models/get_health200_response_services_api'
54
+ require 'qsafe-sdk/models/get_health200_response_services_ephemeral_storage'
55
+ require 'qsafe-sdk/models/get_health200_response_services_redis'
56
+ require 'qsafe-sdk/models/get_rate_limit_status200_response'
57
+ require 'qsafe-sdk/models/get_rate_limit_status200_response_data'
58
+ require 'qsafe-sdk/models/get_rate_limit_status200_response_data_current_usage'
59
+ require 'qsafe-sdk/models/get_rate_limit_status200_response_data_limits'
60
+ require 'qsafe-sdk/models/get_rate_limit_status200_response_data_reset_times'
61
+ require 'qsafe-sdk/models/keypair'
62
+ require 'qsafe-sdk/models/list_api_keys200_response'
63
+ require 'qsafe-sdk/models/list_api_keys200_response_data'
64
+ require 'qsafe-sdk/models/list_api_keys200_response_data_pagination'
65
+ require 'qsafe-sdk/models/list_keypairs200_response'
66
+ require 'qsafe-sdk/models/list_keypairs200_response_data'
67
+ require 'qsafe-sdk/models/list_keypairs200_response_data_pagination'
68
+ require 'qsafe-sdk/models/login_request'
69
+ require 'qsafe-sdk/models/register_request'
70
+ require 'qsafe-sdk/models/revoke_keypair200_response'
71
+ require 'qsafe-sdk/models/revoke_keypair_request'
72
+ require 'qsafe-sdk/models/rotate_api_key200_response'
73
+ require 'qsafe-sdk/models/rotate_api_key200_response_data'
74
+ require 'qsafe-sdk/models/sign_data200_response'
75
+ require 'qsafe-sdk/models/sign_data200_response_data'
76
+ require 'qsafe-sdk/models/sign_data200_response_data_ephemeral_storage'
77
+ require 'qsafe-sdk/models/sign_request'
78
+ require 'qsafe-sdk/models/sign_request_ephemeral_storage'
79
+ require 'qsafe-sdk/models/update_api_key_request'
80
+ require 'qsafe-sdk/models/update_keypair200_response'
81
+ require 'qsafe-sdk/models/update_keypair_request'
82
+ require 'qsafe-sdk/models/user'
83
+ require 'qsafe-sdk/models/verify_request'
84
+ require 'qsafe-sdk/models/verify_signature200_response'
85
+ require 'qsafe-sdk/models/verify_signature200_response_data'
86
+ require 'qsafe-sdk/models/verify_signature200_response_data_signature_info'
87
+ require 'qsafe-sdk/models/verify_signature200_response_data_verification_result'
88
+
89
+ # APIs
90
+ require 'qsafe-sdk/api/api_keys_api'
91
+ require 'qsafe-sdk/api/authentication_api'
92
+ require 'qsafe-sdk/api/cryptographic_operations_api'
93
+ require 'qsafe-sdk/api/debug_api'
94
+ require 'qsafe-sdk/api/health_api'
95
+ require 'qsafe-sdk/api/keypairs_api'
96
+ require 'qsafe-sdk/api/utilities_api'
97
+
98
+ module QSafe
99
+ class << self
100
+ # Customize default settings for the SDK using block.
101
+ # QSafe.configure do |config|
102
+ # config.username = "xxx"
103
+ # config.password = "xxx"
104
+ # end
105
+ # If no block given, return the default Configuration object.
106
+ def configure
107
+ if block_given?
108
+ yield(Configuration.default)
109
+ else
110
+ Configuration.default
111
+ end
112
+ end
113
+ end
114
+ end
data/lib/qsafe.rb ADDED
@@ -0,0 +1,108 @@
1
+ =begin
2
+ #QSafe PQC API
3
+
4
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: rushikesh.n.kakadiya@gmail.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ # Common files
14
+ require 'qsafe/api_client'
15
+ require 'qsafe/api_error'
16
+ require 'qsafe/version'
17
+ require 'qsafe/configuration'
18
+
19
+ # Models
20
+ require 'qsafe/models/api_key'
21
+ require 'qsafe/models/auth_response'
22
+ require 'qsafe/models/auth_response_data'
23
+ require 'qsafe/models/change_password200_response'
24
+ require 'qsafe/models/change_password_request'
25
+ require 'qsafe/models/create_api_key201_response'
26
+ require 'qsafe/models/create_api_key_request'
27
+ require 'qsafe/models/debug_redis_test200_response'
28
+ require 'qsafe/models/debug_redis_test200_response_rate_limit_test'
29
+ require 'qsafe/models/debug_redis_test200_response_services_status'
30
+ require 'qsafe/models/debug_redis_test500_response'
31
+ require 'qsafe/models/decrypt_data200_response'
32
+ require 'qsafe/models/decrypt_data200_response_data'
33
+ require 'qsafe/models/decrypt_request'
34
+ require 'qsafe/models/decrypt_request_ephemeral_crypto'
35
+ require 'qsafe/models/encrypt_data200_response'
36
+ require 'qsafe/models/encrypt_data200_response_data'
37
+ require 'qsafe/models/encrypt_request'
38
+ require 'qsafe/models/encrypt_request_ephemeral_storage'
39
+ require 'qsafe/models/error'
40
+ require 'qsafe/models/generate_keypair201_response'
41
+ require 'qsafe/models/generate_keypair_request'
42
+ require 'qsafe/models/generate_keypair_request_key_policy'
43
+ require 'qsafe/models/get_api_key200_response'
44
+ require 'qsafe/models/get_api_key_usage200_response'
45
+ require 'qsafe/models/get_api_key_usage200_response_data'
46
+ require 'qsafe/models/get_api_key_usage200_response_data_daily_usage_inner'
47
+ require 'qsafe/models/get_auth_info200_response'
48
+ require 'qsafe/models/get_auth_info200_response_data'
49
+ require 'qsafe/models/get_health200_response'
50
+ require 'qsafe/models/get_health200_response_services'
51
+ require 'qsafe/models/get_health200_response_services_api'
52
+ require 'qsafe/models/get_health200_response_services_ephemeral_storage'
53
+ require 'qsafe/models/get_health200_response_services_redis'
54
+ require 'qsafe/models/get_rate_limit_status200_response'
55
+ require 'qsafe/models/get_rate_limit_status200_response_data'
56
+ require 'qsafe/models/get_rate_limit_status200_response_data_current_usage'
57
+ require 'qsafe/models/get_rate_limit_status200_response_data_limits'
58
+ require 'qsafe/models/get_rate_limit_status200_response_data_reset_times'
59
+ require 'qsafe/models/keypair'
60
+ require 'qsafe/models/list_api_keys200_response'
61
+ require 'qsafe/models/list_api_keys200_response_data'
62
+ require 'qsafe/models/list_api_keys200_response_data_pagination'
63
+ require 'qsafe/models/list_keypairs200_response'
64
+ require 'qsafe/models/list_keypairs200_response_data'
65
+ require 'qsafe/models/list_keypairs200_response_data_pagination'
66
+ require 'qsafe/models/login_request'
67
+ require 'qsafe/models/register_request'
68
+ require 'qsafe/models/revoke_keypair200_response'
69
+ require 'qsafe/models/revoke_keypair_request'
70
+ require 'qsafe/models/rotate_api_key200_response'
71
+ require 'qsafe/models/sign_data200_response'
72
+ require 'qsafe/models/sign_data200_response_data'
73
+ require 'qsafe/models/sign_request'
74
+ require 'qsafe/models/sign_request_ephemeral_storage'
75
+ require 'qsafe/models/update_api_key_request'
76
+ require 'qsafe/models/update_keypair200_response'
77
+ require 'qsafe/models/update_keypair_request'
78
+ require 'qsafe/models/user'
79
+ require 'qsafe/models/verify_request'
80
+ require 'qsafe/models/verify_signature200_response'
81
+ require 'qsafe/models/verify_signature200_response_data'
82
+
83
+ # APIs
84
+ require 'qsafe/api/api_keys_api'
85
+ require 'qsafe/api/authentication_api'
86
+ require 'qsafe/api/cryptographic_operations_api'
87
+ require 'qsafe/api/debug_api'
88
+ require 'qsafe/api/health_api'
89
+ require 'qsafe/api/keypairs_api'
90
+ require 'qsafe/api/utilities_api'
91
+
92
+ module QSafe
93
+ class << self
94
+ # Customize default settings for the SDK using block.
95
+ # QSafe.configure do |config|
96
+ # config.username = "xxx"
97
+ # config.password = "xxx"
98
+ # end
99
+ # If no block given, return the default Configuration object.
100
+ def configure
101
+ if block_given?
102
+ yield(Configuration.default)
103
+ else
104
+ Configuration.default
105
+ end
106
+ end
107
+ end
108
+ end
data/qsafe-sdk.gemspec ADDED
@@ -0,0 +1,39 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ =begin
4
+ #QSafe PQC API
5
+
6
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Contact: rushikesh.n.kakadiya@gmail.com
10
+ Generated by: https://openapi-generator.tech
11
+ Generator version: 7.9.0
12
+
13
+ =end
14
+
15
+ $:.push File.expand_path("../lib", __FILE__)
16
+ require "qsafe-sdk/version"
17
+
18
+ Gem::Specification.new do |s|
19
+ s.name = "qsafe-sdk"
20
+ s.version = QSafe::VERSION
21
+ s.platform = Gem::Platform::RUBY
22
+ s.authors = ["OpenAPI-Generator"]
23
+ s.email = ["rushikesh.n.kakadiya@gmail.com"]
24
+ s.homepage = "https://openapi-generator.tech"
25
+ s.summary = "QSafe PQC API Ruby Gem"
26
+ s.description = "Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID "
27
+ s.license = "MIT"
28
+ s.required_ruby_version = ">= 2.7"
29
+ s.metadata = {}
30
+
31
+ s.add_runtime_dependency 'typhoeus', '~> 1.0', '>= 1.0.1'
32
+
33
+ s.add_development_dependency 'rspec', '~> 3.6', '>= 3.6.0'
34
+
35
+ s.files = `find *`.split("\n").uniq.sort.select { |f| !f.empty? }
36
+ s.test_files = `find spec/*`.split("\n")
37
+ s.executables = []
38
+ s.require_paths = ["lib"]
39
+ end
data/qsafe.gemspec ADDED
@@ -0,0 +1,39 @@
1
+ # -*- encoding: utf-8 -*-
2
+
3
+ =begin
4
+ #QSafe PQC API
5
+
6
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
7
+
8
+ The version of the OpenAPI document: 1.0.0
9
+ Contact: rushikesh.n.kakadiya@gmail.com
10
+ Generated by: https://openapi-generator.tech
11
+ Generator version: 7.9.0
12
+
13
+ =end
14
+
15
+ $:.push File.expand_path("../lib", __FILE__)
16
+ require "qsafe/version"
17
+
18
+ Gem::Specification.new do |s|
19
+ s.name = "qsafe"
20
+ s.version = QSafe::VERSION
21
+ s.platform = Gem::Platform::RUBY
22
+ s.authors = ["OpenAPI-Generator"]
23
+ s.email = ["rushikesh.n.kakadiya@gmail.com"]
24
+ s.homepage = "https://openapi-generator.tech"
25
+ s.summary = "QSafe PQC API Ruby Gem"
26
+ s.description = "Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID "
27
+ s.license = "MIT"
28
+ s.required_ruby_version = ">= 2.7"
29
+ s.metadata = {}
30
+
31
+ s.add_runtime_dependency 'typhoeus', '~> 1.0', '>= 1.0.1'
32
+
33
+ s.add_development_dependency 'rspec', '~> 3.6', '>= 3.6.0'
34
+
35
+ s.files = `find *`.split("\n").uniq.sort.select { |f| !f.empty? }
36
+ s.test_files = `find spec/*`.split("\n")
37
+ s.executables = []
38
+ s.require_paths = ["lib"]
39
+ end
@@ -0,0 +1,105 @@
1
+ =begin
2
+ #QSafe PQC API
3
+
4
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@qsafeapi.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for QSafe::APIKeysApi
17
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
18
+ # Please update as you see appropriate
19
+ describe 'APIKeysApi' do
20
+ before do
21
+ # run before each test
22
+ @api_instance = QSafe::APIKeysApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of APIKeysApi' do
30
+ it 'should create an instance of APIKeysApi' do
31
+ expect(@api_instance).to be_instance_of(QSafe::APIKeysApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for create_api_key
36
+ # Create API key (JWT only)
37
+ # @param create_api_key_request
38
+ # @param [Hash] opts the optional parameters
39
+ # @return [CreateApiKey201Response]
40
+ describe 'create_api_key test' do
41
+ it 'should work' do
42
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
43
+ end
44
+ end
45
+
46
+ # unit tests for get_api_key
47
+ # Get API key details (JWT only)
48
+ # @param key_id API key identifier
49
+ # @param [Hash] opts the optional parameters
50
+ # @return [GetApiKey200Response]
51
+ describe 'get_api_key test' do
52
+ it 'should work' do
53
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
54
+ end
55
+ end
56
+
57
+ # unit tests for get_api_key_usage
58
+ # Get API key usage stats (JWT only)
59
+ # @param key_id API key identifier
60
+ # @param [Hash] opts the optional parameters
61
+ # @option opts [String] :time_range
62
+ # @return [GetApiKeyUsage200Response]
63
+ describe 'get_api_key_usage test' do
64
+ it 'should work' do
65
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
66
+ end
67
+ end
68
+
69
+ # unit tests for list_api_keys
70
+ # List API keys (JWT only)
71
+ # @param [Hash] opts the optional parameters
72
+ # @option opts [Integer] :page
73
+ # @option opts [Integer] :limit
74
+ # @option opts [String] :status
75
+ # @return [ListApiKeys200Response]
76
+ describe 'list_api_keys test' do
77
+ it 'should work' do
78
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
79
+ end
80
+ end
81
+
82
+ # unit tests for rotate_api_key
83
+ # Rotate API key — generates new key value (JWT only)
84
+ # @param key_id API key identifier
85
+ # @param [Hash] opts the optional parameters
86
+ # @return [RotateApiKey200Response]
87
+ describe 'rotate_api_key test' do
88
+ it 'should work' do
89
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
90
+ end
91
+ end
92
+
93
+ # unit tests for update_api_key
94
+ # Update API key (JWT only)
95
+ # @param key_id API key identifier
96
+ # @param update_api_key_request
97
+ # @param [Hash] opts the optional parameters
98
+ # @return [GetApiKey200Response]
99
+ describe 'update_api_key test' do
100
+ it 'should work' do
101
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
102
+ end
103
+ end
104
+
105
+ end
@@ -0,0 +1,78 @@
1
+ =begin
2
+ #QSafe PQC API
3
+
4
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@qsafeapi.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for QSafe::AuthenticationApi
17
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
18
+ # Please update as you see appropriate
19
+ describe 'AuthenticationApi' do
20
+ before do
21
+ # run before each test
22
+ @api_instance = QSafe::AuthenticationApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of AuthenticationApi' do
30
+ it 'should create an instance of AuthenticationApi' do
31
+ expect(@api_instance).to be_instance_of(QSafe::AuthenticationApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for change_password
36
+ # Change password (JWT only)
37
+ # @param change_password_request
38
+ # @param [Hash] opts the optional parameters
39
+ # @return [ChangePassword200Response]
40
+ describe 'change_password test' do
41
+ it 'should work' do
42
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
43
+ end
44
+ end
45
+
46
+ # unit tests for get_auth_info
47
+ # Get current auth context (JWT or API key)
48
+ # @param [Hash] opts the optional parameters
49
+ # @return [GetAuthInfo200Response]
50
+ describe 'get_auth_info test' do
51
+ it 'should work' do
52
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
53
+ end
54
+ end
55
+
56
+ # unit tests for login_user
57
+ # Login and get JWT token
58
+ # @param login_request
59
+ # @param [Hash] opts the optional parameters
60
+ # @return [AuthResponse]
61
+ describe 'login_user test' do
62
+ it 'should work' do
63
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
64
+ end
65
+ end
66
+
67
+ # unit tests for register_user
68
+ # Register a new user
69
+ # @param register_request
70
+ # @param [Hash] opts the optional parameters
71
+ # @return [AuthResponse]
72
+ describe 'register_user test' do
73
+ it 'should work' do
74
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
75
+ end
76
+ end
77
+
78
+ end
@@ -0,0 +1,85 @@
1
+ =begin
2
+ #QSafe PQC API
3
+
4
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@qsafeapi.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for QSafe::CryptographicOperationsApi
17
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
18
+ # Please update as you see appropriate
19
+ describe 'CryptographicOperationsApi' do
20
+ before do
21
+ # run before each test
22
+ @api_instance = QSafe::CryptographicOperationsApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of CryptographicOperationsApi' do
30
+ it 'should create an instance of CryptographicOperationsApi' do
31
+ expect(@api_instance).to be_instance_of(QSafe::CryptographicOperationsApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for decrypt_data
36
+ # Decrypt data with a keypair&#39;s private key
37
+ # @param keypair_id UUID v4 keypair identifier
38
+ # @param decrypt_request
39
+ # @param [Hash] opts the optional parameters
40
+ # @return [DecryptData200Response]
41
+ describe 'decrypt_data test' do
42
+ it 'should work' do
43
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
44
+ end
45
+ end
46
+
47
+ # unit tests for encrypt_data
48
+ # Encrypt data with a keypair&#39;s public key
49
+ # Uses ML-KEM (Kyber). The keypair must use a &#x60;KYBER*&#x60; algorithm. Optionally stores result in ephemeral storage and returns an &#x60;ephemeral_id&#x60; for later decryption without passing raw ciphertext.
50
+ # @param keypair_id UUID v4 keypair identifier
51
+ # @param encrypt_request
52
+ # @param [Hash] opts the optional parameters
53
+ # @return [EncryptData200Response]
54
+ describe 'encrypt_data test' do
55
+ it 'should work' do
56
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
57
+ end
58
+ end
59
+
60
+ # unit tests for sign_data
61
+ # Sign data with a keypair&#39;s private key
62
+ # Uses ML-DSA (Dilithium). The keypair must use a &#x60;DILITHIUM*&#x60; algorithm.
63
+ # @param keypair_id UUID v4 keypair identifier
64
+ # @param sign_request
65
+ # @param [Hash] opts the optional parameters
66
+ # @return [SignData200Response]
67
+ describe 'sign_data test' do
68
+ it 'should work' do
69
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
70
+ end
71
+ end
72
+
73
+ # unit tests for verify_signature
74
+ # Verify a signature
75
+ # @param keypair_id UUID v4 keypair identifier
76
+ # @param verify_request
77
+ # @param [Hash] opts the optional parameters
78
+ # @return [VerifySignature200Response]
79
+ describe 'verify_signature test' do
80
+ it 'should work' do
81
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
82
+ end
83
+ end
84
+
85
+ end
@@ -0,0 +1,46 @@
1
+ =begin
2
+ #QSafe PQC API
3
+
4
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@qsafeapi.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for QSafe::DebugApi
17
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
18
+ # Please update as you see appropriate
19
+ describe 'DebugApi' do
20
+ before do
21
+ # run before each test
22
+ @api_instance = QSafe::DebugApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of DebugApi' do
30
+ it 'should create an instance of DebugApi' do
31
+ expect(@api_instance).to be_instance_of(QSafe::DebugApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for debug_redis_test
36
+ # Test Redis and internal services
37
+ # ⚠️ Disable in production. Tests Redis connectivity and all enhanced services.
38
+ # @param [Hash] opts the optional parameters
39
+ # @return [DebugRedisTest200Response]
40
+ describe 'debug_redis_test test' do
41
+ it 'should work' do
42
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
43
+ end
44
+ end
45
+
46
+ end
@@ -0,0 +1,46 @@
1
+ =begin
2
+ #QSafe PQC API
3
+
4
+ #Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms. Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify). ## Authentication - **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register` - **API Key (header)** — programmatic access via `X-API-Key` header - **API Key (query)** — programmatic access via `?api_key=` query parameter ## Quick Start 1. Register → `POST /auth/register` 2. Login → `POST /auth/login` → copy `data.token` 3. Generate keypair → `POST /generate-keypair` 4. Encrypt / Sign with the keypair ID
5
+
6
+ The version of the OpenAPI document: 1.0.0
7
+ Contact: support@qsafeapi.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.9.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+
16
+ # Unit tests for QSafe::HealthApi
17
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
18
+ # Please update as you see appropriate
19
+ describe 'HealthApi' do
20
+ before do
21
+ # run before each test
22
+ @api_instance = QSafe::HealthApi.new
23
+ end
24
+
25
+ after do
26
+ # run after each test
27
+ end
28
+
29
+ describe 'test an instance of HealthApi' do
30
+ it 'should create an instance of HealthApi' do
31
+ expect(@api_instance).to be_instance_of(QSafe::HealthApi)
32
+ end
33
+ end
34
+
35
+ # unit tests for get_health
36
+ # Health check
37
+ # Returns status of all internal services (Redis, ephemeral storage, API).
38
+ # @param [Hash] opts the optional parameters
39
+ # @return [GetHealth200Response]
40
+ describe 'get_health test' do
41
+ it 'should work' do
42
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
43
+ end
44
+ end
45
+
46
+ end