Konnectify

Webhook Triggers

Two webhook-based trigger types for receiving external HTTP requests into a workflow — Catch Hook for asynchronous fire-and-forget ingestion, and Sync Hook for synchronous request-response flows.

Webhook Trigger Catch Hook Sync Hook


Overview

Both trigger types are available as events under the Webhook app in the workflow builder. Each generates a unique, persistent URL upon activation.

Comparison at a glance

AspectCatch HookSync Hook
Execution modelAsynchronousSynchronous
HTTP response to callerImmediate 200 OK / 202 AcceptedHeld open until Response Node is reached
Caller receives workflow outputNoYes — via Response Node
Response Node requiredNoYes
Best forHigh-volume event ingestion, third-party webhooksAPI-style flows where the caller expects a structured response

Catch Hook

Catch Hook is an asynchronous webhook trigger. It accepts an incoming HTTP request, immediately acknowledges it, and processes the workflow in the background.

Execution Model ASYNCHRONOUS
  • Immediate acknowledgment — as soon as the platform receives a valid request, it returns 200 OK or 202 Accepted to the caller
  • Decoupled processing — workflow execution is queued and runs in the background; the external sender receives no data generated during execution
  • Scalable — the connection is closed immediately, allowing high-volume event ingestion without exhausting connection pools or causing timeouts in the source system
Supported HTTP Methods
MethodData source
GETData parsed from query parameters
POSTData parsed from request body (JSON, XML, or Form-data)
PUT / PATCHData parsed from request body — used for update-heavy integration logic
DELETEUsed to trigger cleanup or removal workflows based on an identifier
Data Handling

All incoming headers, query parameters, and body content are parsed and made available as variables within the workflow context.

Sync Hook

Sync Hook transforms a workflow into a synchronous API endpoint. Unlike Catch Hook, it keeps the HTTP connection open until the Response Node is reached, at which point it returns the processed data to the requester. A Response Node is required in the workflow for Sync Hook to function correctly.

Execution Model SYNCHRONOUS

Execution flow

StepComponentDescription
1Client RequestExternal system hits the Sync Hook URL. Connection is held open.
2ProcessingThe workflow executes sequential or parallel logic nodes.
3Response NodeThe workflow reaches the Response Node branch.
4Data SelectionThe Response Node pulls data from the configured allowed nodes only.
5HTTP ResponseThe engine sends the data back to the client and closes the connection.
Supported HTTP Methods
MethodUse case
GETSimple data retrieval or trigger signals via query parameters
POSTSending JSON payloads or form data (most common)
PUT / PATCHUpdate-heavy integration logic
DELETEWorkflows managing resource removal
Data Handling

All incoming headers, query parameters, and body content are parsed and made available as variables within the workflow context.

Response Node

The Response Node is the return point of a Sync Hook workflow. It closes the open HTTP connection by sending the final payload back to the client that triggered the Sync Hook. It has no output schema and is always rendered as a separate branch on the workflow canvas, visually isolated from the main execution flow.

Core Features
  • Synchronous output — closes the loop by sending the final payload back to the HTTP client that triggered the Sync Hook
  • Branch isolation — rendered and executed as a separate branch; the normal execution flow continues independently without interruption
  • Terminal branch — no nodes can be added below a Response Node within the response branch
Execution Engine — Dual Loop

When a parent node has a Response Node as one of its children, the execution engine runs two separate loops:

Loop 1 — Normal Node Loop

Executes all standard child nodes following the normal execution path and data flow.

Loop 2 — Response Node Loop

Executes the Response Node branch independently, dispatching the response without interfering with normal node execution.

When to Use

Use Catch Hook when
  • Receiving webhooks from third-party systems (GitHub, Stripe, etc.)
  • The caller does not need to wait for or receive a workflow response
  • Processing high volumes of incoming events without blocking the sender
  • Decoupled, fire-and-forget event ingestion
Use Sync Hook when
  • The caller expects a structured response from the workflow
  • Building an API-style endpoint backed by workflow logic (e.g., user lookup, data enrichment)
  • The response must be based on data processed within the workflow
  • Latency is acceptable and connection hold time is not a concern

Configuration Example

Sync Hook — User Lookup
GET request · Database query · Selective response output
SYNC HOOK

An external system queries a user by ID and expects a structured user profile in return.

1
Trigger

Configure Sync Hook to accept GET. The user ID is passed as a query parameter.

2
Logic

Add a Database Node to find the user by the ID passed in the query parameter.

3
Response Node

Add a Response Node. In Allowed Nodes, select only the Database Node output. Connect the Database Node to the Response Node branch.

Only the Database Node output is returned to the caller — internal processing data is not exposed.
✓ ResultThe Sync Hook holds the connection open while the Database Node queries the user. The Response Node returns the user profile to the caller and closes the connection.

Examples

Stripe payment webhook — create CRM record & send Slack alert
Catch Hook · POST · Asynchronous · Third-party webhook
CATCH HOOK

Stripe fires a payment_intent.succeeded event to the Catch Hook URL. Konnectify acknowledges immediately, then processes the payment data in the background — creating a deal in HubSpot and posting a notification to Slack.

Workflow
Trigger
Catch Hook
POST /webhook
Action
Filter
status = succeeded
Action
HubSpot
Create Deal
Action
Slack
Post message
✓ Stripe receives200 OK immediately. Stripe does not wait. Konnectify processes the deal creation and Slack message in the background.
✗ If Filter failsPayment status is not succeeded — workflow stops. No HubSpot deal or Slack message sent.
GitHub push event — run CI notification pipeline
Catch Hook · POST · Asynchronous · DevOps automation
CATCH HOOK

