Quick License Manager
HomeWebsite
  • Quick License Manager
  • 🔊Announcements
    • What's new in QLM v19 and upgrade procedure
    • TLS 1.2 Requirements
    • What's new in QLM v18 and upgrade procedure
    • What's new in QLM v17 and upgrade procedure
    • What's new in QLM v16 and Upgrade Procedure
    • What's new in QLM v15 and Upgrade Procedure
    • What's new in QLM v14 and Upgrade Procedure
    • What's new in QLM v12 and Upgrade Procedure
    • What's new in QLM v11 and Upgrade Procedure
    • What's new in QLM v10 and Upgrade Procedure
    • What's new in QLM v9 and Upgrade Procedure
    • What's new in QLM v8 and Upgrade Procedure
    • What's new in QLM v7?
    • What's new in QLM v7 and Upgrade Procedure
  • 🉑Fundamental Concepts
    • License Key Fields Definitions
    • License Key Types
    • Length of QLM license keys
    • OrderStatus field
    • License Model
    • License Model v17+
    • Computer Identifier (ComputerID) requirements
    • License Binding
    • Variable License Binding
    • Product Features
    • Product Properties
      • Data Types
      • Enforce Product Properties
    • CommunicationEncryptionKey and AdminEncryptionKey
    • Search macros
    • Differences between QLM Express and QLM Pro
    • Differences between QLM Pro and Enterprise
    • Server-side license validation
    • Online activation
      • Online Activation with basic authentication (user/password)
      • Online Activation By Authorization Code
    • Offline activation
      • Offine Activation of License Keys
      • Offline activation of License Files
      • Deactivation Verification Code for Offline Deactivation
    • QLM Timer
    • Maintenance Plan
    • How to implement software subscription
    • Subscription workflow when integrated with an eCommerce Provider
    • Check for Updates
    • License Activation Count
    • Organizations
    • History log
    • WebHooks
    • Analytics
    • User Groups
    • Product Bundles
    • Customer User Account
    • Server Error Codes (EServerErrorCode)
    • .NET 6/7/8, .NET Core and .NET Standard Support
  • ↗️Management Console
    • User Interface
      • Get Started
      • Define Products
        • Check For Updates
      • Protect your application
      • Manage License Keys
        • Create License Keys
          • Settings Templates
        • Activate License Keys
        • Export License Keys
        • Fraud Detection
          • Illegal Computers
        • Mail
        • License Server
        • Tools
        • QLM Portal
        • Scheduled Tasks
        • Server Event Log
        • Global Search
      • Manage Customers
      • Backup
      • Generate Keys
      • Validate Keys
      • About
    • How to use QLM Management Console Grid View
    • How to install the QLM Management Console on a second computer
    • Archiving license keys
    • How to create keys in bulk
    • How to export license keys
    • How to export license keys with the Activation Log section expanded
    • How to migrate my products and settings to another machine?
    • How to share products on 2 machines running QLM?
    • How to publish your products to the License Server
    • How to configure defaults when creating an Activation Key
    • Where is the QLM help?
    • How to create a customer report showing their licenses and activations
    • QLM Management Console - Client Side Event Logging
  • 🧙‍♂️License Wizard
    • Online Activation using the QLM License Wizard Standalone Application
    • How to display your EULA in the QLM License Wizard
    • Configure Check for Updates in the QLM License Wizard
    • Creating Trial Keys from the QLM License Wizard
    • QLM License Wizard - Activation by Email using 3rd party authentication
    • QLM License Wizard Try Button
    • QLM License Wizard - Download Latest Version from a Cloud Drive
    • QLM License Wizard localization
    • How to restore the factory settings of the QLM License Wizard
    • How to initialize the QLM License Wizard programmatically
    • QLM License Wizard Performance
    • How to use the QLM License Wizard with QLM Express
  • 🗜️QLM Agent
    • QLM Agent Service
    • How to manually register the QLM Agent Windows Service
  • 📧Email Framework
    • Configuration
      • How to use SMTP to send emails
      • How to configure QLM to send mail using SMTP
      • Sending emails using the Microsoft Graph API
      • Sending emails using the Gmail API
        • How to create a Gmail OAuth Client ID
        • How to create a Gmail Service account
    • Email Templates
      • How to create email templates with your own editor and upload them to the server
      • External Email Templates
      • Which variables are available in an email template?
    • Email Notifications
      • How to automatically email customers their license key using Scheduled Tasks
      • How to automatically email customers when the subscription is about to expire using Scheduled Tasks
      • How to follow up on idle trials with QLM Enterprise
      • How to send yourself a weekly report of orders
      • How to automatically send an email when a new license is created
      • How to send yourself a weekly report of upcoming renewals
      • How to send email notifications when an illegal computer is detected
      • Send aggregated email notifications per subscription, order or email
      • How to send a notification when a customer is created
      • How to create email drip campaigns in QLM
      • How to receive an email report of failed trial requests using Scheduled Tasks
      • How to automatically send the vendor an email when a customer activates a license
      • How to send email notifications when an activation attempt is detected
      • How to email a monthly analytics report
    • How to email customers their license key interactively from the QLM Management Console
    • Third-Party Email Verifiers
      • Debounce.io
      • Zero Bounce
      • Verify Mail
    • How to exclude customers from email notifications
  • ☁️Floating Licenses
    • Cloud Floating Licenses
      • Implement cloud-based floating licenses with QLM Pro
      • How to implement Cloud Floating Licenses (CFL) in QLM v17+
      • How to implement Cloud Floating Licenses (v16 or earlier)
      • Cloud-based floating licenses and multiple application instances
      • Cloud-based floating licenses - Check-out for offline usage
      • How to implement cloud-based floating licenses for cross-platform applications
    • On-premise Floating Licenses
      • Implement Floating Licenses
      • How to implement floating licensing with QLM Enterprise
      • How to support floating and node locked licences in the same app
      • How to simultaneously support node-locked and cloud-based floating licenses
      • QLM Floating License Viewer
  • ☁️License Server
    • What are the requirements for hosting the QLM License Server?
    • How to install the QLM License Server
    • QLM v12+ Azure Integration
    • QLM and Windows Azure Integration (v10)
    • How to install the QLM License Server on Microsoft Azure
    • QLM License Server Hosting Service
    • Server Properties
    • License Server Security Hardening
    • How to enable CORS for the QLM License Server
    • How to configure the QLM License Server to handle large requests
    • How to redirect the QLM License Server using URL Rewrite
    • How to configure the QLM to send emails from the server
    • How to redirect your QLM License Server to a new location
    • How to replicate the QLM database to a DR site
    • QLM License Server: Application API v/s Management API
    • QLM License Server - Disaster Recovery Site
    • Troubleshooting tips for SQL Error
    • Error: ExecuteReader requires an open and available Connection.
    • MS-Access - Operation must use an updateable query.
    • IIS features on Windows Server 2012 or higher
    • How to migrate a QLM License Server to another server
    • How to transfer your data from a MS-Access DB to a MS-SQL Server DB
    • How to connect to the QLM License Server via a proxy server
    • Configure a redirect to another QLM License server using a PHP script
    • License Server Performance Tips
    • How to configure the License Server on a system where TLS 1.0 is disabled
    • IIS on Windows 10
    • How to upgrade the QLM License Server
    • How to perform a DB schema upgrade
    • Customizable Server Messages
  • ⛑️Self Help (Customer Site)
    • Overview
    • Configuration
      • Offline Activation Page
      • Deactivate License Page
      • Trial Registration Page
      • Trial Registration Method
      • License Information Page
      • Email Licenses Page
    • Customization and localization
    • Generate a trial key from your web site
    • Restrict trial requests
    • Hide the URL arguments to QlmCustomerSite pages
    • Troubleshooting
      • Why are no products listed on the offline activation page in the QLM Self Help?
  • ☁️QLM Portal
    • What is the QLM Portal?
    • Role Based Access Control (RBAC)
    • QLM Management Console v/s QLM Portal
    • QLM Portal Licensing Terms
    • Activate your QLM Portal license
    • How to brand the QLM Portal
    • QLM Portal Password Policy
    • QLM Portal Two-Factor Authentication
    • Hosting the QLM Portal on Azure
    • How to show new searches in the QLM Portal
    • How to allow a customer to login to the QLM Portal
    • QLM Portal session timeout
    • QLM Portal restricted key access
    • How to enable attaching images to an email
    • Locked out user
    • Which organizations are displayed in the QLM Portal?
    • How to install the QLM Portal
    • How to upgrade the QLM Portal to a new version
  • ☁️QLM Customer Portal
    • Customer Portal Security Measures
    • Customer Portal Deployment
  • ⚙️3rd Party Integration
    • Integrated eCommerce Providers
    • 2Checkout - How to integrate QLM with Avangate / 2checkout
    • BlueSnap - How to integrate QLM with Bluesnap (Plimus)
    • Chargify - How to integrate QLM with Chargify
    • Cleverbridge - How to integrate QLM with Cleverbridge
    • eCommerce Field Mappings
    • FastSpring
      • FastSpring - How to integrate QLM with FastSpring (Classic)
      • FastSpring - How to configure a maintenance plan option in FastSpring
      • FastSpring - How to configure a subscription based product in FastSpring?
      • FastSpring - How to create a license key with a specific Expiry Date in FastSpring
      • FastSpring - How to create a license key with features from FastSpring
      • FastSpring - How to upgrade a license from FastSpring
      • FastSpring - How to integrate with FastSpring's New Contextual Storefront for a Regular Product
      • FastSpring - How to integrate with FastSpring's New Contextual Storefront for a Subscription Product
      • Fastspring HMAC validation
    • Gravity Forms Integration
    • HubSpot
      • QLM HubSpot Integration
      • HubSpot Integration - Contact Creation
      • HubSpot Integration - Deal Creation
    • InnoSetup - Add the QLM files to your InnoSetup
    • Jotform Integration
    • Magento - How to integrate QLM with Magento
    • MailChimp - Quick License Manager Integration with MailChimp
    • MyCommerce (Shareit) - How to integrate QLM with MyCommerce
    • Office 365 Integration
    • PayPal
      • Paypal - Configure Paypal to handle UTF-8
      • Paypal - How to collect Paypal related event logs
      • Paypal - How to create a paypal Buy Now button that integrates with QLM
      • PayPal - How to create a PayPal Shopping Cart Button
      • Paypal - How to integrate Paypal Subscription with QLM
      • Paypal - How to integrate QLM with Paypal?
      • PayPal - How to set the Paypal IPN URL
    • QlmAuthenticationProvider
    • QuickBooks Integration
    • Regnow - How to integrate QLM with Regnow
    • Salesforce integration - how to automatically create a license when an order is activated
    • Shareit - How to integrate QLM with Shareit
    • Shopify - How to integrate QLM with Shopify
    • Stripe - How to integrate QLM with Stripe Checkout
    • SWREG - How to integrate QLM with SWREG
    • UltraCart - How to integrate QLM with UltraCart
    • WooCommerce
      • WooCommerce - How to integrate QLM with WooCommerce
      • WooCommerce - How to create a simple product in WooCommerce
      • WooCommerce - How to use WooCommerce Subscriptions
      • WooCommerce - How to create a maintenance plan product in WooCommerce
      • WooCommerce Payment Providers Configuration
      • WooCommerce - How to handle Downloadable products
      • WooCommerce - How to map WooCommerce variations to QLM features
      • WooCommerce - How to map WooCommerce variations to product properties
      • WooCommerce - How to process a manual order
      • WooCommerce - How to process manual subscriptions
      • WooCommerce - InApp Purchase
      • WooCommerce - Sell an upgrade of a product
      • WordPress - How to integrate the QLM Trial Registration form in WordPress
      • WordPress- How to integrate the QLM Self Help in your WordPress Site
    • Zapier
      • Zapier - QLM Zapier App
      • Zapier - Use Zapier to create a QLM user when a SalesForce lead is created
  • 👣Step by Step Guides
    • Protect a C# app with the QLM License Wizard standalone executable
    • Protect a WinForms app with the QLM License Wizard
    • Protect a VB.NET App with the QLM License Wizard Standalone Exe
    • Protect a .NET Core Console App
    • Protect a service
    • Protect an ASP.NET application with QLM
    • Protect a VB6 app with QLM
    • Protect an Excel Application with Quick License Manager
    • Protect an MS-Access Application with Quick License Manager
    • Protect a VC++ app with Quick License Manager
    • Protect an Embarcadero C++ Builder app with QLM
    • Protect a Qt C++ Windows application
    • Protect a Qt C++ Cross Platform Application
    • Protect a Linux C++ Application
    • Protect a JUCE application
    • Protect an Embarcadero Delphi application with QLM
    • Protect a PHP application with QLM Enterprise
    • Protect a WinForms app with the Activation Control
    • Protect a Xojo Windows app with QLM
    • Protect an Executable without code changes
    • Protect a PDF file with QLM
  • ℹ️How To
    • How do I transfer QLM to another machine?
    • How to upgrade QLM to a new version
    • How to read product properties from a license file
    • How to bind a license to a USB key (dongle)
    • How to release a new version of your product with new encryption keys
    • How to add license file validation
    • How to allow specific customers to work offline indefinitely
    • How to use GetDataSetEx to retrieve customer information
    • How to implement a pay-per-use model with QLM
    • How to use the HTTP API to create a license for a customer
    • How to block computers from activating a license
    • How to assign a specific set of computers to an Activation key
    • How to bind a license to a Docker Container?
    • How to update features using UpdateLicenseInfo
    • How to set the Application Version dynamically
    • Upgrading Product Properties
    • How to fire an event when MaxDaysOffline is reached
    • How to retrieve activation information from the License Server
    • QLM strict authentication for HTTP Methods
    • How to configure and test MaxDaysOffline
    • Fraud Detection - Illegal Computers and Activation Attempts
    • How to parse a feature string and determine the enabled feature
    • How to limit the activation of a node to a time period
    • How can customers deactivate their license?
    • How to deactivate a license in VB.NET
    • How to send your customer an Analytics Usage Report
    • How to create a search that returns trial customers who do not have a purchased license
    • How to upgrade a license from the QLM Management Console
    • How to protect Javascript code
    • How to get the latest enabled features from the server
    • How to protect a .NET Core app with QLM
    • Associate your own custom data to a license
    • How to enable the maintenance plan on activation only
    • How to activate a license
    • How to enable a 3rd party extension (e-commerce provider)
    • How to update your project to add QLM License Protection
    • How to renew the maintenance plan for an offline customer
    • Sharing license information on a given system
    • How to automate license activation for a corporate customer
    • How to migrate from an in-house licensing system to QLM
    • How to export customers
    • How to handle multiple keys of the same product on the same system
    • How to get a Computer Key in offline mode
    • How to track Affiliates/Reseller sales
    • How to add the QLM .NET Controls to the Visual Studio Toolbox
    • How to get the number of allowed activations of a license
    • How to configure the maintenance plan to start upon activation
    • How to use the localized versions of the QLM binaries
    • Import your existing data into QLM
    • How to create a trial key from within your application
    • How to use QLM with VBA without registering QlmLicenseLib.dll
    • Tool to delete registered license keys on a system
    • How to get the list of activated computers
    • How to limit the number of users logged in to a web application
    • How to deactivate a license if a user's computer is dead
    • How to view all expired subscriptions
    • How to schedule a backup of your database
    • How to create a search that shows non active licenses
    • How to deactivate a license on a mobile device
    • How to determine which QLM DLL is loaded
    • How to generate a trial key for your application
    • How to call AddUser from C++
    • How to embed a number in the license key
    • How to use computer bound keys with QLM Express
    • How to configure QLM Express to not connect to the Demo License Server
    • How to register QlmLicenseLib.dll for non .NET applications running on Windows
    • How to clear license keys from an end user system
    • How to call the Analytics API from C++
    • How to extend a license subscription from a URL
    • How to define the user / password associated to an eCommerce provider
    • How to limit the number of trial license keys a customer can use
    • QLM Unity3d Licensing Sample
    • How do I make my license keys computer bound?
    • How to make license keys work with different versions of a product?
    • How to extend the expiry date for a customer?
    • How to call CreateLicenseKeyEx2 from ASP?
    • How can I quickly tell the type of a license key?
    • How to call UpdateLicenseInfo and update UserData with an XML fragment
    • How to call ParseResultsEx from C++
    • How to configure Outlook's security warning
    • How to validate if a license was revoked on the server?
    • How to use Generic license keys
    • How to issue activation keys with multiple activations from an eCommerce provider
    • How to ship an evaluation version of your software?
    • How to set the maintenance plan duration from an ecommerce provider
    • How to get the last modified licenses
    • How to protect a Java Desktop Application with QLM Enterprise
    • How to protect a Mac OS X application with QLM Enterprise
    • How to protect an iOS App with QLM Enterprise
    • How to protect an Android App developed in Xamarin with QLM
    • How to protect an Android App with QLM Enterprise
    • How to protect a cross platform Qt application with QLM Enterprise
    • How to automatically invoke a webhook using Scheduled Tasks
    • How to configure the QLM License Wizard to allow Offline Activation only
    • HTTP API examples
    • How to load an existing XML Settings file in the Protect Your App wizard
    • Common Searches
    • How to add the QLM User Controls to the Visual Studio Toolbox
    • How to filter data by feature
  • ❔FAQ
    • How do I change the license binding to a different identifier?
    • How to reserve licenses for a list of users
    • Bloated License Server Database
    • Why are enabled features not shown when I hover over an Activation Key?
    • Loading different versions of QlmLicenseLib.dll from the same process
    • Available options for controlling the expiry date of a license
    • GDPR Data Deletion Request
    • How to test a connection to a SQL Server
    • Seeing activation notifications from the License Server?
    • How to show the Generate Keys tab
    • Difference between the License Expiry Date and the Maintenance Plan Expiry Date
    • Where are my products' definition stored?
    • How to restore the default searches in the QLM Management Console
    • You have exceeded the maximum number of activations allowed per system.
    • How to configure the QLM Management Console Date format to match your SQL Server's
    • What is the difference between cloud-based and on-premise floating licenses?
    • MaxDaysOffline
    • Which QLM features are available on each platform?
    • Which edition of QLM should I use?
    • How to check which features are enabled in your QLM license
    • Product definition changes are not saved
    • How to create an Activation Key with Product Properties
    • Error: Configuration system failed to initialize
    • How to get an Organization ID from an Organization Name
    • Why does ReadKeys return the wrong key
    • How to prevent reuse of deactivated keys
    • How to recover from a corrupted xml configuration file
    • How to read Product Properties from a data set
    • Why does ReadKeys still return a key after calling DeleteKeys?
    • How to delete a record for a specific ComputerID
    • How to use Fiddler to diagnose connectivity issues with the QLM License Server
    • How to fix the QLM Management Console opening off the screen
    • SQL Conversion Error
    • QLM Management Console and QLM License Server Versions
    • QLM client side requirements
    • Error parsing results: Unexpected DTD declaration
    • How to limit the number of deactivations
    • How to reinitialize the built-in Demo products
    • How to allow multiple product versions on the same system
    • How to check if features were updated on the server
    • Re-signing the xml settings file after modification
    • How to activate a license programmatically from VC++
    • How to prevent the QLM Management Console from overwriting local email templates
    • Property path is incorrect for type
    • How to bind a license to your own unique identifier
    • How to create a search to show licenses associated to a Reseller / User Group
    • The number of allowed activation keys per client has now been exceeded
    • How to bind a license to multiple identifiers, serially
    • How to determine the version of the License Server
    • Access is denied message when validating a signature
    • QLM v11 GDPR Support
    • How to create a QlmLicense object in VB6 or VBA
    • Error: Invalid column name 'xxx' in the QLM Management Console
    • QLM License Wizard cannot read a settings file when located on a mapped drive
    • QLM Portal - Remember User Name / Password
    • QLM on Non-Windows Platforms
    • How to increase the number of activations per license
    • How to change the date format in the QLM Management Console
    • ConfuserEx
    • How to prevent an Excel sheet from opening if macros are disabled
    • Cannot access a disposed object
    • License Wizard or Activation Form is displayed eventhough the license is activated
    • Error when calling Analytics AddInstall method
    • How to activate your trial or purchased license of Quick License Manager
    • When is the LastAccessedDate field updated
    • How to cleanup an orphaned QLM installation
    • QLM Demo License Server
    • How to prevent a user from running multiple instances of your app
    • Could not find product x.y
    • How to update the CommunicationEncryptionKey and AdminEncryptionKey
    • Distinguish between a trial and a subscription
    • How to get the activated computers for a given activation key
    • Why is the license not stored (or deleted) at the machine level even if the user is an Administrator
    • How to use late binding in Excel and Access
    • Error 80131700, 8013101b, 80131515 when instantiating a QLM object
    • How to get information about a license key
    • How to create a product with STD and PRO editions as features
    • How does QLM protect an application hosted on a Virtual Machine (VM)?
    • How to tighten binding to a virtual machine
    • What happens to QLM license keys when a user upgrades to Windows 10
    • Microsoft .NET Framework Client 4.0 could not be installed.
    • Getting Started with Quick License Manager Enterprise
    • Getting Started with Quick License Manager Express
    • Getting Started with Quick License Manager Professional
    • How to extend a subscription in offline mode
    • Handling computer ID with multibyte characters
    • PHP Sample to generate a license key
    • How to get customer information for a license key?
    • How I got the Sample QLM Delphi program working on my computer
    • What is the syntax of is_features
    • All orders search does not show any records
    • Should I use the .NET 4.0 or the .NET 2.0 DLLs?
    • Which QLM DLLs do I need to distribute with my application
    • Terminal Server Support
    • How to get the QLM License Server Event Log
    • Which DLLs do you need to distribute with your C++ application
    • QLM still shows Demo even after activating your purchased license
    • Registering the QLM Dlls for VB6, Office and non .NET apps
    • StoreKeys options
    • QLM Pricing
    • What Operating Systems does Quick License Manager support?
    • Can a user back date their computer to run an trial version?
    • StoreKeys and ReadKeys
    • How to ship an evaluation version of your software
    • How to configure QLM Pro to connect to your local License Server
    • How can I use more than 32 features with QLM Pro?
    • How to disable features in the web service
    • How to parse data returned by GetDataSet or GetDataSetEx
    • How does QLM protect against users requesting additional activations because a computer died
    • What DLLs do you need to ship with your application?
    • What version of QlmLicenseLib.dll should I use?
    • How to revoke a license ?
    • Protect calls to GetActivationKey
    • Registration-Free Activation of QlmLicenseLib.dll
    • How to hide sensitive information from a third-party developer
    • How to update the ClientVersion / ApplicationVersion
    • How to change the name of your product
  • ⁉️Troubleshooting
    • Diagnosing network connectivity issues with the QLM License Server
    • Tool to test network connectivity
    • Troubleshoot issues with the QLM WordPress / WooCommerce plugin
    • How to Diagnose ReadKeys issues
    • How to diagnose "The license key is invalid" message
    • Could not load file or assembly 'DevExpress.XtraWizard.v10.2, Version=10.2.3.0
    • Error calling any QLM API
    • Your license key does not allow you to call the QLM Pro API
    • An attempt was made to load a program with an incorrect form
    • IsolatedStorageException calling StoreKeys in an ASP.NET application
    • Error instantiating QLM object in Microsoft Excel
    • Failed to validate request because the time between server and client is not synchronized
    • Failed to decrypt data message
    • Error: The private key is not base64-encoded.
    • Could not load the file or assembly 'DevExpress.XtraWizard.v10.2
  • 🅱️Blog
    • Providing full source code – the comforting myth
    • Iterative Releases
    • What is online license activation?
    • Grow your company with steady recurring revenue
    • Binding a license key to a computer
    • Ease the license activation burden for large enterprises
    • Integrate a "Check for Updates" feature with your software license protection process
    • Quick License Manager integrates with commerce provider FastSpring
  • 👩‍🔬Customer Contributions
    • QLM Pro .NET Control Sample in VB.NET
    • QLM Express - Fortran Interface
    • Protecting a C++ Builder application
  • ⚖️Legal stuff
    • QLM Express Licensing Terms
    • QLM Pro Licensing Terms
    • QLM Enterprise Licensing Terms
    • QLM Document Protection Licensing Terms
    • QLM SDK Protection Licensing Terms
    • What is the QLM Yearly Maintenance Plan
  • 📹Video Tutorials
  • ⚙️API Reference
    • Overview
    • .NET API
      • IQlmLicense
        • Enums
          • ECommunicationProtocolType
          • EComputerType
          • ELicenseBinding
          • ELicenseModel
          • ELicenseStatus
          • ELicenseType
          • EOfflinePeriodExceededAction
          • EOrderStatus
          • EServerErrorCode
          • EStoreKeysOptions
          • EStoreKeysTo
        • Properties
          • DateTamperingGracePeriod
          • ELicenseStatus
          • EnableSoapExtension
          • EncryptionAlgorithm
          • EvaluationPerUser
          • ExpiryDateRoundHoursUp
          • FavorMachineLevelLicenseKey
          • FloatingLicenseMaxOfflineDuration
          • LicenseBinding
          • LimitTerminalServerInstances
          • MaxDaysOffline
          • OfflinePeriodExceededAction
          • Private Key
          • PublicKey
          • SimulatedDateTime
          • StoreKeysLocation
          • StoreKeysOptions
          • Timeout
          • UniqueSystemIdentifierExceptions
          • ValidateOnServer
        • Client Side Methods
          • CreateDeactivationCode
          • CreateLicenseKey
          • CreateLicenseKeyEx
          • CreateLicenseKeyEx2
          • CreateLicenseKeyEx3
          • CreateLicenseKeyEx4
          • CreateLicenseKeyEx5
          • DefineProduct
          • DeleteCookie
          • DeleteKeys
          • DeleteKeysEx
          • FormatLicenseKeyEx
          • GetALicenseTypeFromKey
          • GetDaysOffline
          • GetNumberOfRunningInstances
          • GetStatus
          • IsEvaluation
          • IsFeatureEnabled
          • IsFeatureEnabledEx
          • IsLicenseKeyACloudLicense
          • IsLicenseKeyAFloatingLicense
          • IsLicenseKeyAPermanentLicense
          • IsLicenseKeyASubscriptionLicense
          • IsLicenseKeyATrialLicense
          • IsLicenseModelACloudLicense
          • IsLicenseModelAFloatingLicense
          • IsLicenseModelAPermanentLicense
          • IsLicenseModelASubscriptionLicense
          • IsLicenseTypeACloudLicense
          • IsLicenseTypeAFloatingLicense
          • IsLicenseTypeAPermanentLicense
          • IsLicenseTypeASubscriptionLicense
          • IsLicenseTypeATrialLicense
          • IsLicenseModelATrialLicense
          • IsValid
          • LaunchProcess
          • LoadSettings
          • ParseProductProperties
          • ParseResults
          • ReadActivatedLicenseFile
          • ReadCookie
          • ReadKeys
          • ReadLicenseFile
          • ReadLicenseXml
          • ReadProductPropertiesFile
          • StoreCookie
          • StoreKeys
          • StoreKeysEx
          • ValidateFile
          • ValidateLicense
          • ValidateLicenseEx
          • ValidateLicenseEx2
          • ValidateLicenseEx3
          • ValidateSignature
          • VerifyActivatedLicenseFile
        • Application Methods
          • ActivateLicense
          • ActivateLicenseByAuthorizationCode
          • ActivateLicenseByAuthorizationCodeEx
          • ActivateLicenseByAuthorizationCodeEx2
          • ActivateLicenseByBasicAuthentication
          • ActivateLicenseByField
          • ActivateLicenseDialog
          • ActivateLicenseEx
          • ActivateLicenseForUser
          • ActivateLicenseForUserEx
          • ActivateLicenseForUserEx2
          • ActivateLicenseForUserEx3
          • ActivateLicenseForUserEx4
          • AddUser
          • AddUserEx
          • AddUserEx2
          • AddUserEx3
          • CreateComputerBoundTrialKey
          • DownloadLicenseFileFromServer
          • DownloadProductPropertiesFromServer
          • GetActivatedSystems
          • GetActivationKeyFromLegacyKey
          • GetActivationKeyFromOrderID
          • GetActivationKeyFromUserData
          • GetActivationLog
          • GetActivationLogLicenseInfo
          • GetCustomerInfo
          • GetDashboardInfo
          • GetDashboardLicenseInfo
          • GetLatestEligibleVersion
          • GetLatestVersion
          • GetLicenseFile
          • GetLicenseInfo
          • GetMaintenancePlanRenewalDate
          • GetMaintenancePlanRenewalDateByComputerKey
          • GetOrder
          • GetProductInfo
          • GetProductProperties
          • GetRemainingActivations
          • GetServerProperty
          • GetSubscriptionExpiryDate
          • GetUserData
          • GetUserDataFromActivationLog
          • IsIllegalComputer
          • IsLicenseKeyActivated
          • IsLicenseKeyRevoked
          • IsLicenseKeyValid
          • Ping
          • PingEx
          • ReactivateLicense
          • ReactivateLicenseEx
          • ReleaseLicense
          • ReleaseLicense
          • ReleaseLicense
          • ReleaseLicense
          • ReleaseLicense
          • RequestAuthorizationCodeForActivation
          • SetUserData
          • SetUserDataInActivationLog
          • SubscribeToMailList
          • UpdatePrivacyConsent
          • UpdateUser
          • UpdateUserEx
          • UpdateUserEx2
          • UpdateUserEx3
          • UpdateUserEx4
          • ValidateLicenseFile
          • ValidateLicenseFileContent
          • ValidateLicenseOnServer
          • ValidateLicenseOnServerEx
          • ValidateLicenseOnServerEx2
          • ValidateLicenseOnServerEx3
          • WriteProductPropertiesFile
        • Management Methods
          • AddOrganization
          • CreateActivationKey
          • CreateActivationKeyEx
          • CreateActivationKeyWithExpiryDate
          • CreateActivationKeyWithExpiryDateEx
          • CreateActivationKeyWithExpiryDateEx2
          • CreateActivationKeyWithExpiryDateEx3
          • CreateActivationKeyWithExpiryDateEx4
          • CreateActivationKeyWithExpiryDateEx5
          • CreateActivationKeyWithExpiryDateEx6
          • CreateActivationKeyWithExpiryDateEx7
          • CreateActivationKeyWithExpiryDateEx8
          • CreateActivationKeyWithExpiryDateEx9
          • CreateOrder
          • CreateOrderEx
          • CreateUserAccount
          • DeleteLicense
          • DeleteOrganization
          • DeleteUser
          • DeleteUserAccount
          • DeleteUserEx
          • DownloadProducts
          • GetCustomersInfo
          • GetCustomersInfoEx
          • GetDataSet
          • GetDataSetEx
          • GetDataSetEx2
          • GetOrganization
          • RenewSubscription
          • RevokeLicense
          • SetMaintenancePlanRenewalDate
          • SetProductProperties
          • UpdateActivationLogInfo
          • UpdateLicenseInfo
          • UpdateLicenseKey
          • UpdateOrderStatus
          • UpdateOrganization
          • UpdateUserAccount
          • UpgradeLicense
          • UpgradeLicenseEx
          • UploadProducts
      • ILicenseInfo
        • Methods
          • LoadLicenseXml
        • Properties
      • IQlmHardware
        • GetActiveDirectoryAppDomain
        • GetActiveDirectoryComputerDomain
        • GetBiosUuid
        • GetFirstMACAddress
        • GetLoggedInUser
        • GetMACAddresses
        • GetMachineName
        • GetMotherBoardSerialNumber
        • GetSMBiosUUID
        • GetTerminalServerUniqueIdentifier
        • GetUniqueCombinedSystemIdentifier
        • GetUniqueSystemIdentifier1
        • GetUniqueSystemIdentifier2
        • GetUSBSerialNumber
        • GetUSBSerialNumber
        • GetVolumeSerialNumber
        • IsRunningAsUwp
        • RunningInDockerContainer
        • RunningOnHyperV
        • RunningOnTerminalServer
        • RunningOnVirtualBox
        • RunningOnVM
        • RunningOnVMWare
      • IQlmCustomerInfo
        • Properties
        • Methods
          • ParseResults
      • IQlmOrganizationInfo
        • Properties
      • IQlmAnalytics
        • Methods
          • AddInstall
          • AddInstallEx
          • ReadInstallID
          • RemoveInstall
          • UpdateInstall
          • UpdateInstallEx
          • UpdateLastAccessedDate
          • WriteInstallID
      • IQlmCloudFloatingLicenseHelper
        • Methods
          • CheckinLicense
          • CheckoutLicense
          • DeactivateAllExpiredLicenses
          • GetOfflineInformation
          • GoOffline
          • GoOnline
          • ProcessOrphanedInstances
        • Properties
      • IQlmFloatingLicenseHelper
        • Enums
          • ELicenseKind
          • QlmActivationStatus
        • Properties
        • Methods
          • GetFloatingLicenseLocation
          • GetLicenseKind
          • Init
          • Load
          • PublishFloatingLicenseLocation
          • RegisterNode
          • UnregisterNode
          • ValidateLicense
      • IQlmFloatingLicenseMgr
        • Properties
      • IQlmProductInfo
      • IQlmProductProperties
        • Properties
        • Methods
          • AddProductProperty
          • Deserialize
          • GetProperties
          • GetProperty
          • Serialize
          • ValidateSignature
      • IQlmProductProperty
        • Properties
      • LicenseValidator
        • Properties
        • Methods
          • DeleteAllKeys
          • ValidateLicense
          • ValidateLicense
          • ReactivateKey
          • ValidateLicenseAtStartup
          • ValidateLicenseAtStartup
          • ValidateLicenseAtStartup
    • HTTP Methods
      • ActivateKey
      • ActivateKeyByAuthorizationCodeHttp
      • AnalyticsAddInstallHttp
      • AnalyticsRemoveInstallHttp
      • AnalyticsUpdateInstallHttp
      • AnalyticsUpdateLastAccessedDateHttp
      • EnableMaintenancePlan
      • GetActivationKey
      • GetActivationKeyWithExpiryDate
      • GetLatestVersionHttp
      • PingHttp
      • ReleaseLicenseHttp
      • RenewMaintenancePlan
      • RenewSubscriptionHttp
      • RequestAuthorizationCodeForActivationHttp
      • RetrieveActivationKeyHttp
      • RevokeLicenseHttp
      • SubscribeToMailListHttp
      • UpdateLicenseHttp
      • UpdatePrivacyConsentHttp
      • UpdateUserInformation
      • UpgradeLicense
      • ValidateLicenseHttp
    • License Wizard User Control
      • UI Properties
      • Image Properties
      • Behavior Properties
      • User Registration Properties
      • License Properties
      • On-premise Floating License Properties
      • Events
    • Activation User Control
      • Properties
      • Events
