HTTP - Patch

Declaration

<AMHTTP ACTIVITY="patch" SESSION=text (options)" AUTHENTICATION="text (options)" USERNAME="text" PASSWORD="text (encrypted)" CERTIFICATE="text" CERTIFICATEPASSPHRASE="text (encrypted)" IGNOREINVALIDCERTIFICATE="YES/NO" VERSION="text (options)" SSLVERSION="text (options)" CONTENTTYPE="text" USERAGENT="text" TIMEOUT="number" MEASURE="text (options)" COOKIE="text (options)" COOKIEFILE="text" OVERWRITECOOKIEFILE="YES/NO" ENCODEURL="YES/NO" PROXYTYPE="text (options)" PROXYSERVER="text" PROXYPORT="number" PROXYUSERNAME="text" PROXYPASSWORD="text (encrypted)" URL="text" TYPE="text (options)" DATA="text" RESULTDATASET="text" RESULTVARIABLE="text"><HEADER NAME="text" VALUE="text" /><COOKIE NAME="text" VALUE="text" /></AMHTTP>

Related Topics   

Description

Modifies existing data or a file on the specified server.

Practical Usage

Used to modify existing data or a file on the selected server.

Parameters

General

Property Type Required Default Markup Description
Predefined connection Text (options) Yes None SESSION="HttpSession1" Specifies the predefined connection name to use with this request. Predefined connections are created using the HTTP - Define activity. If set to None, the connection settings are stored in the Credentials section of this activity.
URL Text Yes (Empty) URL="https://www.google.com" Specifies the URL of the server to upload data or a file to.
Type Text (options) No Text
  • TYPE="text"
  • TYPE="file"
Indicates the type of data to patch. The available options are:
  • Text - Data type to patch is a text string. Requires entry of the text string to patch in the provided data field.
  • File - Data type to patch is a specific file. Requires entry of the path and file name in the provided data field.
Text Text Yes (Empty) DATA="The text string" If the Type parameter is set to Text, this parameter specifies the string of data to use to patch. This parameter is only available and required if the Type parameter is set to Text.
File path Text Yes (Empty) DATA="c:\temp\file.txt" If the Type parameter is set to File, this parameter specifies the path and file name to use to patch. This parameter is only available and required if the Type parameter is set to File.
Populate variable with result Text No (Empty) RESULTVARIABLE="varName" The name of the variable to populate with the results of the transmission.
Create and populate dataset Text No (Empty) RESULTDATASET="theDataset" The name of the dataset to populate with request and response data, as well as other relevant information about the action performed. More details regarding the fields that this dataset creates can be found below under Datasets.

Credentials

Property Type Required Default Markup Description
Authentication type Text (options) No None
  • AUTHENTICATION="none"
  • AUTHENTICATION="basic"
  • AUTHENTICATION="digest"
  • AUTHENTICATION="ntlm"
Specifies the type of authentication to use with this activity. The available options are:
  • None (default) - No authentication will be used.
  • Basic - Based on a username and password, this is the authentication mechanism defined in the HTTP/1.0.
  • Digest - Like the Basic option, Digest Authentication authenticates a user based on a username and a password. However, the authentication is performed by transmitting the password in an encrypted form which is much more secure than the simple base64 encoding used by Basic Authentication.
  • NTLM - A challenge-response scheme, consisting of three messages, commonly referred to as Type 1 (negotiation), Type 2 (challenge) and Type 3 (authentication).
Username Text No (Empty) USERNAME="Coolguy" A valid user name to be used during the authentication. If the Authentication type parameter is set to None, this parameter is ignored.
Password Text No (Empty) PASSWORD="encrypted" The password to use during the authentication. If created in visual mode, this value is automatically encrypted. If the Authentication type parameter is set to None, this parameter is ignored.
Certificate file Text No (Empty) CERTIFICATE="C:\Temp\certFile.pfx" The path and file name of the certificate file used to validate connection. Click the folder icon to navigate to the specified certificate file or enter the path and file name manually. Enter this information if a Certificate Authority (CA) is used to identify one end or both end of the transactions. Automate supports the following certificate file types:
  • Internet Security Certificate (.cer) - Security file provided by a third party such as VeriSign or Thwate that confirms the authenticity of a Web site; installed on a Web server (such as Apache or Windows Advanced Server) to authenticate the validity of a certain website hosted on the server.
  • Privacy Enhanced Mail Certificate (.pem) - Base64-encoded certificate file, such as a PEM-encoded X509 certificate; used to authenticate a secure website; typically imported from a Unix-based Apache Web server and compatible with OpenSSL applications. PEM certificate files are generated automatically and are not meant to be opened or edited manually.
  • PKCS #12 Certificate File (.pfx) - Encrypted security file that stores secure certificates used to authenticate a person or device, such as a computer or Web server; requires a password to be opened; can be installed by right-clicking the file and selecting "Install PFX."
  • Personal Information Exchange (.p12) - SSL certificate used to authenticate a secure website on a Microsoft IIS Web server.
