Webhook

The Webhook connection listens on a port for incoming HTTP messages and transforms and filters these messages making the data available as an input in the server. For example, a webhook input might received JSON messages from a work order system, and filter only work orders that are completed.

Connection Settings

Port

The port that the webhook listens on. This port must be open in the firewall for other applications to connect and send HTTP requests to.

User HTTPS

When enabled the webhook is available on https://<hostname>:port

Schema Certificate

The private key used to encrypt the webhook when HTTPS is enabled.

Authorization Type

Controls if authentication is required for the connection. When set to None, not authentication is required. When set the Bearer, the HTTP client must include the Authorization Token in the header of the request.

Authorization Token

A custom token that clients must include in the HTTP header to authenticate in the following format.

  • Authorization: Bearer <token>

Input Settings

Inputs provide a way to filter messages sent to the webhook. The webhook accepts the following content types:

  • application/json
  • application/xml
  • application/octet-stream
  • text/plain
  • application/x-www-form-urlencoded

Filter

The filter option filters incoming payloads using data in the payload. Click ‘Add Value’ to add an attribute Name and Value to the filter. Multiple Name/Value pairs are logically AND together. Matching is case sensitive.

As an example, this filter will match the example payload below.

Name Value
Machine.Online true
Machine.AssetInfo.ID MACH-L1-102
json
// Example JSON payload
{
	"Machine" : {
		"AssetInfo" : {
			"ID" : "MACH-L1-102",
			"SN" : "B320-3R821N9-D",
			"Date" : "2018-09-29"
		},
		"Online" : true,
		"Utilization" : 40.0
	}
}

Include Metadata

Enable this to include the headers in the payload. When enabled header name:value pairs are placed at the root of the payload and the body is included under a value attribute.

json
{
	"header1": "header1value",
	"header2": "header2value",
	"value": {
		"tag1": 100
	}
}

Output Settings

Outputs are not supported