Skip to main content

Admin Panel

QvaSoft Gateway includes a built-in web-based admin panel for managing all gateway configuration without editing JSON files manually.

Accessing the Panel

Navigate to:

http://localhost:4000/admin

First-Time Registration

On first launch (when no users exist in the database), the panel shows a registration form:

  1. Enter your email, full name, and password
  2. Select your account type (Personal or Company)
  3. Click Register

You'll be automatically logged in after registration.

note

Registration is only available once. After the first user is created, the registration endpoint is disabled.

Password Requirements

  • Minimum 8 characters
  • At least one uppercase letter
  • At least one lowercase letter
  • At least one digit

Dashboard

The dashboard provides an overview of:

  • Endpoints -- Total configured routes
  • Swagger -- Swagger endpoint configurations
  • Aggregation -- Configured request aggregations

Managing Routes

Add a Route

  1. Navigate to Endpoints
  2. Click the + button
  3. Fill in the inbound and outbound configuration
  4. Click Save

Edit a Route

  1. Select a route from the table
  2. Click the Edit (pencil) button
  3. Modify the configuration
  4. Click Save

Duplicate a Route

Select a route and click the Duplicate button to create a copy with a new ID.

Delete Routes

Select one or more routes and click the Delete button.

Bulk Change Downstream

Select multiple routes and click Change Outbound to update the downstream host/port for all selected routes at once.

Import / Export

  • Export -- Download routes as a JSON file (selected or all)
  • Import -- Upload a JSON file to add new routes (duplicates are skipped)

Search & Filter

Use the search box to filter routes by path, host, or key. Toggle the regex icon to enable regular expression search.

Route Configuration Options

Each route supports the following tabs in the form:

TabDescription
RouteInbound/outbound paths, methods, host and ports
AuthenticationProvider keys, allowed scopes, anonymous access
Claims TransformationTransform claims to headers, queries, or path params
Header TransformationModify request and response headers
Rate LimitingRequest throttling per time window
Cache OptionsResponse caching with TTL
QoS OptionsCircuit breaker and timeout settings
Security OptionsIP allow/block lists
Load BalancerDistribution strategy for multiple hosts
TracingEnable request tracing
MetadataCustom key-value pairs

Global Configuration

Navigate to Global Configuration to manage settings that apply to all routes:

  • Base URL
  • Request ID key
  • Default metadata
  • Service discovery
  • Global security options

Swagger Configuration

Manage Swagger/OpenAPI endpoint configurations that aggregate documentation from your downstream services.

Aggregation

Configure request aggregation to combine responses from multiple downstream services into a single response.

Admin API Endpoints

The admin panel communicates through these API endpoints:

MethodEndpointDescription
POST/admin-api/registerFirst-time admin registration
POST/admin-api/loginAuthenticate and get JWT token
GET/admin-api/dataGet current gateway configuration
POST/admin-api/dataSave gateway configuration

All endpoints except /register and /login require a valid JWT token with the Administrator role.

Customization

Customize the admin panel appearance in appsettings.json:

{
"AdminApi": {
"AppName": "My Company Gateway",
"PrimaryColor": "#6200ea",
"LogoUrl": "https://example.com/logo.png"
}
}

Account Lockout

After 3 failed login attempts, the account is locked for 15 minutes. Use the CLI to unlock:

ApiGateway set-password

This resets the password and unlocks the account.