HTTP request


Interface for setting parameters of actions of type HTTP request.

Actions of type HTTP request allow you to perform arbitrary HTTP requests to an URL. You can also transmit the submitted form data as well as files. As such, this action provides a universal interface to other web services.

Parameters

HTTP request details

HTTP method
The method to be used for the HTTP request. By default POST is used. Aside from the standard methods such as GET, DELETTE, or POST, you can also enter a custom method when the web service requires it. Note that some methods such as GET do not support an HTTP body. For these methods, parameters are added to the URL as URL parameters and files are omitted.
Request URL
The address to which the HTTP request should be sent.
XSL template
In most cases, the external service to which the HTTP request was transmitted will return a response in the form of XML or HTML. In some cases, it may be necessary for these to be displayed or further processed in other actions. By selecting an XSL template you have the possibility to prepare the returned response or format it differently.
Request encoding
Select the encodng to use for sending the HTTP request (when sending plain text content).
Response encoding
Select the encoding to use for interpreting the HTTP response (when receiving plain text content).
Return as response page
Deliver the response of the action to the client. If this option is disabled, the default FORMCYCLE response will be delivered.

Extended interface for setting parameters of actions of type HTTP request.

Request type

The request type determines the content of the HTTP body. You can select between the following:

Custom
Uses the entered plain text content as the HTTP body.
Automatically according to content
For backwards compatibility: uses x-www-form-urlencoded when no files exist and x-www-form-urlencoded when at least one file was selected and that file exists when the workflow action is executed.
Contents of a file
Uses the binary content of the selected file as the HTTP body.
Form data without files (form-urlencoded)
Sends a request body with a plain text URL encoded string containing the data (x-www-form-urlencoded). This request type does not support files.
Form data including files (multipart)
Sends a multipart body (MIME type multipart/form-data), which supports sending files.
URL with parameters
Do not send any body, add all data as URL parameters to the request URL. Files cannot be sent with this request type.

Additional parameters

Additional headers
A list of headers can be stored here, which will be transmitted in any case.
Transfer all form values
Is the possibility to transfer all data collected from the form. The name of the form element or Alias is here the field identifier within the HTTP request. The value is the input from the form.
POST_Bezeichner.PNG
Use aliases (for form elements and uploads).
Form fields are submitted with their form field aliases instead of form field names.
Additional parameters
A list of parameters can be stored here, which will be transferred in any case. Often additional static information is stored here, which is required by the external service, or if field identifiers are expected to be different from those stored in the form.

Add files to the request (multipart request)

Files
Selection of files that can be added to the request. See actions for a list of supported URL protocols.

Advanced connection settings

No error on 4xx responses
By default, the error CLIENT_ERROR is thrown when the HTTP response contains a 4xx status code. The content of the response is then accessible via an ERROR variable. When this option is enabled, no error is throws and the response content is available via a RESULT variable.
No error on 5xx responses
By default, the error SERVER_ERROR is thrown when the HTTP response contains a 4xx status code. The content of the response is then accessible via an ERROR variable. When this option is enabled, no error is throws and the response content is available via a RESULT variable.

HTTP Basic Authentication

Use HTTP Basic Authentication
Name: Username for the URL
Password: Password for the user

Use proxy server

Forwarding to a proxy server
proxy-server hostname: Name of the proxy server
Port: Port of the proxy server. Default is 80.
Proxy authentication: Authentication to the proxy server.
Login: Username for the proxy server
password: Password for the proxy user

Filing the created files

Attach file to form record
If this option is selected, files created in this action will be attached to the form record. Otherwise, they are only available for other actions within the workflow processing in the same processing chain.

Action variables

Actions of type HTTP request provide Action variables which can be used in subsequent actions.

Standard action variables

[%$<action name>.SUCCESS%]
Return whether action was successfully executed. Returns Boolean (true/false).
[%$<action name>.RESULT%]
Return all results provided by the action in structured form.
[%$<action name>.ERROR_CODE%]
The error code thrown in case of an error in the action. Empty if no error occurred.
[%$<action name>.ERROR_MESSAGE%]
The thrown error message in the action's error case. Empty if no error occurred.

Action specific action variables

[%$<action name>.RESULT.redirectUrl%]
Contains the URL to the destination in case of a redirect.
[%$<actionName>.RESULT.redirected%]
Returns true if the HTTP word results in a redirect, false otherwise.
[%$<actionName>.RESULT.responseBody%]
Contains the response returned by the HTTP request that was triggered. In the case of a redirect, this value is empty.
[%$<actionName>.RESULT.responseCode%]
Contains the returned HTTP status code.
[%$<actionName>.RESULT.responseJson%]
Contains a JSON object or JSON array if the HTTP response is not a redirect and the content-type of the returned content is application/json
[%$<actionName>.RESULT.responseReasonPhrase%]
In case of a successful HTTP request, contains the status message, such as "OK" or "Found".
[%$<ActionName>.RESULT.responseStatusLine%]
In case of a successful HTTP request, contains the status message, such as "OK" or "Found".
[%$<action name>.ERROR.redirectUrl%]
In case the error code was CLIENT_ERROR or SERVER_ERROR: Contains the URL to the destination in case of a redirect.
[%$<actionName>.ERROR.redirected%]
In case the error code was CLIENT_ERROR or SERVER_ERROR: Returns true if the HTTP word results in a redirect, false otherwise.
[%$<actionName>.ERROR.responseBody%]
In case the error code was CLIENT_ERROR or SERVER_ERROR: Contains the response returned by the HTTP request that was triggered. In the case of a redirect, this value is empty.
[%$<actionName>.ERROR.responseCode%]
In case the error code was CLIENT_ERROR or SERVER_ERROR: Contains the returned HTTP status code.
[%$<actionName>.ERROR.responseJson%]
In case the error code was CLIENT_ERROR or SERVER_ERROR: Contains a JSON object or JSON array if the HTTP response is not a redirect and the content-type of the returned content is application/json
[%$<actionName>.ERROR.responseReasonPhrase%]
In case the error code was CLIENT_ERROR or SERVER_ERROR: In case of a successful HTTP request, contains the status message, such as "OK" or "Found".
[%$<ActionName>.ERROR.responseStatusLine%]
In case the error code was CLIENT_ERROR or SERVER_ERROR: In case of a successful HTTP request, contains the status message, such as "OK" or "Found".
[%$<actionName>.ERROR.message%]
Error message returned if the specified external URL resource does not match a valid format, the attached server cannot be reached or does not return a response, errors occurred while adding files to the HTTP request, or the configured XSLT transformation failed.