Skip to main content

Full offline mode

Use the Pdftools software fully offline with valid license keys for at least three months or more, depending on your license. Your local network can stay without an internet connection, and license keys are validated for a set period of time.

Multi-machine license activation

Activate the same license key on up to 10 offline LGS machines. Follow the License key activation steps on each machine. To activate on more than 10 machines, contact Pdftools through the Contact form.

Limitations of full offline mode

The full offline mode isn’t available for the free trial license keys created in the Pdftools Portal.

For Docker deployments, review Full offline mode in Docker.

Before you start

Make sure your license key supports full offline mode. Whether you can use offline mode depends on the order form and quote you accepted from Pdftools. If you require an upgrade to get this feature, contact Pdftools through the Contact form.

Activate one license key on multiple machines

Multi-machine activation requires LGS version 1.3.1030 or later.

Check LGS version

To check the version of your LGS installation, run the following command:

ptl --version

A single license key supports activation on up to 10 separate offline LGS machines. Each machine requires its own LGS installation, configuration, and a separate activation. Deactivating on one machine doesn’t affect the other machines using the same license key.

To activate the same license key on multiple machines:

  1. Install and configure the LGS on each offline machine as described in Install the LGS and Configure the LGS for offline use.
  2. Activate the license key on each machine individually by following the steps in License key activation.
  3. Reactivate the license key on each machine before the 365-day activation period expires, as described in License key reactivation.

To activate the same license key on more than 10 machines, contact Pdftools through the Contact form.

Install the LGS

Install the LGS to set up fully offline configuration. Download and install the package on a machine in your network that is not connected to the internet.

LGS is installed with the Conversion Service on Windows Server
  • The Conversion Service comes with the LGS preinstalled on Windows. Installing the LGS on such a machine for the second time may render the Conversion Service unusable. For more details, review the implementation of the Licensing Gateway Service in the Conversion Service licensing documentation.
  • The full offline mode is available in the Conversion Service version 6+. Configure the full offline mode using steps described in Full offline mode license activation section.
Conversion Service and LGS on another machine

If you want to install the LGS on another machine than the one where you run the Conversion Service, follow the steps in this section Install the LGS, and then continue with Full offline mode license activation section.

  1. Download the LicensingGatewayService.msi package.
  2. Run the installer.

The installer also creates a Windows service that acts as an agent to regularly synchronize the LGS with the Pdftools Licensing Server.

CLI naming

On Linux, the CLI command name depends on which snap package is installed:

  • On the offline machine (licgwy snap): invoke the CLI as licgwy.ptl.
  • On the online machine (ptl snap): invoke the CLI as ptl.

To create a shorter alias on the offline machine, run the following command with elevated privileges:

sudo snap alias licgwy.ptl ptl

On Windows, the CLI is always ptl on both machines. All CLI examples on this page use ptl for brevity.

Configure the LGS for offline use

To configure the LGS:

  1. Find the LGS configuration file appsettings.json:

    For Windows, the configuration file is in the installation folder, for example:

    C:\Program Files\Pdftools\Licensing Gateway Service\appsettings.json

    Example configuration file:

    {
    "LicensingServicePortNumber": 9999,
    "LogFilePath": "C:/logs/pdftls/log.txt",
    "LogRetentionDays": 7,
    "Endpoints": []
    }
  2. Turn on offline mode in the LGS. Update the configuration file so that the IsOfflineMode property is set to true.

    Example configuration file after update:

    {
    "LicensingServicePortNumber": 9999,
    "LogFilePath": "C:/logs/pdftls/log.txt",
    "LogRetentionDays": 7,
    "IsOfflineMode": true,
    "Endpoints": []
    }
  3. Optionally, you can configure these options:

    • Licensing Service Port number: Set the port number used by the service. The default value is 9999.
    • Log file path: Specify the desired path of the log files.
    • Log retention: Define the number of days the log files remain.
    • Endpoints: An array of stored LGS endpoint URLs for batch commands. Managed through ptl endpoints-add and ptl endpoints-remove, but you can also edit this field manually.
  4. Restart the service after modifying the appsettings.json file so the changes take effect.

