# Production webhook returns HTTP 200 with empty response body

**URL:** <https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269>\
**Category:** Questions\
**Tags:** deployment, workflow-building\
**Created:** [August 29, 2026, 8:09pm UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269 "2026-08-29T20:09:27Z")\
**Posts on this page:** 7\
**Page:** 1

<div class="post-metadata">

**Author:** ![David\_Sichel](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/david_sichel/32/186730_2.png) [@David\_Sichel](https://community.n8n.io/u/David_Sichel)\
**Post date:** [August 29, 2026, 8:09pm UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269/1 "2026-08-29T20:09:27Z")

</div>

Thanks for responding. I’m new to n8n, so I appreciate the help.  
I’m using n8n Cloud with a Lovable app sending a POST request to my production webhook.  
What happens:  
Lovable sends the request successfully.  
The n8n production workflow triggers and completes successfully.  
The AI nodes run successfully.  
The Airtable record is created successfully.  
The final response node has the correct JSON.  
But Lovable receives HTTP 200 with an empty response body.  
Webhook configuration:  
Node: n8n-nodes-base.webhook  
responseMode: responseNode  
“No Response Body”: OFF  
Configured to use a Respond to Webhook node  
I also tried When Last Node Finishes, but the external caller still received an empty response.  
The production webhook is active and production executions are appearing normally.  
I can provide screenshots of the Webhook node, Respond to Webhook node, final JSON output, and execution. Please let me know which would be most useful.  
I’d prefer not to publicly post the entire production workflow because it contains business configuration and integrations, but I can share a sanitized portion if needed. escalate this ticket to a human support engineer.  
We have already checked the Webhook node response settings, verified the Respond to Webhook node receives valid JSON, tested both “Respond to Webhook” and “When Last Node Finishes,” and confirmed the production workflow executes successfully.  
The caller still receives HTTP 200 with an empty body.  
I’d like a human to review the production execution and webhook response behavior. I can provide execution IDs, screenshots, and a sanitized workflow export.-- Thank you for opening a feature request. If this is not for a node, please remove the node subcategory. Otherwise, follow the below template. →

## It would help if there was a node for:

## My use case:

## Any resources to support this?

## Are you willing to work on this?

---

<div class="post-metadata">

**Author:** ![n8n](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/n8n/32/196425_2.png) [@n8n](https://community.n8n.io/u/n8n)\
**Post date:** [August 29, 2026, 8:10pm UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269/2 "2026-08-29T20:10:08Z")

</div>

Hey @David_Sichel, while you wait for a response, here are some things that might help:

> **Suggested resources**
>
> _Automatically matched to your question._
> 
> **Docs:**
> 
> - [Wait](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.wait#on-webhook-call-options)
> - [Respond to Webhook](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.respondtowebhook)
> - [Webhook](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.webhook#node-options)
> 
> **Forum:**
> 
> - [Evolution Api-n8n-coolify- webhook works with test URL but fails to receive data with production URL](https://community.n8n.io/t/145846)
> - [Eleven labs webhook not receiving data in production url](https://community.n8n.io/t/252914)
> - [Webhook Not Receiving Data from External Service](https://community.n8n.io/t/281672)

@Mohd_Zuhaili_Mohd, @Uros_Zdravkovic, @Niffzy - you’ve helped with similar issues before, can you take a look?

_Automatically suggested by n8n’s community bot. It’s a pilot - [please share feedback here](https://community.n8n.io/t/pilot-forum-helper-bot/304669)._

---

<div class="post-metadata">

**Author:** ![achamm](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/achamm/32/143734_2.png) [@achamm](https://community.n8n.io/u/achamm)\
**Post date:** [August 29, 2026, 8:13pm UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269/3 "2026-08-29T20:13:50Z")

</div>

@David_Sichel Can you elaborate? What is the request you are sending? Can you provide your workflow or screenshots?

---

<div class="post-metadata">

**Author:** ![Deepankar](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/deepankar/32/174793_2.png) [@Deepankar](https://community.n8n.io/u/Deepankar)\
**Post date:** [August 30, 2026, 8:04am UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269/4 "2026-08-30T08:04:15Z")

</div>

Hey @David_Sichel Welcome to the n8n community  
“the final response node has the correct JSON” is the part worth re-checking, because that panel shows the node’s input by default, not what it sent. A green execution returning an empty body looks exactly like this when the response expression resolves to nothing.

Open the Respond to Webhook node, go to the Settings tab and turn on Enable Response Output Branch. That adds a second output with the actual body in it. If it’s empty, the expression is your problem. If it already shows your JSON, go looking for another Respond to Webhook node earlier in the flow, because the first one to run wins and n8n silently ignores every one after it.

> **[Respond to Webhook | Nodes | n8n Docs](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.respondtowebhook)**
>
> Documentation for the Respond to Webhook node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.

---

<div class="post-metadata">

**Author:** ![David\_Sichel](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/david_sichel/32/186730_2.png) [@David\_Sichel](https://community.n8n.io/u/David_Sichel)\
**Post date:** [August 30, 2026, 10:23am UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269/5 "2026-08-30T10:23:47Z")

</div>

I’ve narrowed down the issue.

My Lovable Content Studio sends a request to n8n. The n8n workflow now completes successfully, but Lovable returns:

“Generation failed — Generation timed out. The automation did not respond in time.”

The integration is designed to be asynchronous: Lovable sends `callback_url`, n8n generates the content, then sends the finished result back to Lovable.

However, Lovable’s current code uses `await fetch(webhookUrl, ...)`, so it appears to wait for the initial n8n HTTP response.

Can you confirm the correct setup so the initial request is acknowledged immediately and Lovable then waits for the callback/polls for the completed post?

I do not want to rebuild the workflow or database. I’m trying to fix only this timeout/response-handshake issue.

---

<div class="post-metadata">

**Author:** ![Deepankar](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/deepankar/32/174793_2.png) [@Deepankar](https://community.n8n.io/u/Deepankar)\
**Post date:** [August 30, 2026, 10:49am UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269/6 "2026-08-30T10:49:19Z")

</div>

Hey @David_Sichel, no n8n setting fixes this alone, because the timeout is Lovable’s await, not n8n being slow to answer.

The n8n side is one node, not a rebuild. Move a Respond to Webhook node so it sits directly after the trigger and give it Response Code 202 under Add Option. Execution carries on past it, so your AI nodes and Airtable still run exactly as they do now, and an HTTP Request node at the end posts the finished content to {{ $(‘Webhook’).first().json.body.callback\_url }}.

The half you can’t avoid is Lovable. While its code treats the fetch response as the generated post, it will just show that acknowledgement instead of waiting for your callback.

> **[Respond to Webhook | Nodes | n8n Docs](https://docs.n8n.io/integrations/builtin/core-nodes/n8n-nodes-base.respondtowebhook)**
>
> Documentation for the Respond to Webhook node in n8n, a workflow automation platform. Includes guidance on usage, and links to examples.

---

<div class="post-metadata">

**Author:** ![David\_Sichel](https://dub1.discourse-cdn.com/n8n/user_avatar/community.n8n.io/david_sichel/32/186730_2.png) [@David\_Sichel](https://community.n8n.io/u/David_Sichel)\
**Post date:** [August 30, 2026, 2:15pm UTC](https://community.n8n.io/t/production-webhook-returns-http-200-with-empty-response-body/310269/8 "2026-08-30T14:15:52Z")

</div>

solved thanks for everything
