Interactive example
n8n outbound request lab
Use these values in an HTTP Request node and compare the resulting capture field by field.
- Content-Type
- application/json
- X-Workflow-Name
- staging-order-router
- X-Event-Type
- order.ready
- Idempotency-Key
- evt_order_1042
{
"event": "order.ready",
"event_id": "evt_order_1042",
"created_at": "2026-08-03T12:00:00Z",
"data": {
"order_id": "ord_test_4201",
"currency": "USD",
"amount": 2499,
"test": true
}
}Configured response
202 Accepted
Content-Type: application/json
{"accepted":true,"source":"n8n-test"}Synthetic data only. Never paste production tokens, signing secrets, personal data, or payment information into a public test endpoint.
One-click test setup
Creates a temporary bucket and applies this guide's expected response. You can inspect and delete it from the dashboard.
Choose Which Side of n8n You Are Testing
An n8n workflow can receive a request through the Webhook node or send a request through the HTTP Request node. These are separate contracts. Test the inbound path by calling n8n and examining the workflow execution. Test the outbound path by pointing the HTTP Request node at a temporary WebhookTest.net endpoint.
This guide focuses on outbound evidence because it reveals the final expression values and serialized body after n8n has evaluated the workflow. No production receiver, account credential, or real order record is required.
Build a Reproducible HTTP Request Node
Set the method to POST, paste the one-click endpoint URL into the node, enable a JSON body, and use the synthetic order event from the request lab. Add explicit workflow, event type, and idempotency headers so the capture can be connected to the correct execution.
Execute only the node while developing. The capture should show amount as a number, test as a boolean, and the nested data object as JSON rather than an escaped string. If the structure differs, inspect the expression mode and whether the node is sending JSON, form data, or raw text.
- Use synthetic values and never paste n8n credentials into a captured header
- Set Content-Type application/json when the body is JSON
- Give every attempt a stable event or idempotency key
- Compare the raw body with the input item after expressions are evaluated
Understand Test and Production Webhook URLs
For inbound workflows, n8n exposes separate test and production webhook URLs. The test URL is registered when the editor listens for a test event or executes the workflow. The production URL is registered when the workflow is published or active, and production data is reviewed through execution history rather than the editor canvas.
A common 404 occurs when a sender calls the test URL after the temporary listener has stopped, or calls the production URL before the workflow is active. Confirm the URL mode before changing payload code.
| Mode | Use it when | Inspect the result |
|---|---|---|
| Webhook test URL | Developing while the editor listens | Node output in the current test execution |
| Webhook production URL | The workflow is published or active | The workflow Executions view |
| HTTP Request to WebhookTest.net | Debugging what n8n sends outward | Captured raw request and configured response |
| Respond to Webhook node | The workflow must control its reply | Calling client response plus execution data |
Verify the Response Contract
The endpoint created from this guide returns 202 Accepted with a JSON body. This is useful when an n8n workflow should hand work off asynchronously. Inspect both the node output and the WebhookTest.net capture so you can distinguish a receiver response from the request n8n actually sent.
Then change the bucket response to 400, 429, or 500 and run the same node again. Decide whether the workflow should stop, retry, branch, or record a manual-review item. An HTTP request completing is not the same as the business operation succeeding.
Diagnose the Most Common Failures
If no capture appears, verify that the HTTP Request node executed and that the URL expression resolves to the complete HTTPS endpoint. If the capture is present but n8n reports an error, inspect the configured response status and the node setting that controls behavior for non-2xx responses.
If the body is empty or malformed, check body mode, field expressions, and Content-Type. If duplicate events appear, inspect workflow retries and execution restarts, then make the downstream receiver idempotent using the event identifier.
- 404 on an inbound n8n test URL: start Listen for test event again
- 404 on a production URL: publish or activate the workflow and verify the path
- Unexpected form fields: switch the outgoing node to a JSON body
- Duplicate requests: correlate executions with the Idempotency-Key value
Common questions
Frequently asked questions
- Should I use the n8n test URL or production URL?
- Use the test URL while the editor is listening for a test event. Publish or activate the workflow before using its production URL. The two URLs have different registration and execution behavior.
- Can I use WebhookTest.net with an n8n HTTP Request node?
- Yes. Create a temporary endpoint, paste its webhook URL into the HTTP Request node, execute the node, and inspect the captured method, headers, query values, and body.
- How can I test a custom n8n webhook response?
- Configure the Webhook node response mode or use Respond to Webhook, then call the n8n URL from a controlled client. In the opposite direction, configure a WebhookTest.net bucket response to see how an outbound n8n request handles 2xx and non-2xx replies.
Primary sources
Official references
Try it with a real request
Turn the guide into a test.
Open a temporary endpoint, send your payload, and inspect exactly what arrived.
Open the tester