Powered by GitBook
On this page
Edit on GitHub
  1. License Server

Server Properties

Following is a list of all the server properties that control the behavior of the QLM License Server. These properties can be set from the QLM Management Console under Manage Keys / Sites / Server Properties.

Name
Description

ACTIVATION

activationByAuthorizationCodeEmailTemplate

The Email template to use when performing an activation by authorization code.

activationByAuthorizationCodeEnableSMS

When activating a license by authorization code, send the authorization code by SMS message if the user has a mobile phone number specified.

activationByAuthorizationCodeExpiryDuration

The expiry duration, in minutes, of an authorization code.

activationByAuthorizationCodeMaxAttempts

The maximum number of failed attempts to activate a license with a given authorization code.

autoCreateCustomerDuringActivation

Automatically create a customer when the activation process specifies an email of a customer that is not already in the database. The default value is false.

captureIPAddress

When activating a license, automatically capture the client system's IP address and record it on the License Server.

smsAccountNumber

To send an SMS message, you must use a communications platform that can send SMS messages. QLM currently supports Twilio as an SMS Provider. Specify the SMS Provider Account SID.

smsAuthenticationToken

SMS provider Authentication Token.

smsPhoneNumber

SMS phone number that will be sending text messages.

updateComputerNameWhenReactivating

