Base URL
The QIMEM Platform API is versioned and organized into three main categories:/v1 prefix for version 1:
/v1/security/*- Cryptographic operations and key management/v1/auth/*- Authentication and authorization via QAuth/v1/plugins/*- Plugin registry and manifest management
API Categories
Security API
Provides cryptographic operations including encryption, decryption, and key lifecycle management. Endpoints:POST /v1/security/keys- Create a new encryption keyPOST /v1/security/encrypt- Encrypt data with a specified keyPOST /v1/security/decrypt- Decrypt an envelopePOST /v1/security/rotate- Rotate an existing key to a new versionGET /v1/security/health- Health check for security services
Auth API
Handles realm management, role-based access control (RBAC), client and user administration, and token lifecycle operations. Endpoints:POST /v1/auth/realms- Create a new authentication realmPOST /v1/auth/roles- Create a role with permissionsPOST /v1/auth/clients- Register an OAuth2 clientPOST /v1/auth/users- Create a user with assigned rolesPOST /v1/auth/token- Login and obtain access/refresh tokensPOST /v1/auth/token/refresh- Refresh an expired access tokenPOST /v1/auth/token/revoke- Revoke an access or refresh tokenPOST /v1/auth/token/introspect- Introspect token validity and claimsPOST /v1/auth/keys/rotate- Rotate the JWT signing key
Plugins API
Manages plugin manifests for extensibility via WebAssembly, Python, JavaScript, or Lua runtimes. Endpoints:GET /v1/plugins/manifests- List all registered plugin manifestsPOST /v1/plugins/manifests- Register a new plugin manifest
Health Endpoints
The platform provides multiple health check endpoints for monitoring:GET /health- General platform healthGET /ready- Readiness probe for orchestrationGET /v1/security/health- Security subsystem health
Request Format
All POST requests require:Content-Type: application/jsonheader- Valid JSON request body
- Authorization header (for protected endpoints)
Example Request
Response Format
All API responses are returned as JSON with appropriate HTTP status codes:200 OK- Successful operation400 Bad Request- Validation error or invalid input404 Not Found- Resource not found500 Internal Server Error- Server-side error
Success Response Example
Error Response Example
Rate Limiting
API rate limits are enforced per client and depend on your subscription tier. Rate limit information is included in response headers:X-RateLimit-Limit- Maximum requests per windowX-RateLimit-Remaining- Remaining requests in current windowX-RateLimit-Reset- Unix timestamp when the limit resets
Versioning
The API uses URL-based versioning. The current version isv1. Breaking changes will result in a new version (e.g., v2), while backward-compatible changes are introduced within the existing version.