API transport/header semantics
Shopify Admin GraphQL non-200 errors payload GraphQL errors HTTP status 400
Useful `errors` payload is discarded after status semantics change.
Agent Quick Fix
Request bodies remain locally valid while the external API changes required Accept/Content-Type or success/error status interpretation.
Product: Shopify Admin GraphQL
Current-contract area: GraphQL response parser assumes every non-200 is non-GraphQL
Likely root cause: Useful `errors` payload is discarded after status semantics change.
Repair direction: Verifier checks headers, body encoding, and status handling across success and error cases. Check correct retry classification and GraphQL error parsing.
Validation Status
Codex searched organically in the validation run. No no-web counterfactual is attached to this page yet.
Symptom
Useful `errors` payload is discarded after status semantics change.
Why This Happens
Request bodies remain locally valid while the external API changes required Accept/Content-Type or success/error status interpretation.
Verification
Verifier checks headers, body encoding, and status handling across success and error cases. Check correct retry classification and GraphQL error parsing.
Common Wrong Fixes
- Changing local code without checking the current external contract.
- Retrying the same install, build, or API call with no version/source change.
- Applying a broad unsafe bypass when a narrow compatibility fix is available.
Codex Search Keywords
These are the search terms observed in a neutral Codex validation run for this failure shape.
Shopify Admin GraphQL non-200 errors payload GraphQL errors HTTP status 400
site:shopify.dev/docs/api/admin-graphql status and error codes GraphQL errors status code
Shopify GraphQL Admin API status error codes 200 errors array
https://shopify.dev/docs/api/admin-graphql/latest
'Status and error codes' in https://shopify.dev/docs/api/admin-graphql/latest