Passphrase Text No (Empty) CERTIFICATEPASSPHRASE="encrypted" The passphrase to use to authenticate the connection. A passphrase is a password that may comprise of a whole phrase.
Ignore invalid server certificate Yes/No No No IGNOREINVALIDCERTIFICATE="YES" If selected, specifies that this action ignores invalid certificates while connecting to a server using SSL. This option is disabled by default.

Advanced

Property Type Required Default Markup Description
Protocol version Text (options) No HTTP 1.1
  • VERSION="HTTP10"
  • VERSION="HTTP11"
Specifies the protocol version to use. The available options are:
  • HTTP 1.0 - Uses a separate connection to the same server for every request-response transaction.
  • HTTP 1.1 - Can reuse a connection multiple times allowing less latency.
Content type (optional) Text No (Empty) CONTENTTYPE="text/html" The content type and subtype of the data or file to upload (for example, application/zip, text/csv, image/jpeg).
SSL version Text (options) Yes

TLS1, TLS1.1, TLS1.2, TLS1.3

  • SSLVERSION="SSL2"
  • SSLVERSION="SSL3"
  • SSLVERSION="TLS1"
  • SSLVERSION="TLS1.1"
  • SSLVERSION="TLS1.2"
  • SSLVERSION="TLS1.3"
Specifies the versions of SSL (Secure Sockets Layer) and/or TLS (Transport Layer Security) protocols to use to secure the connection to the server. To select multiple versions, manually enter and separate each version with a comma (see default setting). The available options are:
  • SSL2
  • SSL3
  • TLS1
  • TLS1.1
  • TLS1.2
  • TLS1.3
NOTE: For compatibility with most sites, it is recommended to use the default TLS1,TLS1.1,TLS1.2, TLS1.3 setting for this parameter. However, older sites may require SSL2 and/or SSL3.
User agent Text (options) Yes AutoMate USERAGENT="text" The user agent originating the request. A website may require a User Agent string to be sent to it for statistical purposes, tracing of protocol violations, and automated recognition of user agents for the sake of tailoring responses to avoid particular user agent limitations (the default User Agent entered  is AutoMate).
Timeout Number No 100 TIMEOUT="50" The maximum time that the step waits for a response from the HTTP server before failing with a time out error. It may be useful to increase this value when posting extremely large amounts of data or if waiting for a long transaction to complete. (default value is 100 seconds).
Measure (unlabeled) Text (options) No seconds
  • MEASURE="milliseconds"
  • MEASURE="seconds"
  • MEASURE="minutes"
  • MEASURE="hours"
The time measurement corresponding to the value entered in the Timeout parameter. The available options are:
  • Milliseconds - Timeout value set to milliseconds.
  • Seconds (default) - Timeout value set to seconds.
  • Minutes - Timeout value set to minutes.
  • Hours - Timeout value set to hours.
Cookie permission Text (options) No Block
  • COOKIE="block"
  • COOKIE="read"
  • COOKIE="write"
  • COOKIE="allow"
Specifies how this activity handles cookies sent to/from the server. The available options are:
  • Block - Block cookies sent by the server. Note that specific servers may require cookies.
  • Read - Allow cookies sent by the server to be read onto a specific file.
  • Write - Allow a specific cookie file to be sent to the server.
  • Allow - Allow both read and write options to be performed.
NOTE: HTTP cookies are used for authenticating, session tracking (state maintenance), and maintaining specific information about users.
Encode URL Yes/No No No ENCODEURL="YES" If selected, encodes the URL by converting non-compliant characters to ASCII format (for example, a space in a URL is converted to %20).
Cookie file Text No (Empty) COOKIEFILE="c:\theFile" The cookie file for this activity to use to identify and/or authenticate a server-based session. Cookies can be stored in different locations, depending on the version of explorer and Windows you are using. This parameter is disabled if the Cookie permission parameter is set to Block.
Overwrite cookie file Yes/No No No OVERWRITECOOKIEFILE="yes" HTTP requests and responses are written to the same cookie file. By default, new request/response data is appended at the end of the cookie file as a new line. If this parameter is selected, new request/response data will overwrite existing data. Overwriting is a good way to minimize the size of a cookie file.  This parameter is disabled by default.
Request header(s) Text No (Empty)
  • NAME="theName"
  • VALUE="theValue"
