Relay Last verified:

Relay Licensing

Plans, license file delivery, offline activation, and annual renewals for Viaalink Relay.

Plans and limits

Viaalink Relay is licensed per year (all prices include VAT where applicable). Compare plans and ask for a license on /relay#plans:

PlanPrice (per year, incl. VAT)Connected DevicesInstallationsCommercial UseCalls Through FirewallsHigh AvailabilitySupport
Free€0up to 10 connected devicesfair useNot includedIncludedNot includedSelf-service
Personal€99fair usefair useOne freelancerIncludedNot includedEmail
Team€490fair usefair useIncludedIncludedNot includedPriority email
Business€1.490fair use3 installationsIncludedIncludedIncludedPriority email & call
Enterprisefrom €3.500 (on request)fair usefair useIncludedIncludedIncludedCustom agreement
  • Connected devices: The number of client machines (laptops, phones, development workstations) connected to the Relay simultaneously. Visitors browsing your published web addresses are never counted against your plan.
  • Calls through firewalls: All plans include built-in NAT and firewall traversal for voice and video calls through restrictive firewalls.
  • Non-profit programme: Non-profit organisations with ANBI status and annual revenue under €250k receive the Team plan free of charge. Other verified non-profits receive a 50% discount. Contact contact@viaalink.com to apply.

Operating without a license (Free plan)

When you deploy a new Viaalink Relay, it runs immediately under the Free plan. No license file or registration is required to start forwarding traffic for up to 10 connected devices. To enable the browser setup dashboard (/_relay/dashboard) and prepare for license activation, point --license-key-file (or license-key-file in config.yml / VIAALINK_RELAY_LICENSE_KEY_FILE) to your license.jwt path; if the file does not exist yet on disk, the server still runs under the Free plan.

Receiving your license file

When you get a paid plan (ask for a license on /relay#plans), your license file (license.jwt) is generated and sent directly to your billing email address.

The license file (license.jwt) is a signed document containing your licensed plan, installation limits, and validity period. It does not require online verification or external phone-home connections.

How to activate a license

Nothing reads a license file from disk unless --license-key-file (or license-key-file in config.yml, or VIAALINK_RELAY_LICENSE_KEY_FILE) is set. Once configured, you can activate your license.jwt file using any of the following methods:

  1. Open your browser and navigate to your Relay setup dashboard:
    • Linux / Docker: http://<server-ip>:8080/_relay/dashboard or https://relay.example.com/_relay/dashboard
    • ASUSTOR NAS: https://yourname.myasustor.com:28080/_relay/dashboard or http://<NAS-LAN-IP>:8080/_relay/dashboard
  2. Select the License tab.
  3. Open the license.jwt file you received by email, copy the entire file text, paste it into the activation field, and click Save & Activate.
  4. The dashboard writes the file to your configured --license-key-file path (license.jwt) and activates the license immediately across all active connections without restarting the server.

Method 2: Save license.jwt to the configured path

Place the license.jwt file at the path configured by --license-key-file / license-key-file / VIAALINK_RELAY_LICENSE_KEY_FILE:

  • Linux systemd: /var/lib/viaalink-relay/license/license.jwt
  • Docker Compose: ./data/license/license.jwt (mounted at /app/deploy/license/license.jwt)
  • ASUSTOR NAS: viaalink-relay-data/license/license.jwt via File Explorer

Method 3: Command-line flag, config key, or environment variable

Configure the path to license.jwt via CLI flag, config.yml, or environment variable:

bash
yaml
bash

Offline verification

Viaalink Relay verifies your license.jwt file completely offline using an embedded Ed25519 public key. The server:

  • Never connects to an external licensing server.
  • Operates reliably in air-gapped, isolated LAN, and private data center environments.

Renewals

Relay licenses renew annually. Prior to your plan’s expiration date, you will receive an updated license.jwt file by email.

To apply your renewal, paste the new license.jwt contents into the License tab on /_relay/dashboard, or replace license.jwt at your --license-key-file path. Existing tunnel connections continue without interruption.