Update the computer name when reactivating a license.

ANALYTICS

analyticsGetsUseAdminEncryptionKey

When true, all Analytics Getxxx API methods require the use of the AdminEncryptionKey.

customData1Caption

Caption of the Custom Data 1 field used in Analytics Reports.

customData2Caption

Caption of the Custom Data 2 field used in Analytics Reports.

customData3Caption

Caption of the Custom Data 3 field used in Analytics Reports.

AUTHENTICATION

autoCreateUserAccount

Instructs the server to automatically create a QLM user account when a customer is created.

cloudDrive_azureClientId

cloudDrive_googleClientId

cloudDrive_googleP12KeyPath

Path to the P12 private key generated by Google for the service. The path can be a local path or a URL.

wizard_azureClientId

wizard_facebookAppId

wizard_facebookAppSecret

FacebookApp secret used when authenticating with Facebook.

wizard_facebookOAuthRedirectURI

FacebookApp OAuth Redirect URI as defined in your Facebook App.

wizard_googleClientId

wizard_googleSecretId

Google Secret ID used when authenticating with Google.

CUSTOMER SITE

activationPage_ComputerNameRequired

Determine if the Computer Name field is required when performing an offline activation. The default value is false.

allowGenericEmailProviders

Determines if generic email providers (such as hotmail, gmail) can request license keys. You can customize the list of generic email providers by setting the genericEmailProviders server property.

