Networking
ActiveBatch supports FTP file transfers, pinging a system, running a secure shell SSH command, and issuing HTTP requests.

This job step supports FTP data transfers. The data transfers may be done using plain FTP, SFTP (SSH based) or FTPS (SSL certificate based). For a complete list of supported algorithms see Supported SSH Algorithms
Note: The Managed File Transfer (MFT) category of Job Steps is the recommended method to create new FTP Jobs. The MFT Category was introduced after the Networking – FTP-SFTP-FTPS Step. The new implementation greatly enhances how FTP file transfers are managed in the Jobs Library. This Step is available primarily for backwards compatibility.
Platforms Supported
Windows and UNIX-based.
Software Pre-Requisites
Windows: None.
UNIX: curl software required.
Job Step Properties
Hostname – This property represents the name, IP address or FQDN of the target FTP server.
Credentials – The object path of a User Account object. Clicking on the “Helper” will cause a tree display of all ActiveBatch containers. You may then select a User Account object. The User Account credentials must have access to the target FTP system.
Script – This multi-line property contains the actual FTP commands you want to invoke at the FTP server.
Authentication – This property indicates the type of authentication to be used (in conjunction with the Protocol property). The dropdown selection choices are: Default, ImplicitControl, ImplicitNormal, ExplicitControl, ExplicitNormal, and ExplicitAutoControl.
Protocol – This property indicates the security protocols that are to be used. The checkbox selection choices are: No Selection (FTP), SSL2 (FTPS), SSL3 (FTPS), TLS, TLS1, TLS11, TLS12 and SSH (SFTP).
IgnoreErrors – This Boolean property indicates whether the job step should stop if an error is encountered while processing the FTP script commands. A value of false means the errors should not be ignored.
Port – This property indicates the port number to be used. Port 21 is the default for FTP, 22 is the default for SFTP and 989 is the default for FTPS.
SFTP Versions – This optional property indicates the SFTP versions that are supported by your client and the SFTP server. By default, versions 2 through 4 are supported, however some SFTP servers do not accept a list of versions and require a specific version or versions. This property through the checkbox of supported versions allow you to designate one or more versions.
Passive – This Boolean property controls whether passive or active data transfer mode will be used. A value of false indicates active data transfer and a value of true indicates passive data transfer.
UseCertificate – This property indicates whether a Client Certificate for the transfer is to be taken from the ‘Credentials’ User Account object. The default is false which means no Client Certificate will be used.
Certificate – This property specifies that the Client Certificate for the transfer is to be taken from the specified User Account object. By default, no Client Certificate will be used. This property supports ActiveBatch variables.
PrivateKey – This property allows you to specify a User Account object that contains the private or public key for this SSH connection. This property is typically optional unless your SFTP server requires it.
Timeout – This optional property allows you to specify a timeout, in seconds. If omitted, appropriate FTP defaults are used.
Web Tunneling – This optional collection of properties may be used if a connection is being performed using an HTTP proxy.
Commands Supported:
ASCII, ASC, BINARY, BIN, BYE, EXIT, LOGOUT, DISCONNECT, CLOSE, LIST directory, LS directory, DIR directory, GET file, RECV file, RETRIEVE file, RETR file, LCD local-directory, CD directory, CWD directory, MDELETE files, MDEL files, MDIR files, MGET files, MKDIR directory, MKD directory, MLS, MPUT files, OPEN server, PUT file, STORE file, STOR file, SEND file, PWD password, QUIT, RENAME file, REN file, RMDIR directory, RMD directory, DEL file, DELETE file, DELE file, PROMPT, TYPE mode.
directory refers to a directory specification on the remote server.
file refers to a single file specification on the remote server.
files refers to one or more files as expressed using valid server wildcard characters.
local-directory refers to a local directory on the execution machine.
mode refers to one of the following: ASCII (ASC), BIN or IMAGE.
These commands are not supported by SFTP:
QUOTE, COMMAND, USER, PASS, CCC, PBSZ, AUTH, ADAT, MIC, CONF, ENC.