Install the Pdftools Licensing Shell on the online machine

To use the CLI-based activation and deactivation workflows, install the Pdftools Licensing Shell (ptl) on a machine in your network that is connected to the internet.

info

The ptl CLI is the same tool used on the offline machine for the LGS. Install the same package on the online machine to access the activation and deactivation commands.

  1. Download the LicensingShell.msi package.
  2. Run the installer.

Offline license configuration

The following sections explain how to manage your license keys offline using the ptl CLI or the Pdftools Portal.

You can activate your license in the full offline mode by following the procedures in the following sections:

You can deactivate your license in the full offline mode by following the procedures in the following sections:

Prerequisites

To use the license keys offline, fulfill the following prerequisites:

  • The Pdftools Licensing Shell (ptl) is installed on a machine that is not connected to the internet (offline machine).
  • Optional: The Pdftools Licensing Shell (ptl) is installed on the machine that is connected to the internet (online machine). This is only necessary in the procedures that involve license key activation and deactivation using the CLI.

License key activation

Activate license key in the Pdftools Portal

Activate your license key in the full offline mode in the Pdftools Portal by following these steps:

  1. On the offline machine with the installed Licensing Gateway Service, generate an offline activation token:

    ptl export-activation "LICENSE_KEY_VALUE"
    • Replace LICENSE_KEY_VALUE with your license key.
  2. Copy the generated offline activation token and transfer it to a machine with internet access.

  3. Log in to the Pdftools Portal.

  4. Go to the Licenses tab.

  5. Paste the offline activation token into the field marked as Insert your token here….

    Pdftools Portal Offline Activation / Deactivation page with the 'insert your token here...' field.
  6. Click Activate, and then click Continue.

  7. Copy the generated license activation token and transfer it to the offline machine.

  8. On the offline machine, activate or extend the license key:

    ptl import-activation "LICENSE_ACTIVATION_TOKEN"
    • Replace LICENSE_ACTIVATION_TOKEN with your license activation token from the previous step.

The license is activated or extended and ready for use.

note

When you activate a license key in the LGS, it’s linked to that machine. You can activate the same license key on up to 10 offline LGS machines without deactivating it first.

Activate license key using the CLI

Activate your license key in the full offline mode using the ptl CLI by following these steps:

  1. On the offline machine with the installed Licensing Gateway Service, generate an offline activation token:

    ptl export-activation "LICENSE_KEY_VALUE"
    • Replace LICENSE_KEY_VALUE with your license key.
  2. Copy the generated offline activation token and transfer it to the online machine.

  3. On the online machine with the installed Pdftools Licensing Shell, activate the token:

    ptl activate "OFFLINE_ACTIVATION_TOKEN"
    • Replace OFFLINE_ACTIVATION_TOKEN with the offline activation token from the previous step.
  4. Copy the generated license activation token and transfer it to the offline machine.

  5. On the offline machine, activate or extend the license key:

    ptl import-activation "LICENSE_ACTIVATION_TOKEN"
    • Replace LICENSE_ACTIVATION_TOKEN with your license activation token from the previous step.

The license is activated or extended and ready for use.

note

When you activate a license key in the LGS, it’s linked to that machine. You can activate the same license key on up to 10 offline LGS machines without deactivating it first.

License key deactivation

Although you can activate a license key on up to 10 machines, deactivate the license key on machines you plan to retire. If a machine with an active license key becomes permanently inaccessible, the activation slot remains occupied. If all slots are used, contact Pdftools support to free an activation. Review the Support page.

Deactivate license key in the Pdftools Portal

