HTTP contract drift: why "valid" requests get rejected
"Contract drift" happens when the JSON shape your API actually returns slowly diverges from the contract your clients were built against. Fields go missing, types change, new enum values appear, or arrays turn into objects. Everything still looks like valid JSON, but your assumptions are now wrong.
Common signs of HTTP contract drift
- Previously required fields stop appearing in responses.
- String fields become numbers (or vice versa) after a refactor.
- Enum-like fields gain new values without a version bump.
- Arrays become single objects, breaking collection handling code.
How Inspectly helps
The HTTP Contract Drift Inspector compares an expected contract example with a real request or response. It highlights missing fields, type mismatches, structural differences, and enum-like string drift that often slip past simple schema checks.
Use it when a client says "nothing changed" but your logs and error messages tell a different story.
Next steps
- Analyze a failing call with the HTTP Contract Drift Inspector.
- Investigate mismatched requests and responses with the API request/response mismatch guide.
- Verify your OpenAPI spec still matches reality using the OpenAPI Silent Failure Validator.