bccRecipients

When an email is sent from the QlmCustomerSite, automatically bcc the recipients specified in this setting. You can add a semi-comma-separated list of emails.

ccRecipients

When an email is sent from the QlmCustomerSite, automatically cc the recipients specified in this setting. You can add a semi-comma-separated list of emails.

customerSiteLoggingLevel

Set the logging level of the QLM Self Help.

customerSiteLogo

URL to an image file representing your company's logo. The URL can be relative or absolute. If it's a relative URL, the logo file must be uploaded to the server. The image should have a transparent background. The expected size is 112x80.

customerSiteTitle

Title of the Customer Site pages.

customerSiteUseLocalizedCaptions

Specify whether the QLM Self Help should use the built-in localized messages. If you have customized the QLM Self Help pages with your own text, you must set this property to false. When true, QLM will use pre-localized captions.

customerSiteUseLocalizedCustomPages

Specify whether the QLM Self Help should try to load your own customized localized pages. To create a localized version of the QLM Self Help pages, you must make a copy of each page, rename the page to <original_name>_<language_code>.aspx and translate the content. For example, to translate QlmWebActivation.aspx to French, create a file called QlmWebActivation_fr.aspx with the translated content.

disallowedEmailMessage

Customize the message to display to the end-user when the user's email address is rejected.