Deactivate your license key in the full offline mode in the Pdftools Portal by following these steps:

  1. On the offline machine with the installed LGS, locally deactivate the license key:

    ptl export-deactivation "LICENSE_KEY_VALUE"
    • Replace LICENSE_KEY_VALUE with your license key.
    • You can’t generate a new activation request token for the same license key until you complete all deactivation steps.
  2. Copy the generated license deactivation request token and transfer it to a machine with internet access.

  3. Log in to Pdftools Portal.

  4. Go to the Licenses tab.

  5. Click Deactivate.

  6. Paste the license deactivation request token into the field marked as Insert your token here….

    Pdftools Portal Offline Activation / Deactivation page, deactivation tab, with the 'insert your token here...' field.
  7. Click Deactivate, and then click Continue.

  8. Copy the generated license deactivation token and transfer it to the offline machine.

  9. On the offline machine, deactivate the license key:

    ptl import-deactivation "LICENSE_DEACTIVATION_TOKEN"
    • Replace LICENSE_DEACTIVATION_TOKEN with your license deactivation token from the previous step.

The license is removed from the system. If necessary, you can generate a new activation request token for this license key.

Deactivate license key using the CLI

Deactivate your license key in the full offline mode using the ptl CLI by following these steps:

  1. On the offline machine with the installed LGS, locally deactivate the license key:

    ptl export-deactivation "LICENSE_KEY_VALUE"
    • Replace LICENSE_KEY_VALUE with your license key.
    • You can’t generate a new activation request token for the same license key until you complete all deactivation steps.
  2. Copy the generated license deactivation request token and transfer it to the online machine.

  3. On the online machine with the installed Pdftools Licensing Shell, deactivate the token:

    ptl deactivate "OFFLINE_DEACTIVATION_TOKEN"
    • Replace OFFLINE_DEACTIVATION_TOKEN with the token from the previous step.
  4. Copy the generated license deactivation token and transfer it to the offline machine.

  5. On the offline machine, deactivate the license key:

    ptl import-deactivation "LICENSE_DEACTIVATION_TOKEN"
    • Replace LICENSE_DEACTIVATION_TOKEN with your license deactivation token from the previous step.

The license is removed from the system. If necessary, you can generate a new activation request token for this license key.

Manage stored endpoints

When managing multiple LGS instances, save frequently used endpoint URLs so you don’t have to specify them on every batch command invocation.

CommandDescription
ptl endpoints-add <url>Save an LGS endpoint URL (must be a valid HTTP or HTTPS URL).
ptl endpoints-remove <url>Remove a stored endpoint.
ptl endpoints-listList all stored endpoints.

Stored endpoints are saved in the "Endpoints" array in appsettings.json. You can also edit this field manually.

When batch commands (activate-all, deactivate-all, batch-export-activation, batch-export-deactivation) are called without endpoint URL arguments, they automatically use the stored endpoints. Endpoint URLs provided on the command line always take priority over stored ones.

Batch activation across multiple LGS instances

To activate the same license key across multiple LGS instances, such as several Docker containers, Linux servers, or Windows machines, use the batch commands. The machine running ptl must be able to reach all listed LGS endpoints over the network. Whether internet access is also required depends on whether you use the Pdftools Portal or a fully offline CLI workflow.

Stored endpoints

Save your LGS endpoint URLs with ptl endpoints-add to avoid specifying them on every batch command. For details, refer to Manage stored endpoints.

Batch activation

Batch activate in the Pdftools Portal