GitHub sends a push event whenever code is merged to main. The Catch Hook acknowledges instantly so GitHub's delivery timeout is never hit. Konnectify then notifies the team and logs the deployment entry.

Workflow
Trigger
Catch Hook
GitHub push
Action
Filter
branch = main
Action
Slack
Deploy alert
Action
Google Sheets
Log deploy
✓ ResultGitHub never times out waiting for a response. Team is notified in Slack and the push is logged to the deployment sheet.
CRM enrichment API — look up company by domain
Sync Hook · GET · Synchronous · API-style endpoint
SYNC HOOK

An internal sales tool calls the Sync Hook URL with a company domain in the query string. Konnectify looks up the company record in HubSpot and returns the enriched profile directly to the calling app — without the sales tool needing its own HubSpot integration.

Workflow
Trigger
Sync Hook
GET ?domain=acme.com
Action
HubSpot
Search Company
Action
Code Block
Format payload
Response
Response Node
Code Block output

Response Node → Allowed Nodes: Code Block only

✓ PassCompany found. The formatted payload is returned to the calling app. HubSpot internals are not exposed.
✗ Not foundCode Block returns an empty or error payload. Response Node still closes the connection with the appropriate response.
Chatbot backend — process user query & return AI response
Sync Hook · POST · Synchronous · AI agent integration
SYNC HOOK

A chatbot frontend posts the user's message to the Sync Hook endpoint. Konnectify runs the message through an AI Agent node, fetches relevant context from a database, and returns the final response to the frontend — which displays it to the user.

Workflow
Trigger
Sync Hook
POST {message}
Action
DB Lookup
Fetch context
Action
AI Agent
Generate reply
Response
Response Node
AI Agent output

Response Node → Allowed Nodes: AI Agent only

✓ ResultThe chatbot frontend receives the AI-generated reply synchronously and displays it to the user. DB context data is not exposed in the response.

Workflow Diagrams

Catch Hook — Asynchronous flow
External
POST /webhook
Platform
Returns 200 OK
Connection closed
Background
Workflow queued
Execution
Nodes run
No response to caller

External system is released immediately. Workflow runs independently in the background — caller never sees node outputs.

Sync Hook — Synchronous flow
External
POST /webhook-sync
Connection held open
Execution
Nodes run
Caller waits...
Response Node
Selects output
Allowed Nodes only
Response
Payload sent
Connection closed

External system waits until the Response Node is reached. Only the configured Allowed Nodes output is returned.

Things to Know

ScenarioBehavior
Request arrives without Content-Type headerAccepted and processed using a default parsing strategy — not rejected
Node added below a Response NodeRejected by the node connection validator — the response branch is terminal
Response Node inserted mid-workflowGraph is automatically restructured into a fork; downstream normal nodes are not relinked to the Response Node
Sync Hook without a Response NodeThe HTTP connection will never be closed — a Response Node is required for Sync Hook to function correctly
Response Node execution alongside normal nodesDual loop execution — Response Node loop runs independently of the normal node loop; neither blocks the other
Allowed Nodes in Response Node: Always configure the Allowed Nodes field to include only the specific node outputs you intend to return. This prevents internal workflow data from being unintentionally exposed to the caller.

Frequently Asked Questions

Catch Hook vs Sync Hook

What is the fundamental difference between Catch Hook and Sync Hook?+

Catch Hook is asynchronous — it acknowledges the request immediately and processes the workflow in the background. The caller receives no output from the workflow.

Sync Hook is synchronous — it holds the HTTP connection open, runs the workflow, and returns the Response Node's output to the caller before closing the connection.

Do both hooks require a Content-Type header?+

No. Both Catch Hook and Sync Hook accept incoming requests without a Content-Type header. When the header is absent, a default parsing strategy is applied automatically.

Can I switch between Catch Hook and Sync Hook without deactivating the workflow?+

Yes. Switching between Catch Hook and Sync Hook is supported in Active mode. The trigger configuration updates in real time and ongoing execution is not disrupted.

Response Node

Why is the Response Node rendered as a separate branch and not inline?+

The Response Node has no output schema. If placed inline, it would visually imply that subsequent nodes depend on its output, which is misleading. Rendering it as a separate branch makes it clear that it is a terminal exit point and that the main execution flow continues independently on a different branch.

Can I add nodes after a Response Node?+

No. The response branch is terminal. The node connection validator rejects any attempt to connect a child node below a Response Node. Normal workflow execution continues on a separate branch unaffected by the Response Node.

What does the Allowed Nodes field in the Response Node control?+

Allowed Nodes controls which upstream nodes' output is included in the HTTP response sent back to the caller. Configuring this prevents internal processing data from being leaked — only the output of the nodes you explicitly allow is returned.

Does the Response Node block the normal execution branch from running?+

No. The execution engine runs two separate loops when a parent node has a Response Node as a child. The Response Node loop and the normal node loop execute independently — neither blocks or alters the data passed to the other.

Ready to build smarter workflows?

Use Catch Hook and Sync Hook to integrate any external system with your Konnectify workflows.

Get started free →

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select at least one of the reasons
CAPTCHA verification is required.

Feedback sent

We appreciate your effort and will try to fix the article