Skip to content

Client application configuration

You can register custom client applications by creating an IAP Application Protocol Configuration (IAPC) file. An IAPC file defines the following:

  • The name of the client application
  • The VM instances that the client application applies to
  • The executable to launch (optional)

IAPC are JSON files that use the .iapc file extension. During startup, IAP Desktop loads all IAPC files in the %appdata%\Google\IAP Desktop\Config folder.

The following code snippet shows an example file for the MySQL shell:

  "version": 1,
  "name": "MySQL Shell 8.0",
  "condition": "isInstance()",
  "remotePort": "3306",
  "client": {
    "executable": "%ProgramW6432%\\MySQL\\MySQL Shell 8.0\\bin\\mysqlsh.exe",
    "arguments": "-h {host} -P {port} -u \"{username}\""
Field Synopsis Required
version File format version, must be 1. Required
name Name of the application as shown in the user interface. Required
condition Condition that defines which VM instances this client applies to. The following conditions are supported:
  • isInstance(): All instances
  • isLinux(): Linux instances
  • isWindows(): Windows instances
executable Executable to be launched. This can be one of:
  • an absolute file system path to an .exe file. The path can contain environment variables, for example %AppData%\Altostrat\client.exe.
  • name of a registered application, for example chrome.exe.
Note: Backslashes must be escaped with another backslash (\\).
arguments Command line arguments for the client executable. The value can contain environment variables such as %AppData% or %USERPROFILE%. Additionally, the command line arguments can contain the following special variables:
  • {host}: Hostname to connect to
  • {port}: Port to connect to
  • {user}: Username to authenticate with