This job step allows you to ping a machine to determine if it’s responsive.
Platforms Supported
Windows and UNIX-based.
Software Pre-Requisites
Windows: None.
UNIX: None.
Job Step Properties
HostName – This property represents the machine you want to ping. A “helper” is available to enumerate the machines in your Job Scheduler’s network.
Timeout – This property controls how long the job step is to wait for a response. The value is in seconds.
Note: If the hostname does not resolve to an IP (i.e. an incorrect hostname) the job step will fail immediately (it will not fail after the timeout period).

This job step allows you to send one or more commands to a remote machine running SSH (Secure Shell). For a complete list of supported algorithms see ActiveBatch Supported Algorithms.
Platforms Supported
Windows and UNIX-based.
Software Pre-Requisites
Windows: None.
UNIX: None.
Job Step Properties
HostName – This property represents the target machine for the SSH session. A “helper” is available to enumerate the machines in your Job Scheduler’s network.
Port – This property represents the port number for the SSH network connection. By default, SSH is 22.
Commands – This property contains one or more shell commands (appropriate for the target machine and operating system). Each command would be listed on a separate line.
Credentials – The object path of a User Account object. Clicking on the “Helper” will cause a tree display of all ActiveBatch containers. You may then select a User Account object. The User Account credentials must have access to the target system.
Keyboard Authentication Values – This optional property represents the answer to a challenge sent by the server (if enabled). Multiple values can be specified if multiple challenges are allowed.
Private Key – This optional property represents a User Account object that references a private key. The security credentials for the session are still taken from the Credentials property, however, the private key is used to supplement the password.
Environment Variables – This optional property, if specified, consists of one or more pairs of environment variables and their values using the following syntax: variable-name=value [,…]. The environment variables are created as part of the SSH logon process.
Server Fingerprint – This property, if specified, indicates the server’s fingerprint and must match the fingerprint supplied by the server when connecting. The fingerprint is a hash of the server’s public key.
Mode – This property indicates the manner in which SSH is used. Command is specified when you have a single command that you want to issue with the output being passed back as a return value. Shell is specified when you have multiple commands that are essentially executed as an embedded script. Automatic (default) uses Command mode if a single command is present; otherwise Shell mode is used.
Return Step Value
This job step will return the text of the received data from the SSH step.

This job step allows you to issue HTTP requests and receive responses.
Note: This job step can be used as a raw version of REST. That said, an easier to use version of REST support is provided as part of the Service Library object.
Platforms Supported
Windows.
Software Pre-Requisites
Windows: None.
Job Step Properties
Endpoint – This property represents a URL endpoint. http or https can be specified. For example, http://qasrv2/QARestService/Anonymous/QARestService.svc/EchoPost.json. JSON and XML are supported.
HTTP Verb – This property dropdown contains the supported verbs. Selections include: GET, POST, PUT, UPDATE, DELETE and READ.
Headers – This property represents a collection of name/value pairs that are placed in the Headers area of the request. Mandatory or optional headers are based on the endpoint, verbs and methods used. Two header pairs that are most often specified are: User-Agent=ActiveBatch and Content-Type=application/json; charset=utf-8. If XML was to be used the Content-Type would be “application/xml”.
Body – This property represents the Body of the HTTP request. This can be anything but must be formatted as your endpoint and methods require.
Credential – This property represent the security credentials for the HTTP request (and not any authentication that the web request may require).
Encoding Type – This property represents the encoding for the HTTP request. If not specified, the encoding will be detected by analyzing the headers as appropriate. If auto-detection cannot determine the encoding UTF-8 will be used. Otherwise, the encoding can be specified as one of the available choices in the property dropdown.
Return Step Value
This job step returns the following variables.
-
StatusCode – This property contains the HTTP status code of your request.
-
Headers – This collection of properties contain the returned headers in name/value pairs.
-
RawData – This property contains the data returned by the HTTP Web Request, The data is formatted in either JSON or XML as specified.
Note: This job step can fail and take an exception if the remote server passes back an error. For that reason it is highly recommended that you enclose this job within a Try-Catch job step. That will allow you flexibility in terms of recovery and error handling.