Outgoing Webhooks


Outgoing webhooks are a simple way to send HTTP POST requests to external applications. They are like notifications, but the recipient is an external application URL instead of an email address, and the message is a JSON payload instead of a text or HTML body.

To create outgoing webhooks, use the RESTAPICLIENT or SENDHTTPPOST workflow application, which you can use as a system action in your workflows.

It is recommended to use RESTAPICLIENT instead of SENDHTTPPOST, since RESTAPICLIENT provides more extensive features.

Integrating webhooks with WorkflowGen

RESTAPICLIENT workflow application

The RESTAPICLIENT workflow application is the preferred solution for advanced REST integration, since SENDHTTPPOST provides only a subset of RESTAPICLIENT features intended for simple use cases.

RESTAPICLIENT allows you to call REST API endpoints to exchange information with other applications through HTTP requests, and can be used to build integrations with extendable applications (such as Azure services and Slack).

It also allows you to call a REST API endpoint using application/json or application/x-www-form-urlencoded payloads. RESTAPICLIENT will then receive and process the response from the external API by mapping the response content with defined OUT parameters.

For information on RESTAPICLIENT, see the RESTAPICLIENT Workflow Application section in the WorkflowGen Administration Guide.

SENDHTTPPOST workflow application

The SENDHTTPPOST workflow application (available as of version 6.6.0) allows WorkflowGen to send HTTP POST requests to external applications using JSON or URLENCODED payloads. The SENDHTTPPOST application will then receive and process the response from the external API.

For more information on how the application works, see SENDHTTPPOST workflow application in the WorkflowGen Administration Guide.

For samples of APIs that use SENDHTTPPOST, see the SENDHTTPPOST workflow application repository on GitHub.

Performance optimization

The value of the nodeProcessCountPerApplication setting is set to 0 by default for the best performance in Node.js applications. This creates one node process based on the number of virtual processors that are configured. You can change this value at any time to a custom number of node processes; for example, nodeProcessCountPerApplication=2 will create two node processes independently of the number of virtual processors.

For more information, see the Best practices and troubleshooting guide for node applications on Azure App Service Windows Microsoft article.