disallowedIPAddressMessage

Customize the message to display to the end-user when the user's IP address is blocked.

disposableEmailDetectorUrl

Configure a custom URL to detect disposable email accounts and reject them. We currently support disposable.debounce.io.

errorMessageEmailNotFound

When requesting license keys to be sent by email from the QLM Self Help page, if the specified email is not found in the system, you can customize the error message displayed to the user. Example: A software activation key was not found for this email address. Please <a href="https://soraco.co" style="color:red">click here</a> for more information.

forceLicenseModelToTrial

Force the license model of all license keys created by the Trial Registration Form to trial. This is the default and recommended value.

includeRevokedLicensesWhenEmailing

When emailing a customer the list of their license keys, specify whether to include revoked license keys.

includeExpiredLicensesWhenEmailing

When emailing a customer the list of their license keys, specify whether to include expired license keys.

isCompanyRequired

Determines if the company field is mandatory in the Trial Registration Form.

isCountryRequired

Determines if the country field is mandatory in the Trial Registration Form.

isEmailRequired

Determines if the email field is mandatory in the Trial Registration Form.

isFullNameRequired

Determines if the full name field is mandatory in the Trial Registration Form.

isPhoneRequired

Determines if the phone field is mandatory in the Trial Registration Form.

licenseInfoPage_ShowActivationDateColumn

Show the Activation Date column on the list of registered computers on the License Information page.

licenseInfoPage_ShowAnalytics

When displaying the License Information in the QLM Self Help, specify whether Analytics information should be shown.

licenseInfoPage_ShowComputerIDColumn

Show the Computer ID column on the list of registered computers on the License Information page.

licenseInfoPage_ShowComputerNameColumn

Show the Computer Name column on the list of registered computers on the License Information page.

licenseInfoPage_ShowFeatures

When displaying the License Information in the QLM Self Help, specify whether the Features should be shown.

licenseInfoPage_ShowLastAccessedDateColumn

Show the Last Accessed Date column on the list of registered computers on the License Information page.

licenseInfoPage_ShowLicenseModel

When displaying the License Information in the QLM Self Help, specify whether the License Model should be shown.

licenseInfoPage_ShowMaintenancePlan

When displaying the License Information in the QLM Self Help, specify whether the Maintenance Plan Expiry Date should be shown.

licenseInfoPage_ShowProductProperties

When displaying the License Information in the QLM Self Help, specify whether the Product Properties should be shown.

licenseInfoPage_ShowProductPropertiesCategory

When displaying the License Information in the QLM Self Help, specify whether the Product Properties' Category should be shown.

licenseInfoPage_ShowRemainingDeactivations

When displaying the License Information in the QLM Self Help, specify whether the Remaining Deactivations should be shown.

maxRegistrationsPerUser

The maximum number of registrations allowed per user (email). The default is 1.

minimumDaysBetweenTrials

The number of days a trial user must wait before requesting another trial. A value of -1 indicates an infinite period. This setting works in conjunction with maxRegistrationsPerUser.

minimumDaysBetweenTrialsDateField

The date field to use when evaluating the number of days elapsed since the last trial. The options are: OrderDate (the date the last trial license was created), SubscriptionExpiryDate (the expiry date of the last trial license) or ActivationDate (the date the last trial license was activated).

preventDeactivationPeriod

Prevent a user from deactivating a license if it was activated for a period less than the specified value (in minutes). This should be used when implementing cloud-based floating licenses to prevent customers from easily deactivating a checked-out license.

preventMultipleRegistrationsPerDomain

Prevent a user from requesting a trial license key if another user from the same domain has already requested a trial. This property works in conjunction with the genericEmailProviders property that allows you to configure generic email providers such as gmail.com and hotmail.com.

preventMultipleRegistrationsPerMajorVersion

Prevent a user from requesting multiple license keys for the same product major version. When true, a user can request license keys for different major versions of the product. The default value is True.

preventMultipleRegistrationsPerMinorVersion

Prevent a user from requesting multiple license keys for the same product minor version. When true, a user can request license keys for different minor versions of the product. The default value is False.

preventMultipleRegistrationsPerProduct

