blob: e68ad5ea34affd7f79639081fd80b593edda90f4 [file] [log] [blame]
////
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
////
:documentationPath: /plugins/transforms/
:language: en_US
:page-alternativeEditUrl: https://github.com/apache/incubator-hop/edit/master/plugins/transforms/rest/src/main/doc/rest.adoc
= REST Client
== Description
The REST Client pipeline 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.
== Options
=== General Tab
The General tab is where you enter basic connection information for accessing a resource.
[width="90%", options="header"]
|===
|Option|Description
|Transform name|Name of this transform as it appears in the pipeline workspace
|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
|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
|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.
[width="90%", options="header"]
|===
|Option|Description
|HTTP Login|Indicates the username required to access a resource
|HTTP Password|Indicates the password associated with the provided HTTP Login user name
|Preemptive|Option to send the authentication credentials before a server gives an unauthorized response
|Proxy Host|Indicates the name of a proxy host, if proxy authentication is required
|Proxy Port|Indicates the port number of a proxy host, if proxy authentication is required
|===
=== SSL Tab
The SSL tab is where you provide authentication details for accessing a resource that requires SSL certificate authentication.
[width="90%", options="header"]
|===
|Option|Description
|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.
[width="90%", options="header"]
|===
|Option|Description
|Field|The field from incoming Hop stream that contains the header information
|Name|The name of the outgoing Hop field from this transform
|===
=== 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.
[width="90%", options="header"]
|===
|Option|Description
|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.
[width="90%", options="header"]
|===
|Option|Description
|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
|===