api-type-alignment
Backend endpoints should have response_model; frontend should use generated types.
Applies to: Python, TypeScript
Why this matters
When backend endpoints lack response_model, the OpenAPI spec can't generate TypeScript types. This forces frontend to define inline types that drift from the actual API response shape, causing runtime errors. Use response_model on all endpoints and import generated types in frontend.
Catch it before it ships
pip install stablestack # or: npx stablestackstablestack # scans your project, API005 includedstablestack explain API005API005 is part of the Pro rule set. See pricing — the free tier ships 24 checks with no signup.
False positive in your codebase? Suppress a single line with # noqa: API005
More API Contracts checks
unhandled-api-error
API calls without error handling will crash on network failures
API002inconsistent-api-naming
Mixed naming conventions (snake_case/camelCase) in API code cause bugs
API003missing-content-type
POST/PUT requests without Content-Type may fail or be misinterpreted
API004hardcoded-api-url
Hardcoded API URLs make it hard to switch between environments
API006cross-file-type-mismatch
Cross-file type mismatch between API endpoint and client call site.
API007untyped-api-response
API endpoint has no typed response — consumers can't rely on the response shape.