NewWe launched on Y Combinator.Check it out
Back to Changelog
Mar 27, 2026

Custom Integrations for Workflows

Connect anything with an HTTP API or webhooks. Build custom action blocks from a cURL command and custom webhook triggers from an example payload — Kestrel's AI wires up the auth, parameters, and field mappings for you.

Raman Varma
Raman Varma

Kestrel Workflows ship with a large library of built-in actions and triggers across the most common tools in the cloud operations stack. But every platform team runs something the catalog doesn't cover yet — an internal API, a niche SaaS product, a homegrown deployment service. Today we're making sure none of that is a dead end: with Custom Integrations, you can build your own action blocks and webhook triggers for anything with an HTTP API or webhooks.

Custom blocks are created right from the workflow builder sidebar — click Create Custom Workflow Block and choose an action or a trigger. Once saved, they appear in the sidebar alongside the built-in blocks and can be dropped into any workflow.

Custom action blocks — paste a cURL command

A custom HTTP action block lets you call any API endpoint as a workflow step. The fastest way to build one is to paste a cURL command from the API you want to call. Kestrel's AI agent reads it and automatically extracts the method and URL, the headers, the request body, the authentication type, response mappings, and which values should become dynamic parameters.

Review the auto-detected configuration, adjust names and defaults, and click Create. Prefer full control? Skip — build from scratch and configure every field yourself.

Click to expand

Action blocks support API key, bearer token, and basic auth — and credentials are stored encrypted, never exposed in workflow logs or execution history. URLs and bodies accept template variables like {{rca_result.root_cause}}, and the values you map from the JSON response become available downstream as {{step_outputs.<action-id>.<variable>}}.

Custom webhook triggers — paste a payload

A custom webhook trigger lets you start a workflow from any external service that can send an HTTP POST. The fastest way to build one is to paste an example JSON payload. Kestrel detects the event-type field, extracts the useful fields as template variables, and generates a field mapping with sensible names — auto-detected fields become available as {{signal.<field_name>}} in your workflow.

Each trigger gets a unique webhook URL to configure in the external service. You can filter on specific event types so one webhook only fires the workflows it should, and enable HMAC signature verification (with the service's signing secret and signature header) so Kestrel rejects any payload that isn't authentic.

Click to expand

What you can wire up

If a service speaks HTTP or sends webhooks, you can wire it into a workflow — including your own internal services. Because custom blocks compose with the built-in ones, a single workflow can span your homegrown tooling and your whole stack. A few examples:

  • Prometheus Alertmanager

    On an Alertmanager webhook for a firing alert, run an investigation with the alert's labels and annotations, post the findings to #sre in Slack, and open a Jira ticket — turning raw alerts into triaged, actionable incidents.

  • Stripe payment webhooks

    On payment_intent.payment_failed (HMAC-verified), investigate the customer's recent activity, alert #payments, and conditionally raise a PagerDuty alert for large amounts.

  • Internal service events

    On your own deployment service's deploy event, generate the K8s manifests, open a GitOps PR, wait for merge, then trigger an ArgoCD sync.

Getting Started

Open the workflow builder, click Create Custom Workflow Block, and choose Action Block (paste a cURL) or Trigger Block (paste a payload). The full reference — request configuration, auth, response mapping, HMAC verification, and more — is in the Custom Integrations docs.