Allows entry of custom HTTP headers to the request. Required parameters are:
  • Name - String that specifies the header name.
  • Value - String that specifies the header value.
Request cookie(s) Text No (Empty)
  • NAME="theName"
  • VALUE="theValue"
Allows entry of custom HTTP cookies to the request. Request cookies can be used in conjunction with cookie files. Required parameters are:
  • Name - String that specifies the cookie name.
  • Value - String that specifies the cookie value.
Proxy type Text (options) No System Default
  • PROXYTYPE="none"
  • PROXYTYPE="socks4"
  • PROXYTYPE="socks4a"
  • PROXYTYPE="socks5"
  • PROXYTYPE="http"
The proxy protocol to use. If you are unsure of the value to use in this parameter, contact your network administrator. The available options are:
  • System Default (default, recommended) - The settings specified globally in the system preferences are used.
  • None - Explicitly instructs the action not to use a proxy server regardless of the system default
  • SOCKS 4 - Instructs the action to go through a SOCKS 4 compliant server
  • SOCKS 4a - Instructs the action to go through a SOCKS 4a compliant server
  • SOCKS 5 - Instructs the action to go through a SOCKS 5 compliant server
  • HTTP - Instructs the action to go through an HTTP compliant server  
NOTE: To create the most portable tasks, it is best to specify System Default and specify proxy settings globally in the system settings. By proceeding in this manner, tasks created in one environment that may have a proxy server will be portable to others that do not, and vice-versa.
Proxy server Text No (Empty)
  • PROXYSERVER="proxy.host.com"
  • PROXYSERVER="123.456.789.123"
The host name (server.domain.com) or IP address (xxx.xxx.xxx.xxx) of the proxy server.
Proxy port Number No 808 PROXYPORT="3000" The port to use to connect to the proxy server. Most proxy servers operate on port 808 (the default) however the proxy server can be customized to operate on other ports.
Proxy username Text No (Empty) PROXYUSERNAME="HulkHogan" The username to use to authenticate when connecting through the proxy server.
Proxy password Text No (Empty) PROXYPASSWORD="encrypted" The password to use to authenticate when connecting through the proxy server. When the step is created in visual mode using the Task Builder it is written to the task encrypted.

Description

Error Causes

On Error

Additional Notes

Datasets

A dataset is a multiple column, multiple row container object. This activity creates and populates a dataset containing a specific set of fields in addition to the standard dataset fields. The table below describes these fields (assuming the dataset name assigned was theDataset).

Name Type Return Value
theDataset.RequestHeader Text Returns the request header. The header fields define various characteristics of the data transfer that is requested or the data that is provided in the message body. HTTP request header fields contain the parameters of an HTTP request operation.
theDataset.RequestCookies Text Gets a collection of cookies sent by the client.
theDataset.Data Text The progress of the snapshot, in percentage.
theDataset.ResponseHeader Text Returns the response header. HTTP response header fields contain the parameters of an HTTP response operation.
theDataset.ResponseCookies Text Gets the response cookie collection.
theDataset.Log Text Provides a log of the transmission.

Example

NOTE:
  • The sample AML code below can be copied and pasted directly into the Steps Panel of the Task Builder.
  • Parameters containing user credentials, files, file paths, and/or other information specific to the task must be customized before the sample code can run successfully.

Example 1

Using connection settings stored within the HTTP - Patch activity, this sample task modifies a file on the server using a local file (c:\filetopatch.txt) and then creates and populates a dataset with the results.

Copy
<AMHTTP ACTIVITY="patch" URL="http://www.helpsystems.com" TYPE="file" DATA="C:\temp\filetopatch.txt" RESULTDATASET="myDataset" />

Example 2

Using a predefined connection with the HTTP - Patch activity, this sample task modifies a file on the server using a local file (c:\filetopatch.txt) and then creates and populates a dataset with the results.

Copy
<AMHTTP ACTIVITY="patch" SESSION="HttpSession1" URL="http://www.helpsystems.com" TYPE="file" DATA="C:\temp\filetopatch.txt" RESULTDATASET="myDataset" />