Navis Ops workflows support inbound webhooks — HTTP endpoints that external services can POST to in order to trigger a workflow run. When a webhook fires, Navis Ops queues the workflow run immediately, and the JSON payload from the request becomes available as variables throughout the workflow. You can also send requests to external services from within a workflow using the HTTP Request action node.Documentation Index
Fetch the complete documentation index at: https://docs.navisops.com/llms.txt
Use this file to discover all available pages before exploring further.
Setting up an inbound webhook
Create or open a workflow
In the Navis Ops sidebar, click Workflows and either create a new workflow or open an existing one.
Add a Webhook trigger node
In the workflow canvas, click Add node and select Webhook from the trigger options. Navis Ops generates a unique endpoint URL for this workflow and displays it in the node panel.Copy this URL — you will paste it into your external service’s webhook configuration.
Secure the endpoint (recommended)
In the Webhook trigger node panel, set a value for Webhook secret. This is an arbitrary string you choose — for example, a random 32-character alphanumeric value.Once set, every inbound request must include an
x-webhook-secret header with this value. Requests without the correct secret are rejected.Paste the endpoint URL into your external service
Go to your external service (for example, Stripe, GitHub, or Zapier) and add the Navis Ops webhook URL as a webhook destination. Configure it to POST JSON to that URL.If you set a webhook secret, also configure the external service to send it in the
x-webhook-secret header on every request.How requests are handled
When a POST request arrives at your webhook endpoint:- Navis Ops validates the
x-webhook-secretheader (if configured). Mismatched or missing secrets return403 Forbidden. - The request body is parsed as JSON. If the body is not valid JSON or is empty, Navis Ops proceeds with an empty payload object.
- Navis Ops responds with
200 OKimmediately — the workflow run is queued and processed asynchronously. - The workflow executes with the request payload available as trigger variables.
Navis Ops returns
200 OK as soon as the workflow is queued, not when it finishes running. Your external service should not rely on the response body for execution results.Request format
Send a standard HTTP POST with a JSON body and the correct headers:Accessing payload data in the workflow
The request body is available in the workflow as trigger variables using the{{trigger.*}} syntax. See the Events reference for variable path examples and a full walkthrough.
Sending outbound requests
Workflows can also call external URLs using the HTTP Request action node. This lets you:- Post a message to Slack when a task is created
- Send data to an external API when a project status changes
- Trigger a Zapier webhook from a Navis Ops workflow
Next steps
Webhook payload examples and variables
See how to access trigger variables in your workflow, with real payload examples for common services.