Webhook Returns an Error: How to Troubleshoot Status Codes and Failed Requests
When a webhook returns an error, the automation created the request and the endpoint responded, but the response was not a success. The break is somewhere between the request leaving the automation and the endpoint accepting it. Read the status code first, because the code tells you whether the problem is the request itself, the authentication or the receiving system.
Table of Contents
- 01.The request and response flow you are debugging
- 02.What to check first
- 03.Read the status code before changing anything
- 04.4xx errors and the request itself
- 05.5xx errors and the receiving system
- 06.Request method and headers
- 07.Payload and required fields
- 08.Authentication failures
- 09.How to test it
The request and response flow you are debugging
A webhook error means the request was sent and a response came back. The flow is the automation building the request, the request travelling to the endpoint, the endpoint processing it and the endpoint returning a status code. The automation then records the result. An error response means one of those stages rejected the request. The status code narrows down which stage failed.
| Code family | What it usually indicates | Where to look |
|---|---|---|
| 2xx | Request accepted and processed | Success, not an error |
| 3xx | Redirect or different endpoint expected | URL, trailing slash, trailing path |
| 4xx | Endpoint rejected the request as invalid | Auth, headers, payload, method |
| 5xx | Endpoint received it but failed internally | Receiving system, server logs, downtime |
What to check first
- Find the exact status code returned, not just that it failed.
- Check whether the same request worked before or this is a new integration.
- Compare the request URL, method and headers against the endpoint documentation.
- Check whether authentication is required and whether it is still valid.
- Look at the response body if the platform exposes it, because it often names the rejected field.
Read the status code before changing anything
A 4xx response and a 5xx response need completely different fixes. A 4xx response means the endpoint understood the request but rejected it as invalid. The request format, authentication, headers or payload are wrong. A 5xx response means the endpoint received the request but failed while processing it. The problem is on the receiving system side. Treating a 5xx as a request problem wastes time because the request was accepted. Read the code and let it direct you.
4xx errors and the request itself
A 401 or 403 usually points to authentication or permissions. The token may be expired, the API key may be wrong or the connected account may lack the required scope. A 400 or 422 usually means the payload failed validation. A required field is missing, a value is the wrong type or the structure does not match what the endpoint expects. A 404 means the URL is wrong, the record does not exist or the path is incomplete. Each of these is a request side problem you fix in the automation, not the receiving system.
5xx errors and the receiving system
A 500, 502 or 503 means the endpoint received the request but could not complete it. The receiving application may be down, overloaded or hitting an internal error on that specific payload. Check the receiving system logs if you have access. A 5xx on one payload but not others can still be a payload problem that triggers a server side error, so compare a failing request with a working one. Do not assume every 5xx is a platform outage.
Request method and headers
The HTTP method has to match what the endpoint expects. A POST sent to an endpoint that expects PUT, or a GET sent where a POST is required, returns an error even when the payload is correct. Headers are equally important. A missing content type header, a missing accept header or a missing authorization header can cause a 4xx response. Compare the request the automation builds with a known working request from the endpoint documentation or an API testing tool.
Payload and required fields
The most common 4xx cause is a payload that fails validation. A required field is empty, a value is the wrong format or a nested object is missing. The response body often names the exact field that failed. If the platform exposes the response body, read it. If it only shows the status code, reconstruct the payload and test it manually against the endpoint to see the detailed error. Field validation problems are covered in more detail in the guide on webhook data mapping.
Authentication failures
Authentication errors are common and often intermittent. A token that expired, a credential that was rotated or a connection that was revoked all produce a 401. Some platforms refresh tokens automatically and some do not. If the webhook worked yesterday and fails today with a 401, check the credential before debugging the payload. Authentication problems are covered in detail in the guide on API automation authentication failed.
How to test it
- 1.Run the automation and capture the exact status code returned.
- 2.If the platform shows the response body, read the specific error message.
- 3.Reconstruct the same request in an API testing tool and send it manually.
- 4.If the manual request also fails, the problem is the request, method, headers or payload.
- 5.If the manual request succeeds, compare it with what the automation actually sent.
- 6.For 5xx responses, check the receiving system logs and retry after a short wait.
Frequently Asked Questions
What does a 4xx webhook error usually mean?
A 4xx response means the endpoint received the request but rejected it as invalid. The URL, method, authentication, headers or payload are wrong. Fix the request side, not the receiving system.
What does a 5xx webhook error usually mean?
A 5xx response means the endpoint received the request but failed while processing it. The receiving system may be down or hitting an internal error. Check the receiving system logs before changing the request.
Need help applying this to your business?

PPC, Conversion Tracking, CRM and Automation Specialist. Helping businesses generate qualified leads with Google Ads, accurate tracking and automated follow-up.
Related Guides
Automation Webhook Not Firing: A Practical Troubleshooting Guide
A webhook that does not fire either never reached the action or created no request. Determine whether the request was created before debugging the endpoint.
Webhook Fires but No Data Arrives: How to Find Where the Request Fails
A webhook that fires but delivers no data failed at one of three points. Check both the sending and receiving sides to find where the request failed.
Webhook Works in Testing but Not in Production: What to Check
A test that passes proves the logic works. The production failure is an environment difference, so compare the endpoint, authentication, payload and trigger between the two.