List of Commands
login
loginThe login command lets you add your WorkflowGen credentials to authorize the CLI. The CLI supports basic and Open ID Connect authentication.
Basic or Integrated Windows authentication
wfg login [WORKFLOWGEN_URL] -u [WORKFLOWGEN_USERNAME] -p [WORKFLOWGEN_PASSWORD] --password-file [PASSWORD_PATH] -c [CONTEXT_NAME]Auth0 authentication
wfg login [WORKFLOWGEN_URL] --authentication-mode AUTH0 --domain [DOMAIN] --client-id [CLIENT_ID] --client-secret [CLIENT_SECRET] -c [CONTEXT_NAME]MSIDV2 (Microsoft Identity Platform v2) authentication
wfg login [WORKFLOWGEN_URL] --authentication-mode MSIDV2 --tenant-id [TENANT_ID] --client-id [CLIENT_ID] --client-secret [CLIENT_SECRET] -c [CONTEXT_NAME]For MSIDV2 mode, you must first have registered a new dedicated application (server-side application) in your Azure Active Directory and on your WorkflowGen server by following the instructions in the Microsoft Entra ID Configuration for Server-Side Scripts section in the WorkflowGen for Azure guide.
All of the operations invoked from the WorkflowGen CLI will therefore use the user account specific in the Impersonate username field of the Non-interactive client application associated to the WorkflowGen CLI in WorkflowGen.
Okta authentication
wfg login [WORKFLOWGEN_URL] --authentication-mode OKTA --metadata-url [METADATA_URL] --client-id [CLIENT_ID] --client-secret [CLIENT_SECRET] -c [CONTEXT_NAME]AD FS authentication
wfg login [WORKFLOWGEN_URL] --authentication-mode ADFS --domain [DOMAIN] --client-id [CLIENT_ID] --client-secret [CLIENT_SECRET] -c [CONTEXT_NAME]Argument
Name
Type
Description
Behavior
url
String
WorkflowGen URL
Required
Options
Alias
Type
Description
Default value
Behavior
--username or -u
String
WorkflowGen username
None
Required
--password or -p
String
WorkflowGen password
None
Optional
--webforms or -w
String
Webforms path
C:\inetpub\wwwroot\wfgen\wfapps\webforms
Optional
--context or -c
String
Context name
DEFAULT
Optional
--authentication-mode
String
Authentication mode (BASIC, AUTH0, MSIDV2, ADFS, OKTA)
BASIC
Optional
--client-id
String
Client's public identifier
None
Optional
--domain
String
ADFS or AUTH0 domain
None
Optional
--tenant-id
String
MSIDV2 tenant ID
None
Optional
--metadata-url
String
OKTA metadata URL
None
Optional
--client-secret
String
Data known only to the application and the authorization server
None
Optional
--client-secret-file
String
File containing the client secret known only to the application and the authorization server
None
Optional
--port
String
WorkflowGen port
None
📌 Basic authentication login examples
wfg login http://localhost/wfgen -u wfgen_admin -p myPasswordwfg login http://localhost/wfgen -u wfgen_admin --password-file ./path/to/password.txt📌 Auth0 login examples
wfg login http://localhost/wfgen --authentication-mode AUTH0 --domain myDomain.auth0.com --client-id myClientIdwfg login http://localhost/wfgen --authentication-mode AUTH0📌 MSIDV2 login examples
wfg login http://localhost/wfgen --authentication-mode MSIDV2 --tenant-id myTenantId --client-id myClientIdwfg login http://localhost/wfgen --authentication-mode MSIDV2 --tenant-id myTenantId --client-id myClientId --client-secret myClientSecret📌 Okta login examples
wfg login http://localhost/wfgen --authentication-mode OKTA --metadata-url https://MyOktaDomain/.well-known/openid-configuration --client-id myClientIdwfg login http://localhost/wfgen --authentication-mode OKTA --metadata-url https://MyOktaDomain/.well-known/openid-configuration --client-id myClientId --client-secret myClientSecret📌 AD FS login examples
wfg login http://localhost/wfgen --authentication-mode ADFS --domain myAdfsDomain --client-id myClientIdwfg login http://localhost/wfgen --authentication-mode ADFS --domain myAdfsDomain --client-id myClientId --client-secret myClientSecretconfig
configThe config command lets you configure the CLI.
current-context
current-contextDisplays the current context.
Usage
wfg config current-contextdelete-context
delete-contextDeletes the specified context from the configuration.
Usage
wfg config delete-context [CONTEXT_NAME]Argument
Name
Type
Description
Behavior
name
String
Name of the context to delete
Required
📌 Example
wfg config delete-context WFGEN_PRODdelete-server
delete-serverDeletes the specified server from the configuration.
Usage
wfg config delete-server [SERVER_NAME] --forceArgument
Name
Type
Description
Behavior
name
String
Name of the server to delete
Required
Option
Alias
Type
Description
Default value
Behavior
--force or -f
Boolean
Force the server deletion and delete associated contexts
false
Optional
📌 Example
wfg config delete-server WFGEN_PROD_SERVER --forcedelete-user
delete-userDeletes the specified user from the configuration.
Usage
wfg config delete-user [USER_NAME] --forceArgument
Name
Type
Description
Behavior
name
String
Name of the user to delete
Required
Option
Alias
Type
Description
Default value
Behavior
--force or -f
Boolean
Forces the user deletion and deletes associated contexts
false
Optional
📌 Example
wfg config delete-user ADMIN_PROD_ACCOUNT --forceget-contexts
get-contextsDescribes one or several contexts.
Usage
wfg config get-contexts [CONTEXT_NAME1] [CONTEXT_NAME2] [CONTEXT_NAME3]Argument
Name
Type
Description
Behavior
names
String
Name(s) of context(s) to get
Optional
📌 Example
wfg config get-contexts WFGEN_PRODget-servers
get-serversDisplays servers defined in the configuration.
Usage
wfg config get-serversget-users
get-usersDisplays users defined in the configuration.
Usage
wfg config get-usersrename-context
rename-contextRenames a context in the configuration.
Usage
wfg config rename-context [CONTEXT_OLD_NAME] [CONTEXT_NEW_NAME]Arguments
Name
Type
Description
Behavior
old-name
String
Context name to rename
Required
new-name
String
New context name
Required
📌 Example
wfg config rename-context WFGEN_PROD WFGEN_DEVrename-server
rename-serverRenames a server in the configuration.
Usage
wfg config rename-server [SERVER_OLD_NAME] [SERVER_NEW_NAME]Arguments
Name
Type
Description
Behavior
old-name
String
Server name to rename
Required
new-name
String
New server name
Required
📌 Example
wfg config rename-server WFGEN_PROD_SERVER WFGEN_DEV_SERVERrename-user
rename-userRenames a user in the configuration.
Usage
wfg config rename-user [USER_OLD_NAME] [USER_NEW_NAME]Arguments
Name
Type
Description
Behavior
USER_OLD_NAME
String
Username to rename
Required
USER_NEW_NAME
String
New username
Required
📌 Example
wfg config rename-user ADMIN_PROD_ACCOUNT ADMIN_DEV_ACCOUNTset-context
set-contextSets a context entry in the configuration.
Usage
wfg config set-context [CONTEXT_NAME] --server [SERVER_NAME] --user [USER_NAME]Argument
Name
Type
Description
Behavior
name
String
Context name
Required
Options
Alias
Type
Description
Default value
Behavior
--server or -s
String
Server name
None
Required
--user or -u
String
Username
None
Required
📌 Example
wfg config set-context WFGEN_PROD --server WFGEN_PROD_SERVER --user ADMIN_PROD_ACCOUNTset-server
set-serverSets a server entry in the configuration.
Usage
wfg config set-server [SERVER_NAME] --url [URL] --version [SERVER_VERSION]Argument
Name
Type
Description
Behavior
name
String
Server name
Required
Options
Alias
Type
Description
Default value
Behavior
--url or -u
String
WorkflowGen URL
None
Optional
--webforms or -w
String
WorkflowGen webforms path
None
Optional
--version or -v
String
WorkflowGen version
None
Optional
📌 Example
wfg config set-server WFGEN_PROD_SERVER --url http://localhost/wfgen/admin --version 7.22.0set-user
set-userSets a user entry in the configuration.
Usage
wfg config set-user [USER_NAME] --username [USER_USERNAME] --password [USER_PASSWORD]Argument
Name
Type
Description
Behavior
name
String
Username
Required
Options
Alias
Type
Description
Default value
Behavior
--username or -u
String
WorkflowGen username
None
Required
--password or -w
String
WorkflowGen password
None
Required
📌 Example
wfg config set-user ADMIN_PROD_ACCOUNT --username wfgen_admin --password QWRtaW4xMjMhuse-context
use-contextSets the current context in the configuration.
Usage
wfg config use-context [CONTEXT_NAME]Argument
Name
Type
Description
Behavior
name
String
Context name
Required
📌 Example
wfg config use-context WFGEN_PRODproject
projectThe project command lets you either export or import an entire WorkflowGen project from a manifest.
init
initThe init command allow you to generate a manifest.json file interactively.
Usage
wfg project init --path projectPathOptions
Alias
Type
Description
Default value
Behavior
--path or -p
String
Directory path where the project will be initialized
Current directory
Optional
--bare
Boolean
Generates a manifest.json file with the bare minimum content
false
Optional
--force or -f
Boolean
Forces the manifest.json generation
false
Optional
📌 Examples
wfg project init --path ./MyProjectwfg project init --path ./MyProject --bare --forceexport
exportExports a project from your WorkflowGen server to a local repository.
Usage
wfg project export --path [PROJECT_PATH]Option
Alias
Type
Description
Default value
Behavior
--path or -p
String
Path to folder where the project's manifest and files are located.
Current directory
Optional
📌 Example
wfg project export --path ./MyProjectimport
importImports a project from a local repository to your WorkflowGen server.
Usage
wfg project import --source [PATH] --forceOptions
Alias
Type
Description
Default value
Behavior
--source or -s
String
Project path
Current directory
Optional
--force or -f
Boolean
Updates the project's existing global lists and applications
false
Optional
📌 Example
wfg project import --source c:\repositoryshow
showDisplays the content of a manifest link to a project.
Usage
wfg project show --path [PROJECT_PATH]Option
Alias
Type
Description
Default value
Behavior
--path or -p
String
Project path
Current directory
Optional
📌 Example
wfg project show --path c:\repositoryprocess
processThe process command lets you export, import, get, update, or delete a process.
export
exportExports a specific process from your WorkflowGen server to a local repository.
Usage
wfg process export [PROCESS_NAME] [PROCESS_VERSION] --destination [PATH]Arguments
Name
Type
Description
Behavior
name
String
Process name
Required
version
Int
Process version
Required
Option
Alias
Type
Description
Default value
Behavior
--destination or -d
String
Export path
Current directory
Optional
📌 Example
wfg process export SIMPLE_APPROVAL 1import
importImports a specific process from a local repository to your WorkflowGen server.
Usage
wfg process import [PROCESS_PATH] --useVersionNumber --state [STATE] --folder [PROCESS_FOLDER]Argument
Name
Type
Description
Behavior
file-path
String
Path of the process XML file
Required
Options
Alias
Type
Description
Default value
Behavior
--use-version-number
Boolean
Use the process version from the XML file
false
Optional
--state or -s
String
Specify with which status the process will be imported
TEST
Optional
--folder
String
Destination name of the process folder into which to import the process; the folder should exist
DEFAULT
Optional
UseVersionNumber
UseVersionNumber<use-version-number = true>will try to add the process with the version number inside the XML file, if it doesn't already exist.<use-version-number = false>will add the process with the latest version number plus one (e.g. if the latest current version is3, setting this tofalsewill import the process as version4).
state
stateThe state can be one of the following:
TEST(default)ACTIVEDEVARCHIVE
📌 Example
wfg process import c:\repository\SIMPLE_APPROVALv1.xmlget
getDisplays one or several processes.
Usage
wfg process get [PROCESS_NAME] [PROCESS_VERSION] --outputArguments
Name
Type
Description
Behavior
name
String
Process name
Optional
version
Int
Process version
Optional (except if a name is specified)
Option
Alias
Type
Description
Default Value
Behavior
--output or -o
String
Define the output format. Valid values: json, table.
table
Optional
📌 Example
wfg process get SIMPLE_APPROVAL 1 -o jsonupdate
updateUpdates information for a single process.
Usage
wfg process update [PROCESS_NAME] [PROCESS_VERSION] -d [DESCRIPTION] -s [STATE]Arguments
Name
Type
Description
Behavior
name
String
Process name
Required
version
Int
Process version
Required
Options
Alias
Type
Description
Default value
Behavior
--description or -d
String
Specifies the description with which the process will be updated
None
Optional
--state or -s
String
Specify with which status the process will be updated
None
Optional
📌 Example
wfg process update SIMPLE_APPROVAL 1 -s DEVdelete
deleteDeletes a single process by name and version.
Usage
wfg process delete [PROCESS_NAME] [PROCESS_VERSION]Arguments
Name
Type
Description
Behavior
name
String
Process name
Required
version
Int
Process version
Required
📌 Example
wfg process delete SIMPLE_APPROVAL 1test
testRuns test cases of your processes.
Usage
wfg process test [PATH_TEST_FILES] --verbosity [LEVEL] --doctorArguments
Name
Type
Description
Behavior
test-files
String
Path(s) to the test file(s)
Required
Option
Name
Type
Description
Behavior
--verbosity or -v
String
Establishes the level of verbosity
Possible values: q[uiet],n[ormal] (default) ,d[etailed]
Optional
--doctor
String
Check if test cases are compliant. Only available as of WorkflowGen version 8.0.3.
Optional
📌 Example
wfg process test c:\repository\SIMPLE_APPROVALv1_Test.json c:\repository\SIMPLE_REQUESTv1_Test.json --verbosity quiet📌 Example of a test file
{
"processName": "SIMPLE_APPROVAL",
"processVersion": 1,
"tests": [
{
"describe": "First test",
"requestParameters": [],
"actions": [
{
"name": "INITIATES",
"operation": "COMPLETE",
"parameters": [
{
"name": "REQUEST_SUBJECT",
"textValue": "OK"
}
],
"assertions": {
"status": "CLOSED",
"subStatus": "COMPLETED"
}
},
{
"name": "VALIDATES",
"operation": "COMPLETE",
"parameters": [
{
"name": "APPROVAL_DECISION",
"textValue": "YES"
}
],
"assertions": {
"status": "CLOSED",
"subStatus": "COMPLETED",
"data": [
{
"name": "APPROVAL_DECISION",
"textValue": "YES"
}
]
}
}
},
{
"describe": "Second test",
"requestParameters": [],
"actions": [
{
"name": "INITIATES",
"operation": "COMPLETE",
"parameters": [
{
"name": "REQUEST_SUBJECT",
"textValue": "OK"
}
],
"assertions": {
"status": "CLOSED",
"subStatus": "COMPLETED"
}
},
{
"name": "VALIDATES",
"operation": "COMPLETE",
"parameters": [
{
"name": "APPROVAL_DECISION",
"textValue": "NO"
}
],
"assertions": {
"status": "CLOSED",
"subStatus": "COMPLETED",
"data": [
{
"name": "APPROVAL_DECISION",
"textValue": "NO"
}
]
}
},
{
"name": "UPDATES",
"operation": "COMPLETE",
"parameters": [
{
"name": "REQUEST_SUBJECT",
"textValue": "OK2"
}
],
"assertions": {
"status": "CLOSED",
"subStatus": "COMPLETED"
}
},
{
"name": "VALIDATES",
"operation": "COMPLETE",
"parameters": [
{
"name": "APPROVAL_DECISION",
"textValue": "YES"
}
],
"assertions": {
"status": "CLOSED",
"subStatus": "COMPLETED",
"data": [
{
"name": "APPROVAL_DECISION",
"textValue": "YES"
}
]
}
}
}
],
"deleteRequest": false
}global-list
global-listThe global-list command lets you export, import, get, or delete a global list.
export
exportExports a specific global list from your WorkflowGen server to a local repository.
Usage
wfg global-list export [GLOBAL_LIST_NAME] --destination [PATH]Argument
Name
Type
Description
Behavior
name
String
Global list name
Required
Option
Alias
Type
Description
Default value
Behavior
--destination or -d
String
Export path
Current directory
Optional
📌 Example
wfg global-list export Countryimport
importImports a specific global list from your local repository to your WorkflowGen server.
Known issue (#3373): See the WorkflowGen 7.22.2 release notes.
Usage
wfg global-list import [GLOBAL_LIST_PATH] --forceArgument
Name
Type
Description
Behavior
file-path
String
The path to the global list's XML file
Required
Option
Alias
Type
Description
Default value
Behavior
--force or -f
Boolean
Updates specified global list
false
Optional
📌 Example
wfg global-list import C:\repository\Countryget
getDisplays one or several global lists.
Usage
wfg global-list get [GLOBAL_LIST_NAME] --outputArgument
Name
Type
Description
Behavior
names
String
Global list name(s)
Optional
Option
Alias
Type
Description
Default value
Behavior
--output or -o
String
Define the output format. Valid values: json, table.
table
Optional
📌 Example
wfg global-list get Country Clients --output jsondelete
deleteDeletes a single global list by name.
Usage
wfg global-list delete [GLOBAL_LIST_NAME]Argument
Name
Type
Description
Behavior
name
String
Global list name
Required
📌 Example
wfg global-list delete Countryapplication
applicationThe application command lets you export, import, get, get-parameters, or delete an application.
export
exportExports a specific application from your WorkflowGen server to a local repository.
Usage
wfg application export [APPLICATION_NAME] --destination [PATH]Argument
Name
Type
Description
Behavior
name
String
Application name
Required
Option
Alias
Type
Description
Default value
Behavior
--destination or -d
String
Export path
Current directory
Optional
📌 Example
wfg application export XMLTODATABASEimport
importImports a specific application from your local repository to your WorkflowGen server.
Usage
wfg application import [APPLICATION_PATH] --forceArgument
Name
Type
Description
Behavior
file-path
String
The full path containing the application's JSON file
Required
Option
Alias
Type
Description
Default value
Behavior
--force or -f
Boolean
Updates the specified application
false
Optional
📌 Example
wfg application import c:\repository\XMLTODATABASE.xmlget
getDisplays one or several applications.
Usage
wfg application get [APPLICATION_NAME]] --outputArgument
Name
Type
Description
Behavior
names
String
Application name(s)
Optional
Option
Alias
Type
Description
Default value
Behavior
--output or -o
String
Define the output format. Valid values: json, table.
table
Optional
📌 Example
wfg application get XMLTODATABASE --output jsonget-parameters
get-parametersDisplays an application's parameters.
Usage
wfg application get-parameters [APPLICATION_NAME] --outputArgument
Name
Type
Description
Behavior
name
String
Application name
Required
Option
Alias
Type
Description
Default value
Behavior
--output or -o
String
Define the output format. Valid values: json, table.
table
Optional
📌 Example
wfg application get-parameters XMLTODATABASE --output jsondelete
deleteDeletes a single application by name.
Usage
wfg application delete [APPLICATION_NAME]Argument
Name
Type
Description
Behavior
name
String
Application name
Required
📌 Example
wfg application delete XMLTODATABASEaction
actionget
getLets you display the action information of a request or process.
Usage
wfg action get [requestNumber] --processName --processVersion --status --outputArgument
Name
Type
Description
Behavior
requestNumber
Int
ID number of the request that you want to get
Optional
Option
Alias
Type
Description
Default value
Behavior
--processName or -p
String
Name of the process whose actions you want to retrieve
(none)
Optional
--processVersion or -v
Int
Version of the process whose actions you want to retrieve
(none)
Optional
--status or -s
String
Retrieve the requests with a specified status (OPEN or CLOSED)
(none)
Optional
--output or -o
String
Define the output format. Valid values: json, table.
table
Optional
📌 Example
wfg action get 1994 -s OPEN -o json
wfg action get -p SIMPLE_REQUESTcomplete
completeLets you complete an action for a process.
Usage
wfg action complete [activityNumber] [requestNumber] --parameterArgument
Name
Type
Description
Behavior
activityNumber
Int
Action number of the action that you want to complete
Required
requestNumber
Int
ID number of the request whose action you want to complete
Required
Option
Alias
Type
Description
Behavior
--parameter or -p
String
Your complete action parameter contains a string in the following format: ValueType:ParameterName=Value. ValueType can be text,numeric, or date
Optional
📌 Example
wfg action complete 1 1994 -p text:SUBJECT="My Subject"cancel
cancelLets you cancel an ongoing action.
Usage
wfg action cancel [actionNumber] [requestNumber] --forceArgument
Name
Type
Description
Behavior
activityNumber
Int
Action number of the action that you want to cancel
Required
requestNumber
Int
ID number of the request whose action you want to cancel
Required
Option
Alias
Type
Description
Default value
Behavior
--force or -f
Boolean
Force the cancellation
false
Optional
📌 Example
wfg action cancel 1 1994 -frequest
requestget
getLets you manage a WorkflowGen request.
Usage
wfg request get [requestNumber] --processName --processVersion --status --outputArgument
Name
Type
Description
Behavior
requestNumber
String
ID number(s) of the request(s) that you want to get
Optional
Option
Alias
Type
Description
Default value
Behavior
--processName or -p
String
Name of the process whose requests you want to retrieve
(none)
Optional
--processVersion or -v
Int
Version of the process whose requests you want to retrieve
(none)
Optional
--status or -s
String
Retrieve the requests with the specified status (OPEN or CLOSED)
(none)
Optional
--output or -o
String
Define the output format. Valid values: json, table.
table
Optional
📌 Example
wfg request get 1994 -s OPEN -o json
wfg request get -p SIMPLE_REQUESTcreate
createLets you create a new request from a process.
Usage
wfg request complete [processName] [processVersion] --parameterArgument
Name
Type
Description
Behavior
processName
String
Name of the process of which you want to create a request
Required
processVersion
Int
Version of the process of which you want to create a request
Required
Option
Alias
Type
Description
Behavior
--parameter or -p
String
Your complete action parameter contains a string in the following format: ValueType:ParameterName=Value. ValueType can be text,numeric, or date.
Optional
📌 Example
wfg request complete 1 1994 -p text:SUBJECT="My Subject"cancel
cancelLets you cancel an ongoing request.
Usage
wfg request cancel [requestNumber] --forceArgument
Name
Type
Description
Behavior
requestNumber
Int
The request number that you want to cancel
Required
Option
Alias
Type
Description
Default value
Behavior
--force or -f
Boolean
Force the cancellation
false
Optional
📌 Example
wfg request cancel 1994 -fgraphql
graphqlThe graphql command lets you run a custom GraphQL query.
Usage
wfg graphql [GRAPHQL_QUERY] -v [VARIABLE1_STRING] -V [VARIABLE2_INT] -V [VARIABLE3_BOOL]wfg graphql [GRAPHQL_QUERY] --variableJson [VARIABLES_JSON]Arguments
Name
Type
Description
Behavior
--variable or -v
String
Inputs a variable that will be read as a raw string.
See below
--variableCast or -V
String
Inputs a variable that the CLI will attempt to cast in a valid JSON type.
See below
--variableJson
JSON
Input a JSON object containing the variables' names as keys and variables' values as the values of those keys.
📌 Example: { "key": "value" }
See below
If the graphql query uses variables, you have to specify either --variable and --variableCast or --variableJson. You can't use --variableJson with the other two arguments and vice-versa.
📌 Examples
wfg graphql "query { viewer { userName } }"wfg graphql "query { viewer { userName } }"wfg graphql @'
query ($name: String!, $version: Int!) {
process(name: $name, version: $version) {
description
}
}
'@ -v name=SIMPLE_APPROVAL -V version=1wfg graphql "$(cat <<QUERY
query (\$name: String!, \$version: Int!) {
process(name: \$name, version: \$version) {
description
}
}
QUERY
)" -v name=SIMPLE_APPROVAL -V version=1wfg graphql @'
query ($name: String!, $version: Int!) {
process(name: $name, version: $version) {
description
}
}
'@ --variableJson ((@{
name = "SIMPLE_APPROVAL"
version = 1
} | ConvertTo-Json -Compress) -replace '"', '\"')Due to a known PowerShell bug at time of writing (https://github.com/PowerShell/PowerShell/issues/1995), any double quotes (") will be stripped from the string when sending it to a native executable. The solution is to add a backslash (\) before each double quote, or use three double quotes (""").
Last updated