Prevent a user from requesting multiple license keys for the same product. When true, a user can request license keys for different products. The default value is True.

preventRegistrationsIfCustomer

Prevent a user from requesting a trial license key if another user from the same domain has already purchased this product. This property does not impact customers that use generic Email Providers.

preventRegistrationFromExistingIPAddress

Checks if the IP address of the user matches an IP address of an existing customer. If a match is found, the request is rejected.

privacyPolicyUrl

Set the URL to your Privacy Policy document. When a URL is specified, the Trial Registration form will display a checkbox requiring the user to consent to the privacy policy before registering for a trial.

productMinorVersionSuffix

Suffix used to replace the product's minor version on the Offline Activation page when showProductMinorVersion is set to false.

registerButtonDoneUrl

The URL that the page redirects to in the Trial Registration Form when the user clicks the Done button after registration is completed.

registrationCustomResponse

registrationFormCaption

The caption of the License Registration Form used to issue trial licenses (QlmRegistrationForm.aspx)

registrationFormTitle

Title of the License Registration Form used to issue trial licenses (QlmRegistrationForm.aspx)

registrationPage_showCompany

Show the Company field on the Trial Registration Page.

registrationPage_showCountry

Show the Country field on the Trial Registration Page.

registrationPage_showFullName

Show the Full Name field on the Trial Registration Page.

registrationPage_showPhone

Show the Phone field on the Trial Registration Page.

registrationPage_showReCaptcha

Show the reCAPTCHA field on the trial registation page.

requestKeysExcludeExpired

When requesting license keys to be emailed from the QLM Customer Site, do not send expired licenses.

requestKeysExcludeRevoked

When requesting license keys to be emailed from the QLM Customer Site, do not send revoked licenses.

requestKeysExcludeTrials

When requesting license keys to be emailed from the QLM Customer Site, do not send trial licenses.

setOrganizationFromEmail

When customers request a trial license, this setting instructs QLM to identify and set the organization based on the customer's email address.

showActivateLink

Show the Activate link on the main QLM Self Help page.

showComputerKeyFieldWhenGeneratingLicenseFile

For offline activation, determines whether to show the Computer Key field when the Generate License file checkbox is checked.

showComputerNameForActivation

When true, a text field is added to the QLM Self Help Activation page that allows the user to enter a Computer Name.

showDeactivateLink

Show the Deactivate link on the main QLM Self Help page.

showDeactivationVerificationCode

When set to true, the QLM Self Help Deactivation Page will require the user to enter a Deactivation Verification code in order to deactivate a license. The code is generated by the QLM License Wizard when a user deactivates a license offline.

showEmailLicenseKeysLink

Show the Email License Keys link on the main QLM Self Help page.

showGenerateLicenseFileCheckbox

When true, the QLM Customer Site Activation page displays a checkbox to generate a license file. A license file is required for cross-platform applications (non-Windows). The license file also contains the Product Properties so it may be used on Windows as well to get the license's Product Properties.

showGetLicenseInformationLink

Show the Get License Information link on the main QLM Self Help page.

showProductMinorVersion

Set this property to true to display the product's minor version on the Offline Activation page. When set to false, the minor version is replaced with the value specified by the server property productMinorVersionSuffix.

showProductVersion

Set this property to true to display the product's version on the Offline Activation page.

showSubscribeToMailList

When set to true, the QLM Self Help Trial Registration Form displays a checkbox allowing the user to subscribe to the QLM mail list. The subscribe to mail list is a field (IncludeInMailList) that you can use in your searches to exclude some customers when sending emails via QLM scheduled tasks.

subscribeToMailListDefaultState

Sets the default state of the QLM Self Help Trial Registration Form's "Subscribe to mail list" checkbox.

GMAIL API

gmailApiClientID

Client ID of the Gmail application.

gmailApiClientSecret

Client Secret of the Gmail Application

gmailApiImageHandling

Select how to process embedded images

gmailApiSenderEmail

Email address of the sender

The default value of the Lifecycle stage property when creating a new contact. Possible values: subscriber, lead, marketingqualifiedlead, salesqualifiedlead, opportunity, customer, evangelist, other. The values are case-sensitive.

useServiceAccount

To send emails from the QLM License Server, QLM Customer Site, QLM Portal or the QLM Agent, you must configure a Gmail Service account and use this account when sending emails.

This is required to circumvent the authentication step required by Gmail to authenticate the user. This authentication step is not possible when sending emails from a service like the QLM Agent or a web application like the QLM Portal or the QLM Customer Site.

HUBSPOT

actionWindowHeight

Height of the action window in the HubSpot CRM Card.

actionWindowWidth

Width of the action window in the HubSpot CRM Card.

createContactFromTrialRegistration

If HubSpot integration is enabled, automatically create a Contact in HubSpot when a user registers in the QLM Trial Registration Form.

createDealFromTrialRegistration

If HubSpot integration is enabled, automatically create a Deal in HubSpot when a user registers in the QLM Trial Registration Form.

createQlmCustomerInHubspot

Automatically create or modify a contact in HubSpot when a customer is created or modified in QLM. Note that contacts are never deleted from HubSpot.

defaultLeadStatus

The default value of the Lead Status property when creating a new contact. Possible values: NEW, OPEN, IN_PROGRESS, OPEN_DEAL, UNQUALIFIED, ATTEMPTED_TO_CONTACT, CONNECTED, BAD_TIMING. The values are case-sensitive.

defaultLifecycleStage

The default value of the Lifecycle stage property when creating a new contact. Possible values: subscriber, lead, marketingqualifiedlead, salesqualifiedlead, opportunity, customer, evangelist, other. The values are case-sensitive.

MICROSOFT GRAPH API

microsoftGraphApiClientID

Client ID of the application.

microsoftGraphApiClientSecret

Client Secret of the application.

microsoftGraphApiSenderEmail

Email address of the sender.

microsoftGraphApiTenantID

Tenant ID of the application

OPTIONS

allowActivatingOlderVersion

Allow users to activate a license of a product version smaller than the original one. For example, if a customer purchases Version 2.0, setting this property to true will allow the user to activate their license for Version 1.0.

allowMultipleProductVersions

OnSameSystem

By default, if a user tries to activate a new version of a given product on the same computer, QLM will reuse the existing activation and overwrite previous data. If you need to allow a customer to install different versions of your product on the same system and activate each separately, set this property to true.

autoCreateOrganization

When creating a user from the HTTP method UpdateUserInformation or from the QLM Portal or from the QlmCustomerSite, specify whether to automatically create an organization based on the company name or email address.

bannedEmailProviders

List of email providers that are banned from requesting trials. You can enter a partial string such as @spam.com. The comparison is case insensitive and checks if the email contains the value in the banned list.

blockComputerIDs

A || separated list of Computer IDs that are blocked from activating or validating a license on the License Server.

blockIPAddresses

A semi-comma-separated list of IP Addresses that are blocked from contacting the License Server. CIDR notation is also supported.

countRevokedTrials

Determine whether revoked trials should be taken into account when evaluating the numberOfTrialLicensesAllowedPerClient.

dbMaxRecords

Controls the maximum number of license keys that can be created.

defaultCommerceProvider

The default eCommerce provider. This eCommerce provider is used if the is_vendor argument is not specified in the URL.

defaultLicenseModelWhenDurationSet

When creating a license key with an expiry duration, if the LicenseModel value is not set, the system will automatically set the LicenseModel to this value. Possible values are: permanent | trial | subscription.

defaultLicenseModelWhenExpiryDateSet

When creating a license key with an expiry date, if the LicenseModel value is not set, the system will automatically set the LicenseModel to this value. Possible values are: permanent | trial | subscription.

defaultQlmVersion

The default version of the QLM Engine. This version is used if the is_qlmversion argument is not specified in the URL.

emailProvider

Select the email provider to use when sending emails from the server. The currently supported email providers are: SMTP and Microsoft Graph API

enableCustomUrlArgs

When calling HTTP methods on the server, allow passing a special is_args argument that uses custom server properties for resolution.

enforceMaxTrialsMatchComputerIDOnly

When enforcing the numberOfTrialLicensesAllowedPerClient, determine if a client is the same by matching the client's Computer ID. If this property is false, the determination is based on Computer ID and Computer Name.

enforceMaxTrialsWhenActivating

Controls whether QLM limits the number of trial keys per system. The number of trial keys allowed per system is controlled by the numberOfTrialLicensesAllowedPerClient property.

enforceTrialsMatchComputerIDOnly

When enforcing the numberOfTrialLicensesAllowedPerClient, match the client based on the ComputerID only. By default, QLM will try to match the ComputerID as well as the Computer Name.

genericEmailProviders

