...
Your use of this download is governed by Stonebranch’s Terms of Use, which are available at https://www.stonebranch.com/integration-hub/Terms-and-Privacy/Terms-of-Use/
Overview
A Web service is a method of communication between two electronic devices over a networkAWS Glue is a serverless data-preparation service for extract, transform, and load (ETL) operations. It makes it easy for data engineers, data analysts, data scientists, and ETL developers to extract, clean, enrich, normalize, and load data.
This Universal Extension provides the capability to call endpoints of foreign APIs. It is beneficial for Stonebranch SaaS customers that are accessing the Universal Controller in the Stonebranch AWS Cloud and having their Universal Agents deployed in their datacenter. As the integration is triggered from the Universal Agent, no additional firewall port for the Universal Agent needs to be openedtha capability to submit a new AWS Glue Job.
Software Requirements
This integration requires a Universal Agent and a Python runtime to execute the Universal Task.
...
The input fields for this Universal Extension are described in the following table.
Field | Input type | Default value | Type | Description |
---|---|---|---|---|
Protocol | Required | HTTP(S)/REST | Choice | The communication protocol to be used towards the foreign API. |
HTTP Version | Required | 1.1 | Choice | The Hypertext Transfer Protocol version. |
Authorization Type | Required | Basic | Choice | The authorization type to be used for communicating with the foreign API. The following options are available:
|
Credentials | Optional | - | Credentials | Credentials for "Basic" Authorization Type. They are comprised of:
|
OAuth2 Token | Optional | - | Large Text | The token for "OAuth2 Token" Authorization Type. Required when Authorization Type is "OAuth2 Token". |
Add Authorization Data To | Optional | Request Header | Choice | Specifies where to include the OAuth2 Token in the request. The following options are available:
|
Authorization Header Prefix | Optional | Bearer | Text | The prefix for the OAuth2 Token. The token value is appended to the Authorization Header Prefix in the request Authorization header. For example: Bearer <token_value>. Required when Add Authorization Data To is "Request Header". |
URL | Required | - | Text | The URL to be called. |
HTTP Method | Required | GET | Choice | The HTTP method to be used in the request. The following options are available:
|
Timeout | Optional | - | Integer | The time (in seconds) that the request will wait for the server to send data before closing the connection. If Timeout is not filled, the request will wait (hang) until the connection is closed. |
URL Query Parameters | Optional | - | Array | The list of parameters key/value pairs to be sent in the query string for the request. |
Payload Type | Optional | Raw | Choice | The type of data to be sent in the request body. The following options are available:
|
Payload Source | Optional | Form | Choice | For Payload Type of value "Raw", it specifies how the payload will be provided. The following options are available:
|
MIME Type | Optional | application/json | Choice | The MIME type to be used in the request's header. The following options are available:
|
Other Value For MIME Type | Optional | - | Text | The MIME type to be included in request's header in case "Other" is selected as MIME Type value. Required when MIME Type is "Other". |
Form Data | Optional | - | Array | The list of parameters key/value pairs to be sent in the request body. The request header will include ""x-www-form-urlencoded" as a "Content-Type" in this case. |
Payload | Optional | - | Large Text | The payload to be sent in the request body. Required when Payload Source is "Form". |
Payload Script | Optional | - | Script | The script to be used as a payload source. Required when Payload Source is "Script". |
HTTP Headers | Optional | - | Array | The list of HTTP Headers key/value pairs to be sent with the request. If "Content-Type" header is provided, it will be disregarded by the extension, as the MIME Type field is used for this purpose. |
Proxies | Optional | - | Text | The proxy servers to be used, in the format of values separated by comma. For example: http://ip1:port1,ftp://ip2:port2 |
Use SSL | Required | False | Boolean | Specifies if SSL protocol should be used for the communication with the foreign API. |
SSL Hostname Check | Optional | True | Boolean | Determines if the host name of the certificate should be verified against the hostname in the URL. Required when Use SSL is checked. |
Trusted Certificates File | Optional | - | Text | Path and file name of the trusted certificate or CA bundle to use in certificate verification. The file must be in PEM format. |
Private Key Certificate | Optional | - | Text | Path and file name of the private key file for client side authentication. The file must be in PEM format. |
Public Key Certificate | Optional | - | Text | Path and file name of the public key certificate for client side authentication. The file must be in PEM format. |
Print Result Body To Introduced in version 1.1.0 | Optional | STDOUT | Choice | Specifies where to print the web service output payload. Currently available options are:
|
Process Exit Code Mapping Introduced in version 1.1.0 | Required | False | Boolean | Flag that determines whether exit code mapping is enabled or not. |
Path Expression Introduced in version 1.1.0 | Optional | - | Choice | Field visible only when Process Exit Code Mapping is checked and it is required when visible. The JSON path that is used to check the provided patterns that are set-up on the Response Exit Code Mapping array. |
Response Exit Code Mapping Introduced in version 1.1.0 | Optional | - | Array | Field visible only when Process Exit Code Mapping is checked and it is required when visible. Array that maps patterns to exit codes. Provided exit codes should be in the range [100-255]. |
SSL Certificate Authority File Discovery
...
Task Output
Output Fields
Field | Type | Preserved on re-run | Description |
---|---|---|---|
Response Code | Text | False | The webservice response code. |
Exit Codes
The exit codes for this Universal Extension are described in the following table.
Exit Code | Status Classification Code | Status Classification Description | Status Description |
---|---|---|---|
0 | SUCCESS | Successful Execution | SUCCESS: Task executed successfully <Additional information>. |
1 | FAIL | Failed Execution | FAIL: <Unexpected error description> |
3 | AUTHORIZATION_ERROR | Insufficient Permissions | AUTHORIZATION_ERROR: The authorization credentials provided for the request are invalid. |
21 | FOREIGN_API_REQUEST_ERROR | Bad request to third party API | FOREIGN_API_REQUEST_ERROR: Client side error when sending the request. |
22 | FOREIGN_API_RESPONSE_ERROR | Validation error response from third party API | FOREIGN_API_RESPONSE_ERROR: Server side error. |
23 | FOREIGN_SERVER_ERROR | Destination URL not found or redirected | FOREIGN_SERVER_ERROR: Not Found |
24 | EXIT_CODE_MAPPING_ERROR | Error occurred during Exit Code Mapping | EXIT_CODE_MAPPING_ERROR: Invalid Path Expression EXIT_CODE_MAPPING_ERROR: No match found for the provided expression EXIT_CODE_MAPPING_ERROR: Response body not in JSON format EXIT_CODE_MAPPING_ERROR: Unable to parse the JSON body |
Extension Output
The extension output result has the following fields:
...
This document references the following documents:
Name | Location | Description |
---|---|---|
Universal Templates | https://docs.stonebranch.com/confluence/display/UC71/Universal+Templates | User documentation for creating Universal Templates in the Universal Controller user interface. |
Credentials | https://docs.stonebranch.com/confluence/display/UC71/Credentials#Credentials-CredentialDetailsFieldDescriptions | User Documentation for Credentials Details Field Description |
Universal Tasks | https://docs.stonebranch.com/confluence/display/UC71/Universal+Tasks | User documentation for creating Universal Tasks in the Universal Controller user interface. |