Activate ReadyAPI on Headless Machines and CI/CD build runs with SLM

Applies to ReadyAPI 3.46.1, last modified on June 01, 2023

This page is related to new SmartBear ID-based licenses that we’ve introduced in ReadyAPI 3.8.1.
For information on regular file-based licenses that are also used in version 3.46.1, see File-Based Licenses.


Running ReadyAPI on a headless machine means that it works from the command line. The same happens when you run ReadyAPI and its test runners from a CI/CD build.

To specify the SmartBear licenses to be used for the run, you add certain parameters to the command line. See below for details.

ReadyAPI licenses to which this info applies

Here, we have explained the use of SLM licenses in Private Networks.

Customers installing and activating a license through the ReadyAPI User Interface can use offline fixed licenses or floating licenses.

Customers planning to run tests headlessly need to add licensing credentials to the command line. To use this, you will need a floating license. Offline fixed licenses do not work with test runners.


Activating licenses in Private Networks

If you are unable to configure network settings to connect to SmartBear-hosted license servers, you need to convert your online SmartBear licenses to offline licenses. Furthermore, you must activate these offline licenses within your private network. Follow these links for details:

  • Floating License - To run tests headlessly, you need a floating license. Also, add license credentials to the command line.

    Floating licenses require downloading and installing a special On-Premise License Server.

    The computer where you are going to run tests must have access to the internal (on-prem) License Servers.

  • Fixed License - Offline (fixed) licenses can only be activated through the GUI and do not work with Test Runners.

Before you commence to use ReadyAPI in Headless mode

In order to use ReadyAPI headlessly, you need to export the required license to the on-prem server using the server fingerprint file as outlined here.

You must then assign the correct license to the required user or service account for headless calls to be successful. See License Administrators actions outlined here.

Once the license has been assigned to the user account requiring headless access, you can configure your headless commands and implement your test.

Configure and Run the Headless Commands

Functional, Performance, Security, and Virtual Service testrunners

We recommend you to use the Get Access Key for the Test User on the on-prem server. You can configure and run Functional, Performance, Security, and Virtual Service testrunners through Command Line. Use the similar parameters to activate the on-prem license, this time adding the Access Key instead of credentials:

"C:\Program Files\SmartBear\ReadyAPI-xxx\bin\testrunner.bat" -K<Access Key> -DlicenseApiHost=SLM_License_Server_Address -DlicenseApiPort=SLM_License_Server_Port "-EDefault environment" C:\Project-test.xml

Alternatively, once the correct license is assigned to the Test User, you can configure and run Functional, Performance, Security, and Virtual Service testrunners through Command Line. Use the similar parameters to activate the on-prem license:

"C:\Program Files\SmartBear\ReadyAPI-xxx\bin\testrunner.bat" -Uuser@mail.adslm -V<password> -DlicenseApiHost=SLM_License_Server_Address -DlicenseApiPort=SLM_License_Server_Port "-EDefault environment" C:\Project-test.xml
Note: To request a license for headless calls, please ensure that your username follows the email format: or If you don't follow this format, we suggest using the Access Key as your credential.

Using access for everyone with Headless Testing in Private Networks

If you set Access for Everyone on SLM on-premises, you no longer need to add Access Key credentials to your CLI command configuration for TestRunner, Performance Load Runner, Security Test Runner, and VirtRunner.

In that case, you can add the -D licenseApiAccessForEveryone=true flag to your CLI command.

To license SmartBear products for headless testing in private networks, take the following steps:

  1. Request and install On-Premise Server on your headless machine.
  2. Log in with the following credentials:
    • username: anonymous.user
    • password: <any, but cannot be left blank>
  3. Optionally set access to Access for Everyone.
  4. In the top right corner of the On-Premise License Server UI, select > Access Key and copy the access key in the subsequent dialog.
  5. Use the access key in your command line configuration as specified in your product's documentation.

Docker Image

You can also run Functional, Performance, Security, and Virtual Service testrunners via Docker and with Command Line.

Install Docker on your machine with Install Docker image with SoapUI TestRunner.

Put the project in the preferred folder e.g., "C:\TestDocker\Projects"

Once you have created your ready-api-soapui-testrunner docker image, you must assign the Test or Bundle license to the Test User as outlined here .

Request the Get Access Key for the Test User on the on-prem server. Enter the following command in the console and press Enter:

docker run -v="C:\TestDocker\Projects":/project -e SLM_LICENSE_SERVER="<Address for onprem SLM license server>" -e API_KEY="<API key for floating SLM>" -e COMMAND_LINE="'-EDefault environment' -DlicenseApiHost=SLM_LICENSE_SERVER -DlicenseApiPort=SLM_LICENSE_SERVER_PORT -sTestSuite-Main -cTestCase-Main '/%project%/Project-func-test.xml'" -it smartbear/ready-api-soapui-testrunner:<tag>

These instructions also with Docker image with SoapUI TestRunner with uienv tag.

Note: A floating license is required for use of ReadyAPI on Virtual Machines and Docker. Use of Fixed Offline licenses will cause errors in the console log: “Please contact your administrator to assign a floating license to Docker”.

Maven configuration for SmartBear ID Based Licensing

  1. You may provide your credentials by either enclosing them within the <slmAccessKey>Access_Key</slmAccessKey> tag, or by using the <slmUsername>Username</slmUsername> and <slmPassword>Password</slmPassword> tags.

  2. The server address and access settings for all users can be defined in the readyApiProperties. To enable access for everyone, set it to "true".

    • <readyApiProperties>















    • By default, the SmartBear license server is included and does not require additional configuration. However, if you have installed and configured an offline (on-premise) license server for your ID-based licenses, you need to specify the server address and port information.

See Also

ReadyAPI – Licensing in Private Networks

Highlight search results