List of email providers that are considered "generic" such as gmail.com, yahoo.com, etc.. You can enter a partial string such as @hotmail.com. The comparison is case insensitive and checks if the email contains the value in the list. You can configure the Trial Registration Form to allow or deny requests originating from these providers.

historyTableLogRelease

When a license is deactivated, QLM automatically logs a copy of the license record prior to deactivation in the QLM history table. You can turn off this feature by setting the historyTableLogRelease property to false. If you use QLM Pro Cloud-based floating licenses, it is highly recommended to set the historyTableLogRelease to false. On the other hand, if you turn off this feature, the maxReleaseCount related features are no longer supported.

historyTableLogUpgrade

When a license is upgraded, QLM automatically logs a copy of the license record prior to the upgrade in the QLM history table. You can turn off this feature by setting the historyTableLogUpgrade property to false.

includeFullNameInEmailAddress

When enabled, the customer's full name is embedded in the email address with the following syntax: John Smith<john_smith@soraco.co>. This syntax is recommended to minimize the likelihood of mail servers flagging the email as spam.

licenseKeyFormatGroupSize

When a license key is generated, a separator (-) will be inserted every n characters. This property specifies the size of n.

licenseKeyFormatMaxGroupSize

When a license key is generated, a separator (-) will be inserted into every n characters as specified by the licenseKeyFormatGroupSize property. The last group in the license key may not be equal to n. This property specifies the maximum number of characters in the last group.

loggingLevel

Controls the QLM logging level. Set this value to 15 for the highest possible logging level.

maintenancePlanGracePeriod

An expired maintenance plan cannot be renewed. This property allows for a grace period after expiry where the maintenance plan can still be renewed.

maintenancePlanPeriodInDays

Default maintenance plan period when the maintenance plan is enabled.

maxActivationsEnforcedOnVMsOnly

Enforce the maxActivationsPerSystem property only if the ComputerType is VM.

maxActivationsPerDay

Limits the number of activations that can be performed in one day.

maxActivationsPerSystem

Limit the number of activations on the same system. This is useful in the context of a virtual machine to prevent users from cloning VMs and activating the same license on multiple virtual machines.

maxNewKeysPerDay

Limits the number of new activation keys that can be created in one day.

maxRecordsToFetchPerCustomer

When retrieving the license keys associated with a customer, specify the maximum records that can be retrieved. This is currently used when retrieving license information from HubSpot. The default value is 50.

maxReleaseCount

The maximum number of times an end-user can release a license.

maxReleaseCountAbsolute

Determines whether the value of maxReleaseCount is absolute or proportional to the number of licenses. For example, if maxReleaseCount is 4 and the customer has 5 licenses, setting maxReleaseCountAbsolute to false implies that the customer can deactivate licenses 20 times. Setting maxReleaseCountAbsolute to true would allow the customer to deactivate licenses 4 times.

maxReleasePerClient

When counting the number of released licenses for a given activation key, count only the ones associated to a specific client. By default, QLM counts all the released licenses for a given activation regardless of the client system.

maxReleasePeriodInDays

When counting the number of released licenses, only count the ones that have been released in the past "maxReleasePeriodInDays" days. For example, if you want to allow a user to release a license twice per month, set maxReleasePeriodInDays to 30 and maxReleaseCount to 2.

maxTrialDuration

The maximum duration of a trial that can be set via the QLM Customer Site Registration page.

numberOfTrialLicensesAllowedPerClient

Limits the number of trial licenses that can be activated by a client. A client is uniquely identified by a ComputerID and a ComputerName.

releaseLicenseRequiresAuthentication

By default, releasing (de-activating) a license via the ReleaseLicenseHttp method requires the user to authenticate. This property allows you to relax this requirement and invoke ReleaseLicenseHttp without authentication.

releaseLicenseRequiresVerificationCode

Specify whether a deactivation verification code is required when calling ReleaseLicenseHttp.

releaseLicenseUseAdminEncryptionKey

By default, releasing (de-activating) a license programmatically does not require the AdminEncryptionKey property to be set. This property enforces the need to set the AdminEncryptionKey property prior to calling ReleaseLicense.

renewMaintenancePlanWhenSubscriptionRenewed

When renewing a subscription via the RenewSubscriptionHttp method, automatically set the Maintenance Renewal Date to the same value as the Subscription Expiry Date.

requireComputerKeyMatchWhenValidatingOnServer

When performing server-side license validation, if the Computer Key on the client does not match the Computer key on the server, return an error. This can happen when the license is updated on the server (expiry date extension, feature update, seats update, offline deactivation/activation) and the client has not reactivated the license yet.

restrictManagementApiByIP

Calling the QLM Management API requires knowledge of the AdminEncrptionKey. For additional security, you can limit access to the QLM Management API to a set of IP addresses (semi-comma separated). Note that the local IP 127.0.0.1 is implicitly allowed to call any QLM Management API. Use this feature with care because you could lock yourself out of QLM. If you do lock yourself out, you must delete the value of the restrictManagementApiByIP property in the ServerProperties table in the QLM database. Alternatively, you can install QLM on the server and update the restrictManagementApiByIP property using the QLM Management Console. This is guaranteed to work because all local requests bypass this validation mechanism.

sendMailCc

Specify a comma-separated list of recipients that will be cc'ed on all emails sent from some QLM 3rd party extensions.

sendMailBcc

Specify a comma-separated list of recipients that will be bcc'ed on all emails sent from some QLM 3rd party extensions.

setProductPropertiesUseAdminEncryptionKey

Require that the AdminEncryptionKey be set before setting product properties via the API.

sqlSyntax

If you are using an MS-SQL Server, set this property to sql. If you are using MS-Access, set this property to ms-access

subscriptionGracePeriod

An expired subscription cannot be renewed. This property allows for a grace period after expiry where the subscription can still be renewed.

trialDuration

Specify the duration of the trial period used when calling the CreateComputerBoundTrialKey API.

updateExistingUserInformation

When creating a new user via the HTTP API or the QLM License Wizard User Registration form, if the user already exists, update the user information (except the email address), based on the new data.

updateLastAccessedDateAfterAnyEdit

When true, any edit of a license from the QLM Management Console, the QLM Portal or the UpdateLicenseInfo API will update the LastAccessedDate.

useDurationToSetExpiryDate

When creating an Activation Key with an expiry duration, the QLM License Server can convert the specified duration to a specific expiry date based on the current date. The SubscriptionExpiryDate field will be set to this expiry date.

useDurationToSetExpiryDateWhenActivating

When activating a duration-based license, the QLM License Server can convert the specified duration to a specific expiry date based on the time of activation. The SubscriptionExpiryDate field will be set to this expiry date.

webMethodMaximumDelay

QLM web methods are protected against being intercepted and replayed at a later time. All methods are time stamped. When the server detects that the time stamp does not match the server's time, the method fails. This property allows you to specify the maximum allowed time discrepancy between the end-user system and the server. Timestamps are time zone independent. The default value is 600 seconds or 10 minutes.

PAYPAL

ignoreCustomArgument

Ignore data in the PayPal custom field .

ignoreItemNumberArgument

Ignore data in the PayPal item number field .

paypalLoggingLevel

Controls the PayPal logging level. Set this value to 15 for the highest possible logging level.

paypalUrl

URL to the PayPal IPN processor. By default, this value is configured to connect to the PayPal sandbox. Once you are ready to go live, you need to change this URL to point to the real PayPal IPN process: https://www.paypal.com/cgi-bin/webscr

paypalUseSmtpFrom

When sending an email after a PayPal order, use the Server Property SmtpFrom as the sender.

qlmVersion

Version of the QLM Engine. Should be set to 5.0.00 unless you want to generate license keys compatible with QLM v4.0 and earlier.

qlmWebServiceUrl

URL to the QLM License Server, such as http://server/qlm/qlmservice.asmx

revokeLicenseOnRefund

When a PayPal order is refunded, automatically revoke the license.

revokeLicenseWhenSubscriptionCanceled

When a PayPal subscription is canceled, automatically revokes the license.

sendMailBcc

Specify a comma-separated list of recipients that will be bcc'ed on all emails sent from the PayPal provider.

sendMailCc

Specify a comma-separated list of recipients that will be cc'ed on all emails sent from the PayPal provider.

sendMailForInitialOrder

If true, the QLM PayPal extension will send an email when a new order is placed using the specified email template.

sendMailForSubscriptionRenewal

If true, the QLM PayPal extension will send an email when a subscription is renewed using the specified email template.

templateFile

Obsolete - Once an order is processed successfully, QLM sends an email to the customer with the license key information. The email template name is defined by this property. The file should be located in the same folder as the License Server.

vendorCompanyEmail

Email address of the vendor, i.e. your email address.

vendorCompanyName