Activate a license key across multiple LGS instances using the Pdftools Portal by following these steps:

  1. Generate a batch activation token from all LGS endpoints:

    ptl batch-export-activation "LICENSE_KEY_VALUE" ENDPOINT_1 ENDPOINT_2
    • Replace LICENSE_KEY_VALUE with your license key.
    • Replace ENDPOINT_1 ENDPOINT_2 with the addresses of your LGS instances (for example, http://localhost:9991 http://localhost:9992). Omit the endpoint arguments to use stored endpoints.
  2. Copy the generated batch activation token. If the machine running ptl doesn’t have internet access, transfer the token to a machine that does.

  3. Log in to the Pdftools Portal.

  4. Go to the Licenses tab.

  5. Paste the batch activation token into the field marked as Insert your token here….

    Pdftools Portal Offline Activation / Deactivation page with the 'insert your token here...' field.
  6. Click Activate, and then click Continue.

  7. Copy the generated license activation token. If necessary, transfer it back to the machine running ptl.

  8. Import the activation across all LGS instances:

    ptl batch-import-activation "LICENSE_ACTIVATION_TOKEN"
    • Replace LICENSE_ACTIVATION_TOKEN with the token from the previous step.

The license key is activated across all specified LGS instances.

Batch activate using the CLI

If the machine running ptl has internet access, activate a license key across multiple LGS instances by following these steps:

  1. Generate a batch activation token from all LGS endpoints:

    ptl batch-export-activation "LICENSE_KEY_VALUE" ENDPOINT_1 ENDPOINT_2
    • Replace LICENSE_KEY_VALUE with your license key.
    • Replace ENDPOINT_1 ENDPOINT_2 with the addresses of your LGS instances. Omit the endpoint arguments to use stored endpoints.
  2. Copy the generated batch activation token.

  3. Activate the token online:

    ptl activate "BATCH_ACTIVATION_TOKEN"
    • Replace BATCH_ACTIVATION_TOKEN with the token from the previous step. The activate command auto-detects batch tokens.
  4. Copy the generated license activation token.

  5. Import the activation across all LGS instances:

    ptl batch-import-activation "LICENSE_ACTIVATION_TOKEN"
    • Replace LICENSE_ACTIVATION_TOKEN with the token from the previous step.

The license key is activated across all specified LGS instances.

Shortcut: activate-all

If the machine running ptl has internet access, use the activate-all command as a shortcut that combines the export, activate, and import steps:

ptl activate-all "LICENSE_KEY_VALUE" ENDPOINT_1 ENDPOINT_2
  • Replace LICENSE_KEY_VALUE with your license key.
  • Replace ENDPOINT_1 ENDPOINT_2 with the addresses of your LGS instances. Omit the endpoint arguments to use stored endpoints.

Batch deactivation

Batch deactivate in the Pdftools Portal

Deactivate a license key across multiple LGS instances using the Pdftools Portal by following these steps:

  1. Generate a batch deactivation token from all LGS endpoints:

    ptl batch-export-deactivation "LICENSE_KEY_VALUE" ENDPOINT_1 ENDPOINT_2
    • Replace LICENSE_KEY_VALUE with your license key.
    • Replace ENDPOINT_1 ENDPOINT_2 with the addresses of your LGS instances. Omit the endpoint arguments to use stored endpoints.
  2. Copy the generated batch deactivation token. If the machine running ptl doesn’t have internet access, transfer the token to a machine that does.

  3. Log in to the Pdftools Portal.

  4. Go to the Licenses tab.

  5. Click Deactivate.

  6. Paste the batch deactivation token into the field marked as Insert your token here….

    Pdftools Portal Offline Activation / Deactivation page, deactivation tab, with the 'insert your token here...' field.
  7. Click Deactivate, and then click Continue.

  8. Copy the generated license deactivation token. If necessary, transfer it back to the machine running ptl.

  9. Import the deactivation across all LGS instances:

    ptl batch-import-deactivation "LICENSE_DEACTIVATION_TOKEN"
    • Replace LICENSE_DEACTIVATION_TOKEN with the token from the previous step.

The license key is deactivated across all specified LGS instances.

Batch deactivate using the CLI

If the machine running ptl has internet access, deactivate a license key across multiple LGS instances by following these steps:

  1. Generate a batch deactivation token from all LGS endpoints:

    ptl batch-export-deactivation "LICENSE_KEY_VALUE" ENDPOINT_1 ENDPOINT_2
    • Replace LICENSE_KEY_VALUE with your license key.
    • Replace ENDPOINT_1 ENDPOINT_2 with the addresses of your LGS instances. Omit the endpoint arguments to use stored endpoints.
  2. Copy the generated batch deactivation token.

  3. Deactivate the token online:

    ptl deactivate "BATCH_DEACTIVATION_TOKEN"
    • Replace BATCH_DEACTIVATION_TOKEN with the token from the previous step. The deactivate command auto-detects batch tokens.
  4. Copy the generated license deactivation token.

  5. Import the deactivation across all LGS instances:

    ptl batch-import-deactivation "LICENSE_DEACTIVATION_TOKEN"
    • Replace LICENSE_DEACTIVATION_TOKEN with the token from the previous step.

The license key is deactivated across all specified LGS instances.

Shortcut: deactivate-all

If the machine running ptl has internet access, use the deactivate-all command as a shortcut that combines the export, deactivate, and import steps:

ptl deactivate-all "LICENSE_KEY_VALUE" ENDPOINT_1 ENDPOINT_2
  • Replace LICENSE_KEY_VALUE with your license key.
  • Replace ENDPOINT_1 ENDPOINT_2 with the addresses of your LGS instances. Omit the endpoint arguments to use stored endpoints.

License key reactivation

The activated license key is valid in the full offline mode for 365 days. Reactivate the license key to extend this period for another 365 days. The license expiration date is independent of this activation period. For example:

  • Your license key expires in two years. You can reactivate the license key for full offline mode before or after the 365-day period expires. This will reset the offline activation license period to another 365 days.
  • Your license key expires in six months. Your offline activation period is displayed as 365 days. Your license key stops working after 6 months, but the license key activation period still displays 182 days remaining.

You can reactivate your license at any time. Reactivation only resets the full offline mode activation period to 365 days. Reactivate the license key before the activation period expires to ensure uninterrupted use. If you reactivate after the activation period expires, the license stops working until you complete the reactivation.

To reactivate your license key:

  1. Repeat the activation steps as described in License key activation section.
Multi-machine reactivation

If you activated the same license key on multiple offline LGS machines, reactivate it on each machine individually. Complete the reactivation before the 365-day activation period expires.

References

The following section lists the ptl CLI commands for managing licenses in the fully offline configuration.

CLI commands

The Pdftools Licensing Shell (ptl) is a command-line interface for managing licenses associated with your Pdftools products.

To access a full list of available commands, use the ptl help command.

General commands

CommandDescription
ptl helpGet instructions on how to use the CLI with a full list of commands.
ptl versionGet the version number.
ptl statusCheck the licensing service status.
ptl listGet information about added license keys and for how long they are valid.

Single-instance offline commands (run on the offline machine)

CommandDescription
ptl export-activation LICENSE_KEY_VALUEExport an activation request.
ptl import-activation LICENSE_ACTIVATION_TOKENImport an activation response.
ptl export-deactivation LICENSE_KEY_VALUEExport a deactivation request.
ptl import-deactivation LICENSE_DEACTIVATION_TOKENImport a deactivation response.

Online activation and deactivation commands (run on the online machine)

CommandDescription
ptl activate TOKENActivate an offline token. Auto-detects single and batch tokens.
ptl deactivate TOKENDeactivate an offline token. Auto-detects single and batch tokens.

Batch commands (for multiple LGS instances)

CommandDescription
ptl activate-all LICENSE_KEY [ENDPOINT...]Activate a license key across multiple LGS endpoints in one step.
ptl deactivate-all LICENSE_KEY [ENDPOINT...]Deactivate a license key across multiple LGS endpoints in one step.
ptl batch-export-activation LICENSE_KEY [ENDPOINT...]Export a batch activation token from multiple LGS endpoints.
ptl batch-import-activation TOKENImport a batch activation response to all LGS endpoints.
ptl batch-export-deactivation LICENSE_KEY [ENDPOINT...]Export a batch deactivation token from multiple LGS endpoints.
ptl batch-import-deactivation TOKENImport a batch deactivation response to all LGS endpoints.

Endpoint management commands

CommandDescription
ptl endpoints-add <url>Save an LGS endpoint URL.
ptl endpoints-remove <url>Remove a stored endpoint.
ptl endpoints-listList all stored endpoints.

Full offline mode with Pdftools OCR Service

If you configured the full offline mode with the Pdftools OCR Service, update your worker nodes configuration. Follow the steps described in Configuration in connected mode and full offline mode section.