HTTP status code 400 — Bad Request
Quick answer
Status code 400 (Bad Request): Server cannot process the request. Usually malformed JSON, validation errors, or bad query params.
Usually malformed JSON, validation errors, or bad query params.
400 is a client problem. Fix the payload or query — retrying the identical request rarely helps unless the bug was transient client-side.
Common causes
- Malformed JSON body (trailing comma, wrong quotes)
- A required field missing or the wrong type
- A query parameter outside the accepted range/enum
How to fix it
Read the response body — most APIs return which field failed. Validate the payload with a JSON formatter before resending.
Related: 401403404405408409308307
Frequently asked questions
What is status code 400?
400 Bad Request: Server cannot process the request. Usually malformed JSON, validation errors, or bad query params.
When should I expect HTTP 400?
400 is a client problem. Fix the payload or query — retrying the identical request rarely helps unless the bug was transient client-side.
What usually causes HTTP 400?
Malformed JSON body (trailing comma, wrong quotes); A required field missing or the wrong type; A query parameter outside the accepted range/enum.
How do I fix HTTP 400?
Read the response body — most APIs return which field failed. Validate the payload with a JSON formatter before resending.
Where can I see all status codes?
Open the HTTP status codes hub on TryDevSnip for the full reference list.
Does TryDevSnip log my API traffic?
No. These pages are static reference. TryDevSnip does not proxy or inspect your HTTP calls.