Company name of the vendor, i.e. your company name.

PORTAL

allowedIPAddresses

A semi-comma-separated list of IP Addresses that are allowed to login to the QLM Portal.

enableMFA

Enables Multi-Factor authentication for the QLM Portal. Once a user authenticates successfully with a user/pwd, a code is sent by email or SMS and needs to be entered to complete the authentication process. This property is obsolete and has been supereded by multiFactorAuthentication.

forgotPasswordEmailSubject

Set the subject of the email that is sent to users when they forget their password and request it.

mfaEmailTemplate

The email template to use when sending the Multi-Factor Authentication email. Note that variables are not supported.

mfaQREmailTemplate

The email template to use when sending the email required to register the QLM Portal with the Microsoft Authenticator App. Note that variables are not supported.

multiFactorAuthentication

Enable Multifactor authentication when logging in to the QLM Portal. The possible values are: None | Email | SMS | Microsoft Authenticator

portalBccRecipients

Semi-comma separated list of email addresses that will be bcc'ed on all emails sent from the QLM Portal

portalBccUserGroupOwner

When sending emails from the QLM Portal, automatically bcc the owner of the User Group that the logged-in user belongs to.

portalCountFloatingSeatsInMaxTotalKeys

Determine whether to include floating seats when evaluating the Max Total Keys that a portal user can create.

portalDateFormat

The Date only format used in the QLM Portal. The default is d.

portalDateTimeFormat

The Date / Time format used in the QLM Portal. The default is G.

portalLoggingLevel

Controls the portal logging level. Set this value to 15 for the highest possible logging level.

portalLogo

Path to the logo displayed in the QLM Portal. The path can be relative or absolute.

portalTitle

The title to display in the Portal.

portalTimezone

The timezone to use when displaying dates in the Portal.

REGIONAL SETTINGS

dateFormat

Format of a date (no time) sent by a client via an http method call. The default value is yyyy-MM-dd.

eCommerceProviderDateFormat

Format of a date (no time) sent by an eCommerce provider via an http method call. The default value is yyyy-MM-dd HH:mm:ss.

emailDateFormat

Date format used when a date variable is displayed in an email template.

serverMode

Server Mode is used by DevExpress components. For performance reasons, if you have less than 50k license keys in the system, it is recommended to set the serverMode to false. This improves the performance of the QLM Portal by minimizing trips to the server.

sqlDateFieldFormat

Date format use in SQL queries. The default value is YYYY-MM-DD.

sqlDateFormat

Date format use in SQL queries. The default value is dd/MM/yyyy HH:mm:ss.

sqlDateOnlyFormat

Date format used in SQL queries. The default value is YYYY-MM-DD.

sqlDateTimeFormat

Date/time format used in SQL queries. The default value is: yyyy-MM-dd HH:mm:ss.

sqlDateValueFormat

Date format used in SQL queries. The default value is yyyy-MM-dd.

SECURITY SETTINGS

allowGenericKeys

Allows the creation and validation of generic license keys. Generic license keys are licenses that do not require activation and are not bound to a computer identifier. For example, if you embed a trial license in your code, you are using a generic license key. As of QLM v17, generic keys are disabled by default.

blockActivationByCountry

A semi-comma-separated list of countries that are blocked from activating a license. This feature requires the geolocation service provided by https://api.ipstack.com

blockRegistrationByCountry

A semi-comma-separated list of countries that are blocked from requesting a trial license. This feature requires the geolocation service provided by https://api.ipstack.com.

blockRegistrationByIPAddress

A semi-comma-separated list of IP Addresses that are blocked from requesting a trial license. CIDR notation is also supported.

enableActivationByBasicAuthentication

Enable activation by basic authentication.

enableCreateActivationKey

Allows users to create an activation key via the API.

enableCreateComputerBoundTrial

Allows users to create a computer-bound key via the CreateComputerBoundTrialKey API.

enableCreateOrder

Allows users to create an order via the API.

enableGetActivationKey

Allows users to create an activation key via the HTTP call GetActivationKey.

enableGetLatestVersionHttp

Allows users to get information about the latest version via an HTTP call.

enablePublishAnalyticsApi

Enables usage of the Analytics API

enableRegisterLicense

Allows users to register a QLM portal license.

enableReleaseKeyHttp

Allows users to release (de-activate) a license via an HTTP call.

enableRenewSubscriptionHttp

Allows users to renew a subscription via an HTTP call.

enableRetrieveActivationKeyHttp

Enables the RetrieveActivationKeyHttp API.

enableUpgradeDatabase

Allows users to perform a DB upgrade.

enableUpgradeLicense

Allows users to upgrade their licenses.

enableUploadAffiliates

Allows users to upload affiliates.

enableUploadECommerceProviders

Allows users to upload eCommerce providers.

enableUploadProducts

Allows users to upload products.

enableUploadServerProperties

Allows uploading server properties to the server.

enableUploadUserAccounts

Allows users to upload user accounts.

geoLocationServiceApiKey

API key required by the geolocation service defined in the geolocationServiceUrl.

geoLocationServiceUrl

URL to a geolocation service that converts an IP address to a location. QLM currently supports: http://api.ipstack.com/

httpAdminMethods

List of HTTP methods considered to be administration methods. These methods can be protected by restricting the IP addresses that can call them.

httpAdminMethodsAllowedIPAddresses

List of IP addresses that are allowed to call HTTP admin methods. CIDR notation is also supported.

signatureAlgorithm

Specify the algorithm to use when digitally signing files, such as license files or product properties files.

strictAuthenticationHttpMethods

List of HTTP methods that should use QLM's strict authentication mechanism.

strictAuthenticationMinimumVersion

The minimum authentication version that the server allows.

strictAuthenticationTimestampTolerance

The tolerance, in seconds, between the timestamp in the HTTP request and the server time.

whiteListedIPAddresses

List of white listed IP addresses that bypass any other property that blocks trial registration by IP Address

SERVER CONFIGURATION

customerPortalUrl

URL to the QLM Customer Portal. Example: https://qlm3.net/qlmdemo/QlmCustomerPortal/qlm-portal-app

customerSiteUrl

URL to the QLM Customer Site. Example: https://qlm3.net/qlmdemo/qlmCustomerSite

portalUrl

URL to the QLM Portal. Example: https://qlm3.net/qlmdemo/QlmPortal/QlmPortal.aspx

SMTP SETTINGS

smtpEnableSSL

Enables SMTP over SSL.

smtpFrom

Email address of the sender.

smtpFromDisplayName

Display name of the sender.

smtpPassword

The password associated with the SMTP user.

smtpPort

Port used by the SMTP server.

smtpServer

IP or DNS name of the mail server.

smtpUser

Name of the SMTP user.

WEBHOOK EVENTS

customer_created

URL to the webhook that should be invoked when a customer is created. You can add multiple URLs by separating them with a semi-colon.

customer_deleted

URL to the webhook that should be invoked when a customer is deleted. You can add multiple URLs by separating them with a semi-colon.

customer_modified

URL to the webhook that should be invoked when a customer is modified. You can add multiple URLs by separating them with a semi-colon.

license_activated

URL to the webhook that should be invoked when a license is activated. You can add multiple URLs by separating them with a semi-colon.

license_created

URL to the webhook that should be invoked when a license is created. You can add multiple URLs by separating them with a semi-colon.

license_deleted

URL to the webhook that should be invoked when a license is deleted. You can add multiple URLs by separating them with a semi-colon.

license_released

URL to the webhook that should be invoked when a license is deactivated. You can add multiple URLs by separating them with a semi-colon.

WEBHOOK SETTINGS

webHookMaxRetries

The number of times to retry invoking a webhook if it failed.

webHookRetryInterval

The retry interval in seconds.

webHookSecretKey

A secret key that you can use to validate the authenticity of the webhook request. The request header will contain the SHA256 value of the content + the secret key.

webHooksEnabled

Enable or disable all webhooks.

PreviousQLM License Server Hosting ServiceNextLicense Server Security Hardening

Last updated 2 days ago

Azure Client ID required when downloading a file in the License Wizard / Check For Updates options. For help in creating an Azure Client ID, .

Google Client ID required when authenticating an end-user with Google. For help in creating a Google App Client ID, .

Azure Client ID required when authenticating an end-user with Azure. You can create an Azure Client ID from the by creating a new App Registration.

Facebook App ID required when authenticating an end-user with Facebook. You can create a Facebook App ID from the site.

Google Client ID required when authenticating an end-user with Google. You can create a Google App Client ID from the .

Example:

Custom response message returned when performing a registration using the

☁️
read this
read this
Azure Portal
Facebook for Developers
Google API Console
https://yourcompany.com/images/logo.png
Trial Registration Method.