qsafe-sdk 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of qsafe-sdk might be problematic. Click here for more details.
- checksums.yaml +7 -0
- data/Gemfile +9 -0
- data/README.md +210 -0
- data/Rakefile +10 -0
- data/docs/APIKeysApi.md +427 -0
- data/docs/ApiKey.md +36 -0
- data/docs/AuthResponse.md +20 -0
- data/docs/AuthResponseData.md +24 -0
- data/docs/AuthenticationApi.md +276 -0
- data/docs/ChangePassword200Response.md +20 -0
- data/docs/ChangePasswordRequest.md +20 -0
- data/docs/CreateApiKey201Response.md +22 -0
- data/docs/CreateApiKeyRequest.md +28 -0
- data/docs/CryptographicOperationsApi.md +331 -0
- data/docs/DebugApi.md +84 -0
- data/docs/DebugRedisTest200Response.md +30 -0
- data/docs/DebugRedisTest200ResponseRateLimitTest.md +22 -0
- data/docs/DebugRedisTest200ResponseServicesStatus.md +24 -0
- data/docs/DebugRedisTest500Response.md +20 -0
- data/docs/DecryptData200Response.md +20 -0
- data/docs/DecryptData200ResponseData.md +24 -0
- data/docs/DecryptRequest.md +28 -0
- data/docs/DecryptRequestEphemeralCrypto.md +24 -0
- data/docs/EncryptData200Response.md +20 -0
- data/docs/EncryptData200ResponseData.md +28 -0
- data/docs/EncryptRequest.md +26 -0
- data/docs/EncryptRequestEphemeralStorage.md +22 -0
- data/docs/Error.md +28 -0
- data/docs/GenerateKeypair201Response.md +22 -0
- data/docs/GenerateKeypairRequest.md +24 -0
- data/docs/GenerateKeypairRequestKeyPolicy.md +20 -0
- data/docs/GetApiKey200Response.md +20 -0
- data/docs/GetApiKeyUsage200Response.md +20 -0
- data/docs/GetApiKeyUsage200ResponseData.md +22 -0
- data/docs/GetApiKeyUsage200ResponseDataDailyUsageInner.md +20 -0
- data/docs/GetAuthInfo200Response.md +20 -0
- data/docs/GetAuthInfo200ResponseData.md +26 -0
- data/docs/GetHealth200Response.md +22 -0
- data/docs/GetHealth200ResponseServices.md +22 -0
- data/docs/GetHealth200ResponseServicesApi.md +22 -0
- data/docs/GetHealth200ResponseServicesEphemeralStorage.md +18 -0
- data/docs/GetHealth200ResponseServicesRedis.md +20 -0
- data/docs/GetRateLimitStatus200Response.md +20 -0
- data/docs/GetRateLimitStatus200ResponseData.md +22 -0
- data/docs/GetRateLimitStatus200ResponseDataCurrentUsage.md +22 -0
- data/docs/GetRateLimitStatus200ResponseDataLimits.md +22 -0
- data/docs/GetRateLimitStatus200ResponseDataResetTimes.md +22 -0
- data/docs/HealthApi.md +69 -0
- data/docs/Keypair.md +40 -0
- data/docs/KeypairsApi.md +341 -0
- data/docs/ListApiKeys200Response.md +20 -0
- data/docs/ListApiKeys200ResponseData.md +22 -0
- data/docs/ListApiKeys200ResponseDataPagination.md +22 -0
- data/docs/ListKeypairs200Response.md +20 -0
- data/docs/ListKeypairs200ResponseData.md +22 -0
- data/docs/ListKeypairs200ResponseDataPagination.md +22 -0
- data/docs/LoginRequest.md +20 -0
- data/docs/RegisterRequest.md +24 -0
- data/docs/RevokeKeypair200Response.md +22 -0
- data/docs/RevokeKeypairRequest.md +22 -0
- data/docs/RotateApiKey200Response.md +22 -0
- data/docs/SignData200Response.md +20 -0
- data/docs/SignData200ResponseData.md +28 -0
- data/docs/SignRequest.md +26 -0
- data/docs/SignRequestEphemeralStorage.md +20 -0
- data/docs/UpdateApiKeyRequest.md +28 -0
- data/docs/UpdateKeypair200Response.md +20 -0
- data/docs/UpdateKeypairRequest.md +24 -0
- data/docs/User.md +28 -0
- data/docs/UtilitiesApi.md +81 -0
- data/docs/VerifyRequest.md +26 -0
- data/docs/VerifySignature200Response.md +20 -0
- data/docs/VerifySignature200ResponseData.md +26 -0
- data/git_push.sh +57 -0
- data/lib/qsafe/api/api_keys_api.rb +430 -0
- data/lib/qsafe/api/authentication_api.rb +275 -0
- data/lib/qsafe/api/cryptographic_operations_api.rb +314 -0
- data/lib/qsafe/api/debug_api.rb +79 -0
- data/lib/qsafe/api/health_api.rb +79 -0
- data/lib/qsafe/api/keypairs_api.rb +345 -0
- data/lib/qsafe/api/utilities_api.rb +79 -0
- data/lib/qsafe/api_client.rb +394 -0
- data/lib/qsafe/api_error.rb +58 -0
- data/lib/qsafe/configuration.rb +327 -0
- data/lib/qsafe/models/api_key.rb +325 -0
- data/lib/qsafe/models/auth_response.rb +223 -0
- data/lib/qsafe/models/auth_response_data.rb +242 -0
- data/lib/qsafe/models/change_password200_response.rb +223 -0
- data/lib/qsafe/models/change_password_request.rb +256 -0
- data/lib/qsafe/models/create_api_key201_response.rb +233 -0
- data/lib/qsafe/models/create_api_key_request.rb +350 -0
- data/lib/qsafe/models/debug_redis_test200_response.rb +304 -0
- data/lib/qsafe/models/debug_redis_test200_response_rate_limit_test.rb +232 -0
- data/lib/qsafe/models/debug_redis_test200_response_services_status.rb +241 -0
- data/lib/qsafe/models/debug_redis_test500_response.rb +223 -0
- data/lib/qsafe/models/decrypt_data200_response.rb +223 -0
- data/lib/qsafe/models/decrypt_data200_response_data.rb +242 -0
- data/lib/qsafe/models/decrypt_request.rb +301 -0
- data/lib/qsafe/models/decrypt_request_ephemeral_crypto.rb +276 -0
- data/lib/qsafe/models/encrypt_data200_response.rb +223 -0
- data/lib/qsafe/models/encrypt_data200_response_data.rb +263 -0
- data/lib/qsafe/models/encrypt_request.rb +322 -0
- data/lib/qsafe/models/encrypt_request_ephemeral_storage.rb +289 -0
- data/lib/qsafe/models/error.rb +275 -0
- data/lib/qsafe/models/generate_keypair201_response.rb +233 -0
- data/lib/qsafe/models/generate_keypair_request.rb +297 -0
- data/lib/qsafe/models/generate_keypair_request_key_policy.rb +266 -0
- data/lib/qsafe/models/get_api_key200_response.rb +223 -0
- data/lib/qsafe/models/get_api_key_usage200_response.rb +223 -0
- data/lib/qsafe/models/get_api_key_usage200_response_data.rb +236 -0
- data/lib/qsafe/models/get_api_key_usage200_response_data_daily_usage_inner.rb +223 -0
- data/lib/qsafe/models/get_auth_info200_response.rb +223 -0
- data/lib/qsafe/models/get_auth_info200_response_data.rb +284 -0
- data/lib/qsafe/models/get_health200_response.rb +232 -0
- data/lib/qsafe/models/get_health200_response_services.rb +232 -0
- data/lib/qsafe/models/get_health200_response_services_api.rb +232 -0
- data/lib/qsafe/models/get_health200_response_services_ephemeral_storage.rb +214 -0
- data/lib/qsafe/models/get_health200_response_services_redis.rb +223 -0
- data/lib/qsafe/models/get_rate_limit_status200_response.rb +223 -0
- data/lib/qsafe/models/get_rate_limit_status200_response_data.rb +232 -0
- data/lib/qsafe/models/get_rate_limit_status200_response_data_current_usage.rb +232 -0
- data/lib/qsafe/models/get_rate_limit_status200_response_data_limits.rb +232 -0
- data/lib/qsafe/models/get_rate_limit_status200_response_data_reset_times.rb +232 -0
- data/lib/qsafe/models/keypair.rb +379 -0
- data/lib/qsafe/models/list_api_keys200_response.rb +223 -0
- data/lib/qsafe/models/list_api_keys200_response_data.rb +234 -0
- data/lib/qsafe/models/list_api_keys200_response_data_pagination.rb +232 -0
- data/lib/qsafe/models/list_keypairs200_response.rb +223 -0
- data/lib/qsafe/models/list_keypairs200_response_data.rb +234 -0
- data/lib/qsafe/models/list_keypairs200_response_data_pagination.rb +232 -0
- data/lib/qsafe/models/login_request.rb +237 -0
- data/lib/qsafe/models/register_request.rb +345 -0
- data/lib/qsafe/models/revoke_keypair200_response.rb +232 -0
- data/lib/qsafe/models/revoke_keypair_request.rb +301 -0
- data/lib/qsafe/models/rotate_api_key200_response.rb +232 -0
- data/lib/qsafe/models/sign_data200_response.rb +223 -0
- data/lib/qsafe/models/sign_data200_response_data.rb +262 -0
- data/lib/qsafe/models/sign_request.rb +321 -0
- data/lib/qsafe/models/sign_request_ephemeral_storage.rb +279 -0
- data/lib/qsafe/models/update_api_key_request.rb +343 -0
- data/lib/qsafe/models/update_keypair200_response.rb +223 -0
- data/lib/qsafe/models/update_keypair_request.rb +317 -0
- data/lib/qsafe/models/user.rb +293 -0
- data/lib/qsafe/models/verify_request.rb +389 -0
- data/lib/qsafe/models/verify_signature200_response.rb +223 -0
- data/lib/qsafe/models/verify_signature200_response_data.rb +251 -0
- data/lib/qsafe/version.rb +15 -0
- data/lib/qsafe-sdk/api/api_keys_api.rb +430 -0
- data/lib/qsafe-sdk/api/authentication_api.rb +275 -0
- data/lib/qsafe-sdk/api/cryptographic_operations_api.rb +314 -0
- data/lib/qsafe-sdk/api/debug_api.rb +79 -0
- data/lib/qsafe-sdk/api/health_api.rb +79 -0
- data/lib/qsafe-sdk/api/keypairs_api.rb +345 -0
- data/lib/qsafe-sdk/api/utilities_api.rb +79 -0
- data/lib/qsafe-sdk/api_client.rb +394 -0
- data/lib/qsafe-sdk/api_error.rb +58 -0
- data/lib/qsafe-sdk/configuration.rb +327 -0
- data/lib/qsafe-sdk/models/api_key.rb +325 -0
- data/lib/qsafe-sdk/models/auth_response.rb +223 -0
- data/lib/qsafe-sdk/models/auth_response_data.rb +242 -0
- data/lib/qsafe-sdk/models/change_password200_response.rb +223 -0
- data/lib/qsafe-sdk/models/change_password_request.rb +256 -0
- data/lib/qsafe-sdk/models/create_api_key201_response.rb +233 -0
- data/lib/qsafe-sdk/models/create_api_key_request.rb +350 -0
- data/lib/qsafe-sdk/models/debug_redis_test200_response.rb +304 -0
- data/lib/qsafe-sdk/models/debug_redis_test200_response_rate_limit_test.rb +232 -0
- data/lib/qsafe-sdk/models/debug_redis_test200_response_services_status.rb +241 -0
- data/lib/qsafe-sdk/models/debug_redis_test500_response.rb +223 -0
- data/lib/qsafe-sdk/models/decrypt_data200_response.rb +223 -0
- data/lib/qsafe-sdk/models/decrypt_data200_response_data.rb +242 -0
- data/lib/qsafe-sdk/models/decrypt_request.rb +301 -0
- data/lib/qsafe-sdk/models/decrypt_request_ephemeral_crypto.rb +276 -0
- data/lib/qsafe-sdk/models/encrypt_data200_response.rb +223 -0
- data/lib/qsafe-sdk/models/encrypt_data200_response_data.rb +263 -0
- data/lib/qsafe-sdk/models/encrypt_request.rb +322 -0
- data/lib/qsafe-sdk/models/encrypt_request_ephemeral_storage.rb +289 -0
- data/lib/qsafe-sdk/models/error.rb +275 -0
- data/lib/qsafe-sdk/models/generate_keypair201_response.rb +233 -0
- data/lib/qsafe-sdk/models/generate_keypair_request.rb +297 -0
- data/lib/qsafe-sdk/models/generate_keypair_request_key_policy.rb +266 -0
- data/lib/qsafe-sdk/models/get_api_key200_response.rb +223 -0
- data/lib/qsafe-sdk/models/get_api_key_usage200_response.rb +223 -0
- data/lib/qsafe-sdk/models/get_api_key_usage200_response_data.rb +236 -0
- data/lib/qsafe-sdk/models/get_api_key_usage200_response_data_daily_usage_inner.rb +223 -0
- data/lib/qsafe-sdk/models/get_auth_info200_response.rb +223 -0
- data/lib/qsafe-sdk/models/get_auth_info200_response_data.rb +284 -0
- data/lib/qsafe-sdk/models/get_health200_response.rb +232 -0
- data/lib/qsafe-sdk/models/get_health200_response_services.rb +232 -0
- data/lib/qsafe-sdk/models/get_health200_response_services_api.rb +232 -0
- data/lib/qsafe-sdk/models/get_health200_response_services_ephemeral_storage.rb +214 -0
- data/lib/qsafe-sdk/models/get_health200_response_services_redis.rb +223 -0
- data/lib/qsafe-sdk/models/get_rate_limit_status200_response.rb +223 -0
- data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data.rb +232 -0
- data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data_current_usage.rb +232 -0
- data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data_limits.rb +232 -0
- data/lib/qsafe-sdk/models/get_rate_limit_status200_response_data_reset_times.rb +232 -0
- data/lib/qsafe-sdk/models/keypair.rb +379 -0
- data/lib/qsafe-sdk/models/list_api_keys200_response.rb +223 -0
- data/lib/qsafe-sdk/models/list_api_keys200_response_data.rb +234 -0
- data/lib/qsafe-sdk/models/list_api_keys200_response_data_pagination.rb +232 -0
- data/lib/qsafe-sdk/models/list_keypairs200_response.rb +223 -0
- data/lib/qsafe-sdk/models/list_keypairs200_response_data.rb +234 -0
- data/lib/qsafe-sdk/models/list_keypairs200_response_data_pagination.rb +232 -0
- data/lib/qsafe-sdk/models/login_request.rb +237 -0
- data/lib/qsafe-sdk/models/register_request.rb +345 -0
- data/lib/qsafe-sdk/models/revoke_keypair200_response.rb +232 -0
- data/lib/qsafe-sdk/models/revoke_keypair_request.rb +301 -0
- data/lib/qsafe-sdk/models/rotate_api_key200_response.rb +232 -0
- data/lib/qsafe-sdk/models/sign_data200_response.rb +223 -0
- data/lib/qsafe-sdk/models/sign_data200_response_data.rb +262 -0
- data/lib/qsafe-sdk/models/sign_request.rb +321 -0
- data/lib/qsafe-sdk/models/sign_request_ephemeral_storage.rb +279 -0
- data/lib/qsafe-sdk/models/update_api_key_request.rb +343 -0
- data/lib/qsafe-sdk/models/update_keypair200_response.rb +223 -0
- data/lib/qsafe-sdk/models/update_keypair_request.rb +317 -0
- data/lib/qsafe-sdk/models/user.rb +293 -0
- data/lib/qsafe-sdk/models/verify_request.rb +389 -0
- data/lib/qsafe-sdk/models/verify_signature200_response.rb +223 -0
- data/lib/qsafe-sdk/models/verify_signature200_response_data.rb +251 -0
- data/lib/qsafe-sdk/version.rb +15 -0
- data/lib/qsafe-sdk.rb +108 -0
- data/lib/qsafe.rb +108 -0
- data/qsafe-sdk.gemspec +39 -0
- data/qsafe.gemspec +39 -0
- data/spec/api/api_keys_api_spec.rb +105 -0
- data/spec/api/authentication_api_spec.rb +78 -0
- data/spec/api/cryptographic_operations_api_spec.rb +85 -0
- data/spec/api/debug_api_spec.rb +46 -0
- data/spec/api/health_api_spec.rb +46 -0
- data/spec/api/keypairs_api_spec.rb +89 -0
- data/spec/api/utilities_api_spec.rb +46 -0
- data/spec/models/api_key_spec.rb +94 -0
- data/spec/models/auth_response_data_spec.rb +54 -0
- data/spec/models/auth_response_spec.rb +42 -0
- data/spec/models/change_password200_response_spec.rb +42 -0
- data/spec/models/change_password_request_spec.rb +42 -0
- data/spec/models/create_api_key201_response_spec.rb +48 -0
- data/spec/models/create_api_key_request_spec.rb +70 -0
- data/spec/models/debug_redis_test200_response_rate_limit_test_spec.rb +48 -0
- data/spec/models/debug_redis_test200_response_services_status_spec.rb +54 -0
- data/spec/models/debug_redis_test200_response_spec.rb +76 -0
- data/spec/models/debug_redis_test500_response_spec.rb +42 -0
- data/spec/models/decrypt_data200_response_data_spec.rb +54 -0
- data/spec/models/decrypt_data200_response_spec.rb +42 -0
- data/spec/models/decrypt_request_ephemeral_crypto_spec.rb +54 -0
- data/spec/models/decrypt_request_spec.rb +66 -0
- data/spec/models/encrypt_data200_response_data_spec.rb +66 -0
- data/spec/models/encrypt_data200_response_spec.rb +42 -0
- data/spec/models/encrypt_request_ephemeral_storage_spec.rb +48 -0
- data/spec/models/encrypt_request_spec.rb +64 -0
- data/spec/models/error_spec.rb +66 -0
- data/spec/models/generate_keypair201_response_spec.rb +48 -0
- data/spec/models/generate_keypair_request_key_policy_spec.rb +46 -0
- data/spec/models/generate_keypair_request_spec.rb +62 -0
- data/spec/models/get_api_key200_response_spec.rb +42 -0
- data/spec/models/get_api_key_usage200_response_data_daily_usage_inner_spec.rb +42 -0
- data/spec/models/get_api_key_usage200_response_data_spec.rb +48 -0
- data/spec/models/get_api_key_usage200_response_spec.rb +42 -0
- data/spec/models/get_auth_info200_response_data_spec.rb +64 -0
- data/spec/models/get_auth_info200_response_spec.rb +42 -0
- data/spec/models/get_health200_response_services_api_spec.rb +48 -0
- data/spec/models/get_health200_response_services_ephemeral_storage_spec.rb +36 -0
- data/spec/models/get_health200_response_services_redis_spec.rb +42 -0
- data/spec/models/get_health200_response_services_spec.rb +48 -0
- data/spec/models/get_health200_response_spec.rb +48 -0
- data/spec/models/get_rate_limit_status200_response_data_current_usage_spec.rb +48 -0
- data/spec/models/get_rate_limit_status200_response_data_limits_spec.rb +48 -0
- data/spec/models/get_rate_limit_status200_response_data_reset_times_spec.rb +48 -0
- data/spec/models/get_rate_limit_status200_response_data_spec.rb +48 -0
- data/spec/models/get_rate_limit_status200_response_spec.rb +42 -0
- data/spec/models/keypair_spec.rb +114 -0
- data/spec/models/list_api_keys200_response_data_pagination_spec.rb +48 -0
- data/spec/models/list_api_keys200_response_data_spec.rb +48 -0
- data/spec/models/list_api_keys200_response_spec.rb +42 -0
- data/spec/models/list_keypairs200_response_data_pagination_spec.rb +48 -0
- data/spec/models/list_keypairs200_response_data_spec.rb +48 -0
- data/spec/models/list_keypairs200_response_spec.rb +42 -0
- data/spec/models/login_request_spec.rb +42 -0
- data/spec/models/register_request_spec.rb +54 -0
- data/spec/models/revoke_keypair200_response_spec.rb +48 -0
- data/spec/models/revoke_keypair_request_spec.rb +52 -0
- data/spec/models/rotate_api_key200_response_spec.rb +48 -0
- data/spec/models/sign_data200_response_data_spec.rb +66 -0
- data/spec/models/sign_data200_response_spec.rb +42 -0
- data/spec/models/sign_request_ephemeral_storage_spec.rb +42 -0
- data/spec/models/sign_request_spec.rb +64 -0
- data/spec/models/update_api_key_request_spec.rb +70 -0
- data/spec/models/update_keypair200_response_spec.rb +42 -0
- data/spec/models/update_keypair_request_spec.rb +58 -0
- data/spec/models/user_spec.rb +70 -0
- data/spec/models/verify_request_spec.rb +64 -0
- data/spec/models/verify_signature200_response_data_spec.rb +60 -0
- data/spec/models/verify_signature200_response_spec.rb +42 -0
- data/spec/spec_helper.rb +111 -0
- metadata +453 -0
checksums.yaml
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
---
|
|
2
|
+
SHA256:
|
|
3
|
+
metadata.gz: 402116b0189c5d11aad227ada1b2b39b57b4b212e5db942f7a4d07568bd172fe
|
|
4
|
+
data.tar.gz: 8d984d577a3af5640a3a5d9f376e72d7b60fef55c0b47a434ab6cb18b5c534a0
|
|
5
|
+
SHA512:
|
|
6
|
+
metadata.gz: 9a03123fe51e8e7aaf4dd1225707e1ef42cb92e973465349f45f4e370fc1f0225eaaed3e36618201c1e4798899b5481322fe517f0122768c31768fb19355adaf
|
|
7
|
+
data.tar.gz: b38114303f8c8038f88495a7c1f9fe964bb67a44c5cec0fd40732cf94b9f11f7a65a8952b4aff36350d70712a52b11d2d023de8acb1c60834ba1f409d4fe0d70
|
data/Gemfile
ADDED
data/README.md
ADDED
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
# qsafe-sdk
|
|
2
|
+
|
|
3
|
+
QSafe - the Ruby gem for the QSafe PQC API
|
|
4
|
+
|
|
5
|
+
Post-quantum cryptography SaaS API supporting ML-KEM (Kyber) and ML-DSA (Dilithium) algorithms.
|
|
6
|
+
Provides keypair management and cryptographic operations (encrypt, decrypt, sign, verify).
|
|
7
|
+
|
|
8
|
+
## Authentication
|
|
9
|
+
- **JWT Bearer Token** — user-based auth, obtained from `/auth/login` or `/auth/register`
|
|
10
|
+
- **API Key (header)** — programmatic access via `X-API-Key` header
|
|
11
|
+
- **API Key (query)** — programmatic access via `?api_key=` query parameter
|
|
12
|
+
|
|
13
|
+
## Quick Start
|
|
14
|
+
1. Register → `POST /auth/register`
|
|
15
|
+
2. Login → `POST /auth/login` → copy `data.token`
|
|
16
|
+
3. Generate keypair → `POST /generate-keypair`
|
|
17
|
+
4. Encrypt / Sign with the keypair ID
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
|
|
21
|
+
|
|
22
|
+
- API version: 1.0.0
|
|
23
|
+
- Package version: 1.0.0
|
|
24
|
+
- Generator version: 7.9.0
|
|
25
|
+
- Build package: org.openapitools.codegen.languages.RubyClientCodegen
|
|
26
|
+
|
|
27
|
+
## Installation
|
|
28
|
+
|
|
29
|
+
### Build a gem
|
|
30
|
+
|
|
31
|
+
To build the Ruby code into a gem:
|
|
32
|
+
|
|
33
|
+
```shell
|
|
34
|
+
gem build qsafe-sdk.gemspec
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
Then either install the gem locally:
|
|
38
|
+
|
|
39
|
+
```shell
|
|
40
|
+
gem install ./qsafe-sdk-1.0.0.gem
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
(for development, run `gem install --dev ./qsafe-sdk-1.0.0.gem` to install the development dependencies)
|
|
44
|
+
|
|
45
|
+
or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
|
|
46
|
+
|
|
47
|
+
Finally add this to the Gemfile:
|
|
48
|
+
|
|
49
|
+
gem 'qsafe-sdk', '~> 1.0.0'
|
|
50
|
+
|
|
51
|
+
### Install from Git
|
|
52
|
+
|
|
53
|
+
If the Ruby gem is hosted at a git repository: https://github.com/qsafe/sdk-ruby, then add the following in the Gemfile:
|
|
54
|
+
|
|
55
|
+
gem 'qsafe-sdk', :git => 'https://github.com/qsafe/sdk-ruby.git'
|
|
56
|
+
|
|
57
|
+
### Include the Ruby code directly
|
|
58
|
+
|
|
59
|
+
Include the Ruby code directly using `-I` as follows:
|
|
60
|
+
|
|
61
|
+
```shell
|
|
62
|
+
ruby -Ilib script.rb
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Getting Started
|
|
66
|
+
|
|
67
|
+
Please follow the [installation](#installation) procedure and then run the following code:
|
|
68
|
+
|
|
69
|
+
```ruby
|
|
70
|
+
# Load the gem
|
|
71
|
+
require 'qsafe-sdk'
|
|
72
|
+
|
|
73
|
+
# Setup authorization
|
|
74
|
+
QSafe.configure do |config|
|
|
75
|
+
# Configure Bearer authorization (JWT): BearerAuth
|
|
76
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
77
|
+
# Configure a proc to get access tokens in lieu of the static access_token configuration
|
|
78
|
+
config.access_token_getter = -> { 'YOUR TOKEN GETTER PROC' }
|
|
79
|
+
end
|
|
80
|
+
|
|
81
|
+
api_instance = QSafe::APIKeysApi.new
|
|
82
|
+
create_api_key_request = QSafe::CreateApiKeyRequest.new({name: 'Production API Key'}) # CreateApiKeyRequest |
|
|
83
|
+
|
|
84
|
+
begin
|
|
85
|
+
#Create API key (JWT only)
|
|
86
|
+
result = api_instance.create_api_key(create_api_key_request)
|
|
87
|
+
p result
|
|
88
|
+
rescue QSafe::ApiError => e
|
|
89
|
+
puts "Exception when calling APIKeysApi->create_api_key: #{e}"
|
|
90
|
+
end
|
|
91
|
+
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
## Documentation for API Endpoints
|
|
95
|
+
|
|
96
|
+
All URIs are relative to *https://rushikesh66-pqc-api.hf.space*
|
|
97
|
+
|
|
98
|
+
Class | Method | HTTP request | Description
|
|
99
|
+
------------ | ------------- | ------------- | -------------
|
|
100
|
+
*QSafe::APIKeysApi* | [**create_api_key**](docs/APIKeysApi.md#create_api_key) | **POST** /api-keys | Create API key (JWT only)
|
|
101
|
+
*QSafe::APIKeysApi* | [**get_api_key**](docs/APIKeysApi.md#get_api_key) | **GET** /api-keys/{keyId} | Get API key details (JWT only)
|
|
102
|
+
*QSafe::APIKeysApi* | [**get_api_key_usage**](docs/APIKeysApi.md#get_api_key_usage) | **GET** /api-keys/{keyId}/usage | Get API key usage stats (JWT only)
|
|
103
|
+
*QSafe::APIKeysApi* | [**list_api_keys**](docs/APIKeysApi.md#list_api_keys) | **GET** /api-keys | List API keys (JWT only)
|
|
104
|
+
*QSafe::APIKeysApi* | [**rotate_api_key**](docs/APIKeysApi.md#rotate_api_key) | **POST** /api-keys/{keyId}/rotate | Rotate API key — generates new key value (JWT only)
|
|
105
|
+
*QSafe::APIKeysApi* | [**update_api_key**](docs/APIKeysApi.md#update_api_key) | **PATCH** /api-keys/{keyId} | Update API key (JWT only)
|
|
106
|
+
*QSafe::AuthenticationApi* | [**change_password**](docs/AuthenticationApi.md#change_password) | **POST** /auth/change-password | Change password (JWT only)
|
|
107
|
+
*QSafe::AuthenticationApi* | [**get_auth_info**](docs/AuthenticationApi.md#get_auth_info) | **GET** /auth/info | Get current auth context (JWT or API key)
|
|
108
|
+
*QSafe::AuthenticationApi* | [**login_user**](docs/AuthenticationApi.md#login_user) | **POST** /auth/login | Login and get JWT token
|
|
109
|
+
*QSafe::AuthenticationApi* | [**register_user**](docs/AuthenticationApi.md#register_user) | **POST** /auth/register | Register a new user
|
|
110
|
+
*QSafe::CryptographicOperationsApi* | [**decrypt_data**](docs/CryptographicOperationsApi.md#decrypt_data) | **POST** /keypairs/{keypairId}/decrypt | Decrypt data with a keypair's private key
|
|
111
|
+
*QSafe::CryptographicOperationsApi* | [**encrypt_data**](docs/CryptographicOperationsApi.md#encrypt_data) | **POST** /keypairs/{keypairId}/encrypt | Encrypt data with a keypair's public key
|
|
112
|
+
*QSafe::CryptographicOperationsApi* | [**sign_data**](docs/CryptographicOperationsApi.md#sign_data) | **POST** /keypairs/{keypairId}/sign | Sign data with a keypair's private key
|
|
113
|
+
*QSafe::CryptographicOperationsApi* | [**verify_signature**](docs/CryptographicOperationsApi.md#verify_signature) | **POST** /keypairs/{keypairId}/verify | Verify a signature
|
|
114
|
+
*QSafe::DebugApi* | [**debug_redis_test**](docs/DebugApi.md#debug_redis_test) | **GET** /debug/redis-test | Test Redis and internal services
|
|
115
|
+
*QSafe::HealthApi* | [**get_health**](docs/HealthApi.md#get_health) | **GET** /health | Health check
|
|
116
|
+
*QSafe::KeypairsApi* | [**generate_keypair**](docs/KeypairsApi.md#generate_keypair) | **POST** /generate-keypair | Generate a new keypair
|
|
117
|
+
*QSafe::KeypairsApi* | [**list_keypairs**](docs/KeypairsApi.md#list_keypairs) | **GET** /keypairs | List keypairs
|
|
118
|
+
*QSafe::KeypairsApi* | [**revoke_keypair**](docs/KeypairsApi.md#revoke_keypair) | **PATCH** /keypairs/{keypairId}/revoke | Revoke a keypair
|
|
119
|
+
*QSafe::KeypairsApi* | [**update_keypair**](docs/KeypairsApi.md#update_keypair) | **PATCH** /keypairs/{keypairId} | Update keypair metadata / tags
|
|
120
|
+
*QSafe::UtilitiesApi* | [**get_rate_limit_status**](docs/UtilitiesApi.md#get_rate_limit_status) | **GET** /rate-limit/status | Get rate limit status for the current API key
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
## Documentation for Models
|
|
124
|
+
|
|
125
|
+
- [QSafe::ApiKey](docs/ApiKey.md)
|
|
126
|
+
- [QSafe::AuthResponse](docs/AuthResponse.md)
|
|
127
|
+
- [QSafe::AuthResponseData](docs/AuthResponseData.md)
|
|
128
|
+
- [QSafe::ChangePassword200Response](docs/ChangePassword200Response.md)
|
|
129
|
+
- [QSafe::ChangePasswordRequest](docs/ChangePasswordRequest.md)
|
|
130
|
+
- [QSafe::CreateApiKey201Response](docs/CreateApiKey201Response.md)
|
|
131
|
+
- [QSafe::CreateApiKeyRequest](docs/CreateApiKeyRequest.md)
|
|
132
|
+
- [QSafe::DebugRedisTest200Response](docs/DebugRedisTest200Response.md)
|
|
133
|
+
- [QSafe::DebugRedisTest200ResponseRateLimitTest](docs/DebugRedisTest200ResponseRateLimitTest.md)
|
|
134
|
+
- [QSafe::DebugRedisTest200ResponseServicesStatus](docs/DebugRedisTest200ResponseServicesStatus.md)
|
|
135
|
+
- [QSafe::DebugRedisTest500Response](docs/DebugRedisTest500Response.md)
|
|
136
|
+
- [QSafe::DecryptData200Response](docs/DecryptData200Response.md)
|
|
137
|
+
- [QSafe::DecryptData200ResponseData](docs/DecryptData200ResponseData.md)
|
|
138
|
+
- [QSafe::DecryptRequest](docs/DecryptRequest.md)
|
|
139
|
+
- [QSafe::DecryptRequestEphemeralCrypto](docs/DecryptRequestEphemeralCrypto.md)
|
|
140
|
+
- [QSafe::EncryptData200Response](docs/EncryptData200Response.md)
|
|
141
|
+
- [QSafe::EncryptData200ResponseData](docs/EncryptData200ResponseData.md)
|
|
142
|
+
- [QSafe::EncryptRequest](docs/EncryptRequest.md)
|
|
143
|
+
- [QSafe::EncryptRequestEphemeralStorage](docs/EncryptRequestEphemeralStorage.md)
|
|
144
|
+
- [QSafe::Error](docs/Error.md)
|
|
145
|
+
- [QSafe::GenerateKeypair201Response](docs/GenerateKeypair201Response.md)
|
|
146
|
+
- [QSafe::GenerateKeypairRequest](docs/GenerateKeypairRequest.md)
|
|
147
|
+
- [QSafe::GenerateKeypairRequestKeyPolicy](docs/GenerateKeypairRequestKeyPolicy.md)
|
|
148
|
+
- [QSafe::GetApiKey200Response](docs/GetApiKey200Response.md)
|
|
149
|
+
- [QSafe::GetApiKeyUsage200Response](docs/GetApiKeyUsage200Response.md)
|
|
150
|
+
- [QSafe::GetApiKeyUsage200ResponseData](docs/GetApiKeyUsage200ResponseData.md)
|
|
151
|
+
- [QSafe::GetApiKeyUsage200ResponseDataDailyUsageInner](docs/GetApiKeyUsage200ResponseDataDailyUsageInner.md)
|
|
152
|
+
- [QSafe::GetAuthInfo200Response](docs/GetAuthInfo200Response.md)
|
|
153
|
+
- [QSafe::GetAuthInfo200ResponseData](docs/GetAuthInfo200ResponseData.md)
|
|
154
|
+
- [QSafe::GetHealth200Response](docs/GetHealth200Response.md)
|
|
155
|
+
- [QSafe::GetHealth200ResponseServices](docs/GetHealth200ResponseServices.md)
|
|
156
|
+
- [QSafe::GetHealth200ResponseServicesApi](docs/GetHealth200ResponseServicesApi.md)
|
|
157
|
+
- [QSafe::GetHealth200ResponseServicesEphemeralStorage](docs/GetHealth200ResponseServicesEphemeralStorage.md)
|
|
158
|
+
- [QSafe::GetHealth200ResponseServicesRedis](docs/GetHealth200ResponseServicesRedis.md)
|
|
159
|
+
- [QSafe::GetRateLimitStatus200Response](docs/GetRateLimitStatus200Response.md)
|
|
160
|
+
- [QSafe::GetRateLimitStatus200ResponseData](docs/GetRateLimitStatus200ResponseData.md)
|
|
161
|
+
- [QSafe::GetRateLimitStatus200ResponseDataCurrentUsage](docs/GetRateLimitStatus200ResponseDataCurrentUsage.md)
|
|
162
|
+
- [QSafe::GetRateLimitStatus200ResponseDataLimits](docs/GetRateLimitStatus200ResponseDataLimits.md)
|
|
163
|
+
- [QSafe::GetRateLimitStatus200ResponseDataResetTimes](docs/GetRateLimitStatus200ResponseDataResetTimes.md)
|
|
164
|
+
- [QSafe::Keypair](docs/Keypair.md)
|
|
165
|
+
- [QSafe::ListApiKeys200Response](docs/ListApiKeys200Response.md)
|
|
166
|
+
- [QSafe::ListApiKeys200ResponseData](docs/ListApiKeys200ResponseData.md)
|
|
167
|
+
- [QSafe::ListApiKeys200ResponseDataPagination](docs/ListApiKeys200ResponseDataPagination.md)
|
|
168
|
+
- [QSafe::ListKeypairs200Response](docs/ListKeypairs200Response.md)
|
|
169
|
+
- [QSafe::ListKeypairs200ResponseData](docs/ListKeypairs200ResponseData.md)
|
|
170
|
+
- [QSafe::ListKeypairs200ResponseDataPagination](docs/ListKeypairs200ResponseDataPagination.md)
|
|
171
|
+
- [QSafe::LoginRequest](docs/LoginRequest.md)
|
|
172
|
+
- [QSafe::RegisterRequest](docs/RegisterRequest.md)
|
|
173
|
+
- [QSafe::RevokeKeypair200Response](docs/RevokeKeypair200Response.md)
|
|
174
|
+
- [QSafe::RevokeKeypairRequest](docs/RevokeKeypairRequest.md)
|
|
175
|
+
- [QSafe::RotateApiKey200Response](docs/RotateApiKey200Response.md)
|
|
176
|
+
- [QSafe::SignData200Response](docs/SignData200Response.md)
|
|
177
|
+
- [QSafe::SignData200ResponseData](docs/SignData200ResponseData.md)
|
|
178
|
+
- [QSafe::SignRequest](docs/SignRequest.md)
|
|
179
|
+
- [QSafe::SignRequestEphemeralStorage](docs/SignRequestEphemeralStorage.md)
|
|
180
|
+
- [QSafe::UpdateApiKeyRequest](docs/UpdateApiKeyRequest.md)
|
|
181
|
+
- [QSafe::UpdateKeypair200Response](docs/UpdateKeypair200Response.md)
|
|
182
|
+
- [QSafe::UpdateKeypairRequest](docs/UpdateKeypairRequest.md)
|
|
183
|
+
- [QSafe::User](docs/User.md)
|
|
184
|
+
- [QSafe::VerifyRequest](docs/VerifyRequest.md)
|
|
185
|
+
- [QSafe::VerifySignature200Response](docs/VerifySignature200Response.md)
|
|
186
|
+
- [QSafe::VerifySignature200ResponseData](docs/VerifySignature200ResponseData.md)
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
## Documentation for Authorization
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
Authentication schemes defined for the API:
|
|
193
|
+
### BearerAuth
|
|
194
|
+
|
|
195
|
+
- **Type**: Bearer authentication (JWT)
|
|
196
|
+
|
|
197
|
+
### ApiKeyHeader
|
|
198
|
+
|
|
199
|
+
|
|
200
|
+
- **Type**: API key
|
|
201
|
+
- **API key parameter name**: X-API-Key
|
|
202
|
+
- **Location**: HTTP header
|
|
203
|
+
|
|
204
|
+
### ApiKeyQuery
|
|
205
|
+
|
|
206
|
+
|
|
207
|
+
- **Type**: API key
|
|
208
|
+
- **API key parameter name**: api_key
|
|
209
|
+
- **Location**: URL query string
|
|
210
|
+
|
data/Rakefile
ADDED
data/docs/APIKeysApi.md
ADDED
|
@@ -0,0 +1,427 @@
|
|
|
1
|
+
# QSafe::APIKeysApi
|
|
2
|
+
|
|
3
|
+
All URIs are relative to *https://rushikesh66-pqc-api.hf.space*
|
|
4
|
+
|
|
5
|
+
| Method | HTTP request | Description |
|
|
6
|
+
| ------ | ------------ | ----------- |
|
|
7
|
+
| [**create_api_key**](APIKeysApi.md#create_api_key) | **POST** /api-keys | Create API key (JWT only) |
|
|
8
|
+
| [**get_api_key**](APIKeysApi.md#get_api_key) | **GET** /api-keys/{keyId} | Get API key details (JWT only) |
|
|
9
|
+
| [**get_api_key_usage**](APIKeysApi.md#get_api_key_usage) | **GET** /api-keys/{keyId}/usage | Get API key usage stats (JWT only) |
|
|
10
|
+
| [**list_api_keys**](APIKeysApi.md#list_api_keys) | **GET** /api-keys | List API keys (JWT only) |
|
|
11
|
+
| [**rotate_api_key**](APIKeysApi.md#rotate_api_key) | **POST** /api-keys/{keyId}/rotate | Rotate API key — generates new key value (JWT only) |
|
|
12
|
+
| [**update_api_key**](APIKeysApi.md#update_api_key) | **PATCH** /api-keys/{keyId} | Update API key (JWT only) |
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
## create_api_key
|
|
16
|
+
|
|
17
|
+
> <CreateApiKey201Response> create_api_key(create_api_key_request)
|
|
18
|
+
|
|
19
|
+
Create API key (JWT only)
|
|
20
|
+
|
|
21
|
+
### Examples
|
|
22
|
+
|
|
23
|
+
```ruby
|
|
24
|
+
require 'time'
|
|
25
|
+
require 'qsafe-sdk'
|
|
26
|
+
# setup authorization
|
|
27
|
+
QSafe.configure do |config|
|
|
28
|
+
# Configure Bearer authorization (JWT): BearerAuth
|
|
29
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
api_instance = QSafe::APIKeysApi.new
|
|
33
|
+
create_api_key_request = QSafe::CreateApiKeyRequest.new({name: 'Production API Key'}) # CreateApiKeyRequest |
|
|
34
|
+
|
|
35
|
+
begin
|
|
36
|
+
# Create API key (JWT only)
|
|
37
|
+
result = api_instance.create_api_key(create_api_key_request)
|
|
38
|
+
p result
|
|
39
|
+
rescue QSafe::ApiError => e
|
|
40
|
+
puts "Error when calling APIKeysApi->create_api_key: #{e}"
|
|
41
|
+
end
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
#### Using the create_api_key_with_http_info variant
|
|
45
|
+
|
|
46
|
+
This returns an Array which contains the response data, status code and headers.
|
|
47
|
+
|
|
48
|
+
> <Array(<CreateApiKey201Response>, Integer, Hash)> create_api_key_with_http_info(create_api_key_request)
|
|
49
|
+
|
|
50
|
+
```ruby
|
|
51
|
+
begin
|
|
52
|
+
# Create API key (JWT only)
|
|
53
|
+
data, status_code, headers = api_instance.create_api_key_with_http_info(create_api_key_request)
|
|
54
|
+
p status_code # => 2xx
|
|
55
|
+
p headers # => { ... }
|
|
56
|
+
p data # => <CreateApiKey201Response>
|
|
57
|
+
rescue QSafe::ApiError => e
|
|
58
|
+
puts "Error when calling APIKeysApi->create_api_key_with_http_info: #{e}"
|
|
59
|
+
end
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Parameters
|
|
63
|
+
|
|
64
|
+
| Name | Type | Description | Notes |
|
|
65
|
+
| ---- | ---- | ----------- | ----- |
|
|
66
|
+
| **create_api_key_request** | [**CreateApiKeyRequest**](CreateApiKeyRequest.md) | | |
|
|
67
|
+
|
|
68
|
+
### Return type
|
|
69
|
+
|
|
70
|
+
[**CreateApiKey201Response**](CreateApiKey201Response.md)
|
|
71
|
+
|
|
72
|
+
### Authorization
|
|
73
|
+
|
|
74
|
+
[BearerAuth](../README.md#BearerAuth)
|
|
75
|
+
|
|
76
|
+
### HTTP request headers
|
|
77
|
+
|
|
78
|
+
- **Content-Type**: application/json
|
|
79
|
+
- **Accept**: application/json
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
## get_api_key
|
|
83
|
+
|
|
84
|
+
> <GetApiKey200Response> get_api_key(key_id)
|
|
85
|
+
|
|
86
|
+
Get API key details (JWT only)
|
|
87
|
+
|
|
88
|
+
### Examples
|
|
89
|
+
|
|
90
|
+
```ruby
|
|
91
|
+
require 'time'
|
|
92
|
+
require 'qsafe-sdk'
|
|
93
|
+
# setup authorization
|
|
94
|
+
QSafe.configure do |config|
|
|
95
|
+
# Configure Bearer authorization (JWT): BearerAuth
|
|
96
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
api_instance = QSafe::APIKeysApi.new
|
|
100
|
+
key_id = 'ak_1234567890' # String | API key identifier
|
|
101
|
+
|
|
102
|
+
begin
|
|
103
|
+
# Get API key details (JWT only)
|
|
104
|
+
result = api_instance.get_api_key(key_id)
|
|
105
|
+
p result
|
|
106
|
+
rescue QSafe::ApiError => e
|
|
107
|
+
puts "Error when calling APIKeysApi->get_api_key: #{e}"
|
|
108
|
+
end
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
#### Using the get_api_key_with_http_info variant
|
|
112
|
+
|
|
113
|
+
This returns an Array which contains the response data, status code and headers.
|
|
114
|
+
|
|
115
|
+
> <Array(<GetApiKey200Response>, Integer, Hash)> get_api_key_with_http_info(key_id)
|
|
116
|
+
|
|
117
|
+
```ruby
|
|
118
|
+
begin
|
|
119
|
+
# Get API key details (JWT only)
|
|
120
|
+
data, status_code, headers = api_instance.get_api_key_with_http_info(key_id)
|
|
121
|
+
p status_code # => 2xx
|
|
122
|
+
p headers # => { ... }
|
|
123
|
+
p data # => <GetApiKey200Response>
|
|
124
|
+
rescue QSafe::ApiError => e
|
|
125
|
+
puts "Error when calling APIKeysApi->get_api_key_with_http_info: #{e}"
|
|
126
|
+
end
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Parameters
|
|
130
|
+
|
|
131
|
+
| Name | Type | Description | Notes |
|
|
132
|
+
| ---- | ---- | ----------- | ----- |
|
|
133
|
+
| **key_id** | **String** | API key identifier | |
|
|
134
|
+
|
|
135
|
+
### Return type
|
|
136
|
+
|
|
137
|
+
[**GetApiKey200Response**](GetApiKey200Response.md)
|
|
138
|
+
|
|
139
|
+
### Authorization
|
|
140
|
+
|
|
141
|
+
[BearerAuth](../README.md#BearerAuth)
|
|
142
|
+
|
|
143
|
+
### HTTP request headers
|
|
144
|
+
|
|
145
|
+
- **Content-Type**: Not defined
|
|
146
|
+
- **Accept**: application/json
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
## get_api_key_usage
|
|
150
|
+
|
|
151
|
+
> <GetApiKeyUsage200Response> get_api_key_usage(key_id, opts)
|
|
152
|
+
|
|
153
|
+
Get API key usage stats (JWT only)
|
|
154
|
+
|
|
155
|
+
### Examples
|
|
156
|
+
|
|
157
|
+
```ruby
|
|
158
|
+
require 'time'
|
|
159
|
+
require 'qsafe-sdk'
|
|
160
|
+
# setup authorization
|
|
161
|
+
QSafe.configure do |config|
|
|
162
|
+
# Configure Bearer authorization (JWT): BearerAuth
|
|
163
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
164
|
+
end
|
|
165
|
+
|
|
166
|
+
api_instance = QSafe::APIKeysApi.new
|
|
167
|
+
key_id = 'ak_1234567890' # String | API key identifier
|
|
168
|
+
opts = {
|
|
169
|
+
time_range: '1h' # String |
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
begin
|
|
173
|
+
# Get API key usage stats (JWT only)
|
|
174
|
+
result = api_instance.get_api_key_usage(key_id, opts)
|
|
175
|
+
p result
|
|
176
|
+
rescue QSafe::ApiError => e
|
|
177
|
+
puts "Error when calling APIKeysApi->get_api_key_usage: #{e}"
|
|
178
|
+
end
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
#### Using the get_api_key_usage_with_http_info variant
|
|
182
|
+
|
|
183
|
+
This returns an Array which contains the response data, status code and headers.
|
|
184
|
+
|
|
185
|
+
> <Array(<GetApiKeyUsage200Response>, Integer, Hash)> get_api_key_usage_with_http_info(key_id, opts)
|
|
186
|
+
|
|
187
|
+
```ruby
|
|
188
|
+
begin
|
|
189
|
+
# Get API key usage stats (JWT only)
|
|
190
|
+
data, status_code, headers = api_instance.get_api_key_usage_with_http_info(key_id, opts)
|
|
191
|
+
p status_code # => 2xx
|
|
192
|
+
p headers # => { ... }
|
|
193
|
+
p data # => <GetApiKeyUsage200Response>
|
|
194
|
+
rescue QSafe::ApiError => e
|
|
195
|
+
puts "Error when calling APIKeysApi->get_api_key_usage_with_http_info: #{e}"
|
|
196
|
+
end
|
|
197
|
+
```
|
|
198
|
+
|
|
199
|
+
### Parameters
|
|
200
|
+
|
|
201
|
+
| Name | Type | Description | Notes |
|
|
202
|
+
| ---- | ---- | ----------- | ----- |
|
|
203
|
+
| **key_id** | **String** | API key identifier | |
|
|
204
|
+
| **time_range** | **String** | | [optional][default to '24h'] |
|
|
205
|
+
|
|
206
|
+
### Return type
|
|
207
|
+
|
|
208
|
+
[**GetApiKeyUsage200Response**](GetApiKeyUsage200Response.md)
|
|
209
|
+
|
|
210
|
+
### Authorization
|
|
211
|
+
|
|
212
|
+
[BearerAuth](../README.md#BearerAuth)
|
|
213
|
+
|
|
214
|
+
### HTTP request headers
|
|
215
|
+
|
|
216
|
+
- **Content-Type**: Not defined
|
|
217
|
+
- **Accept**: application/json
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
## list_api_keys
|
|
221
|
+
|
|
222
|
+
> <ListApiKeys200Response> list_api_keys(opts)
|
|
223
|
+
|
|
224
|
+
List API keys (JWT only)
|
|
225
|
+
|
|
226
|
+
### Examples
|
|
227
|
+
|
|
228
|
+
```ruby
|
|
229
|
+
require 'time'
|
|
230
|
+
require 'qsafe-sdk'
|
|
231
|
+
# setup authorization
|
|
232
|
+
QSafe.configure do |config|
|
|
233
|
+
# Configure Bearer authorization (JWT): BearerAuth
|
|
234
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
235
|
+
end
|
|
236
|
+
|
|
237
|
+
api_instance = QSafe::APIKeysApi.new
|
|
238
|
+
opts = {
|
|
239
|
+
page: 1, # Integer |
|
|
240
|
+
limit: 10, # Integer |
|
|
241
|
+
status: 'active' # String |
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
begin
|
|
245
|
+
# List API keys (JWT only)
|
|
246
|
+
result = api_instance.list_api_keys(opts)
|
|
247
|
+
p result
|
|
248
|
+
rescue QSafe::ApiError => e
|
|
249
|
+
puts "Error when calling APIKeysApi->list_api_keys: #{e}"
|
|
250
|
+
end
|
|
251
|
+
```
|
|
252
|
+
|
|
253
|
+
#### Using the list_api_keys_with_http_info variant
|
|
254
|
+
|
|
255
|
+
This returns an Array which contains the response data, status code and headers.
|
|
256
|
+
|
|
257
|
+
> <Array(<ListApiKeys200Response>, Integer, Hash)> list_api_keys_with_http_info(opts)
|
|
258
|
+
|
|
259
|
+
```ruby
|
|
260
|
+
begin
|
|
261
|
+
# List API keys (JWT only)
|
|
262
|
+
data, status_code, headers = api_instance.list_api_keys_with_http_info(opts)
|
|
263
|
+
p status_code # => 2xx
|
|
264
|
+
p headers # => { ... }
|
|
265
|
+
p data # => <ListApiKeys200Response>
|
|
266
|
+
rescue QSafe::ApiError => e
|
|
267
|
+
puts "Error when calling APIKeysApi->list_api_keys_with_http_info: #{e}"
|
|
268
|
+
end
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Parameters
|
|
272
|
+
|
|
273
|
+
| Name | Type | Description | Notes |
|
|
274
|
+
| ---- | ---- | ----------- | ----- |
|
|
275
|
+
| **page** | **Integer** | | [optional][default to 1] |
|
|
276
|
+
| **limit** | **Integer** | | [optional][default to 10] |
|
|
277
|
+
| **status** | **String** | | [optional] |
|
|
278
|
+
|
|
279
|
+
### Return type
|
|
280
|
+
|
|
281
|
+
[**ListApiKeys200Response**](ListApiKeys200Response.md)
|
|
282
|
+
|
|
283
|
+
### Authorization
|
|
284
|
+
|
|
285
|
+
[BearerAuth](../README.md#BearerAuth)
|
|
286
|
+
|
|
287
|
+
### HTTP request headers
|
|
288
|
+
|
|
289
|
+
- **Content-Type**: Not defined
|
|
290
|
+
- **Accept**: application/json
|
|
291
|
+
|
|
292
|
+
|
|
293
|
+
## rotate_api_key
|
|
294
|
+
|
|
295
|
+
> <RotateApiKey200Response> rotate_api_key(key_id)
|
|
296
|
+
|
|
297
|
+
Rotate API key — generates new key value (JWT only)
|
|
298
|
+
|
|
299
|
+
### Examples
|
|
300
|
+
|
|
301
|
+
```ruby
|
|
302
|
+
require 'time'
|
|
303
|
+
require 'qsafe-sdk'
|
|
304
|
+
# setup authorization
|
|
305
|
+
QSafe.configure do |config|
|
|
306
|
+
# Configure Bearer authorization (JWT): BearerAuth
|
|
307
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
308
|
+
end
|
|
309
|
+
|
|
310
|
+
api_instance = QSafe::APIKeysApi.new
|
|
311
|
+
key_id = 'ak_1234567890' # String | API key identifier
|
|
312
|
+
|
|
313
|
+
begin
|
|
314
|
+
# Rotate API key — generates new key value (JWT only)
|
|
315
|
+
result = api_instance.rotate_api_key(key_id)
|
|
316
|
+
p result
|
|
317
|
+
rescue QSafe::ApiError => e
|
|
318
|
+
puts "Error when calling APIKeysApi->rotate_api_key: #{e}"
|
|
319
|
+
end
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
#### Using the rotate_api_key_with_http_info variant
|
|
323
|
+
|
|
324
|
+
This returns an Array which contains the response data, status code and headers.
|
|
325
|
+
|
|
326
|
+
> <Array(<RotateApiKey200Response>, Integer, Hash)> rotate_api_key_with_http_info(key_id)
|
|
327
|
+
|
|
328
|
+
```ruby
|
|
329
|
+
begin
|
|
330
|
+
# Rotate API key — generates new key value (JWT only)
|
|
331
|
+
data, status_code, headers = api_instance.rotate_api_key_with_http_info(key_id)
|
|
332
|
+
p status_code # => 2xx
|
|
333
|
+
p headers # => { ... }
|
|
334
|
+
p data # => <RotateApiKey200Response>
|
|
335
|
+
rescue QSafe::ApiError => e
|
|
336
|
+
puts "Error when calling APIKeysApi->rotate_api_key_with_http_info: #{e}"
|
|
337
|
+
end
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
### Parameters
|
|
341
|
+
|
|
342
|
+
| Name | Type | Description | Notes |
|
|
343
|
+
| ---- | ---- | ----------- | ----- |
|
|
344
|
+
| **key_id** | **String** | API key identifier | |
|
|
345
|
+
|
|
346
|
+
### Return type
|
|
347
|
+
|
|
348
|
+
[**RotateApiKey200Response**](RotateApiKey200Response.md)
|
|
349
|
+
|
|
350
|
+
### Authorization
|
|
351
|
+
|
|
352
|
+
[BearerAuth](../README.md#BearerAuth)
|
|
353
|
+
|
|
354
|
+
### HTTP request headers
|
|
355
|
+
|
|
356
|
+
- **Content-Type**: Not defined
|
|
357
|
+
- **Accept**: application/json
|
|
358
|
+
|
|
359
|
+
|
|
360
|
+
## update_api_key
|
|
361
|
+
|
|
362
|
+
> <GetApiKey200Response> update_api_key(key_id, update_api_key_request)
|
|
363
|
+
|
|
364
|
+
Update API key (JWT only)
|
|
365
|
+
|
|
366
|
+
### Examples
|
|
367
|
+
|
|
368
|
+
```ruby
|
|
369
|
+
require 'time'
|
|
370
|
+
require 'qsafe-sdk'
|
|
371
|
+
# setup authorization
|
|
372
|
+
QSafe.configure do |config|
|
|
373
|
+
# Configure Bearer authorization (JWT): BearerAuth
|
|
374
|
+
config.access_token = 'YOUR_BEARER_TOKEN'
|
|
375
|
+
end
|
|
376
|
+
|
|
377
|
+
api_instance = QSafe::APIKeysApi.new
|
|
378
|
+
key_id = 'ak_1234567890' # String | API key identifier
|
|
379
|
+
update_api_key_request = QSafe::UpdateApiKeyRequest.new # UpdateApiKeyRequest |
|
|
380
|
+
|
|
381
|
+
begin
|
|
382
|
+
# Update API key (JWT only)
|
|
383
|
+
result = api_instance.update_api_key(key_id, update_api_key_request)
|
|
384
|
+
p result
|
|
385
|
+
rescue QSafe::ApiError => e
|
|
386
|
+
puts "Error when calling APIKeysApi->update_api_key: #{e}"
|
|
387
|
+
end
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
#### Using the update_api_key_with_http_info variant
|
|
391
|
+
|
|
392
|
+
This returns an Array which contains the response data, status code and headers.
|
|
393
|
+
|
|
394
|
+
> <Array(<GetApiKey200Response>, Integer, Hash)> update_api_key_with_http_info(key_id, update_api_key_request)
|
|
395
|
+
|
|
396
|
+
```ruby
|
|
397
|
+
begin
|
|
398
|
+
# Update API key (JWT only)
|
|
399
|
+
data, status_code, headers = api_instance.update_api_key_with_http_info(key_id, update_api_key_request)
|
|
400
|
+
p status_code # => 2xx
|
|
401
|
+
p headers # => { ... }
|
|
402
|
+
p data # => <GetApiKey200Response>
|
|
403
|
+
rescue QSafe::ApiError => e
|
|
404
|
+
puts "Error when calling APIKeysApi->update_api_key_with_http_info: #{e}"
|
|
405
|
+
end
|
|
406
|
+
```
|
|
407
|
+
|
|
408
|
+
### Parameters
|
|
409
|
+
|
|
410
|
+
| Name | Type | Description | Notes |
|
|
411
|
+
| ---- | ---- | ----------- | ----- |
|
|
412
|
+
| **key_id** | **String** | API key identifier | |
|
|
413
|
+
| **update_api_key_request** | [**UpdateApiKeyRequest**](UpdateApiKeyRequest.md) | | |
|
|
414
|
+
|
|
415
|
+
### Return type
|
|
416
|
+
|
|
417
|
+
[**GetApiKey200Response**](GetApiKey200Response.md)
|
|
418
|
+
|
|
419
|
+
### Authorization
|
|
420
|
+
|
|
421
|
+
[BearerAuth](../README.md#BearerAuth)
|
|
422
|
+
|
|
423
|
+
### HTTP request headers
|
|
424
|
+
|
|
425
|
+
- **Content-Type**: application/json
|
|
426
|
+
- **Accept**: application/json
|
|
427
|
+
|
data/docs/ApiKey.md
ADDED
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# QSafe::ApiKey
|
|
2
|
+
|
|
3
|
+
## Properties
|
|
4
|
+
|
|
5
|
+
| Name | Type | Description | Notes |
|
|
6
|
+
| ---- | ---- | ----------- | ----- |
|
|
7
|
+
| **id** | **String** | | [optional] |
|
|
8
|
+
| **name** | **String** | | [optional] |
|
|
9
|
+
| **permissions** | **Array<String>** | | [optional] |
|
|
10
|
+
| **rate_limits** | [**GetRateLimitStatus200ResponseDataLimits**](GetRateLimitStatus200ResponseDataLimits.md) | | [optional] |
|
|
11
|
+
| **is_active** | **Boolean** | | [optional] |
|
|
12
|
+
| **created_at** | **Time** | | [optional] |
|
|
13
|
+
| **last_used** | **Time** | | [optional] |
|
|
14
|
+
| **expires_at** | **Time** | | [optional] |
|
|
15
|
+
| **allowed_ips** | **Array<String>** | | [optional] |
|
|
16
|
+
| **allowed_origins** | **Array<String>** | | [optional] |
|
|
17
|
+
|
|
18
|
+
## Example
|
|
19
|
+
|
|
20
|
+
```ruby
|
|
21
|
+
require 'qsafe-sdk'
|
|
22
|
+
|
|
23
|
+
instance = QSafe::ApiKey.new(
|
|
24
|
+
id: ak_1234567890,
|
|
25
|
+
name: Production API Key,
|
|
26
|
+
permissions: ["read","crypto_encrypt","crypto_decrypt"],
|
|
27
|
+
rate_limits: null,
|
|
28
|
+
is_active: true,
|
|
29
|
+
created_at: null,
|
|
30
|
+
last_used: null,
|
|
31
|
+
expires_at: null,
|
|
32
|
+
allowed_ips: ["192.168.1.0/24"],
|
|
33
|
+
allowed_origins: ["https://app.example.com"]
|
|
34
|
+
)
|
|
35
|
+
```
|
|
36
|
+
|