REST Client
REST Client
Description
The REST Client transform enables you to consume RESTfull services. Representational State Transfer (REST) is a key design idiom that embraces a stateless client-server architecture in which the web services are viewed as resources and can be identified by their URLs.
The REST client transform can use a pre-defined REST connection or use full URLs directly.
When using a REST connection, the URL (hard-coded or accepted from a field) will be considered a path relative to the base URL defined in the REST connection. Header values that are specified in the Headers tab of the transform will overwrite any headers with the same name that were defined in the REST connection.
When used without a REST connection, the full URL needs to be specified.
Example
The REST client Transform returns a "result" field (can change the name), and the field is often used in the next transform. For example, it can be read in by a JSON input transform that extracts the fields specified on the Fields tab.
Hop Engine
✓
Spark
?
Flink
?
Dataflow
?
Options
General Tab
The General tab is where you enter basic connection information for accessing a resource.
Transform name
Name of this transform as it appears in the pipeline workspace
REST Connection
The (optional) REST connection to use for the base URL and authentication/authorization header name and value.
URL
Indicates the path to a resource
Accept URL from field
Designates the path to a resource is defined from a field
URL field name
Indicates the field from which the path to a resource is defined
HTTP method
Indicates how the transform interacts with a resource---options are either GET, PUT, DELETE, POST, HEAD, or OPTIONS
Get Method from field
Designates the GET method is defined from a field
Method fieldname
Indicates the field from which the GET method is defined
Body field
Contains the request body for POST, PUT, and DELETE methods. Body field only accepts a previous field, not a hard coded value.
Application type
Designates what type of application a resource is---options are either TEXT PLAIN, XML, JSON, OCTET STREAM, XHTML, FORM URLENCODED, ATOM XML, SVG XML, or TEXT XML
Connection timeout
Indicates the timeout until a connection is established (milliseconds)
Read timeout
Indicates the timeout for waiting for reading data (milliseconds)
Result fieldname
Designates the name of the result output field
HTTP status code fieldname
Designates the name of the HTTP status code field
Response time (milliseconds) fieldname
Designates the name of the response time field
Authentication Tab
If necessary, enter authentication details for a resource in the Authentication tab.
HTTP Login
Indicates the username required to access a resource
HTTP Password
Indicates the password associated with the provided HTTP Login username
Preemptive
Option to send the authentication credentials before a server gives an unauthorized response. Currently always true, due to bug #4196.
Proxy Host
Indicates the name of a proxy host
Proxy Port
Indicates the port number of a proxy host
SSL Tab
The SSL tab is where you provide authentication details for accessing a resource that requires SSL certificate authentication.
Truststore file
Indicates the location of a truststore file
Truststore password
Indicates the password associated with the provided truststore file
Headers Tab
The Headers tab enables you to define the content of any HTTP headers using an existing field. Populate the list of fields by clicking the Get fields button.
Field
The field from incoming Hop stream that contains the header information. Add the header value field name to the Field column.
Name
The name of the outgoing Hop field from this transform. Add the header key field name to the Name column.
Parameters Tab
The Parameters tab enables you to define parameter values for POST, PUT, and DELETE requests. GET parameters should be part of the URL directly.
Parameter
The field from incoming Hop stream that contains the parameter information
Parameter
The name of the outgoing Hop field from this transform
Matrix Parameters tab
Use the Matrix Parameters tab to define matrix parameter values for POST, PUT, DELETE, and PATCH requests.
Parameter
The field from the incoming Hop stream that contains the matrix parameter information
Parameter
The name of the outgoing Hop field from this transform
Last updated