{"library":"openapi-enforcer-middleware","title":"OpenAPI Enforcer Middleware","description":"Express middleware that leverages your OpenAPI document to automatically validate requests and responses, mock responses in development, and route requests to your controller functions. Version 2.2.0 supports OpenAPI 2.0 and 3.0.x. Requires openapi-enforcer (>=1.2.0) and express (>=4.0.0) as peer dependencies. Compared to alternatives like express-openapi-validator, this middleware enforces both request and response validation, and offers built-in mocking. Ships TypeScript types. Releases are stable with periodic updates.","language":"javascript","status":"active","last_verified":"Sat Apr 25","install":{"commands":["npm install openapi-enforcer-middleware"],"cli":null},"imports":["import { OpenApiEnforcerMiddleware } from 'openapi-enforcer-middleware'","import { OpenApiEnforcerMiddlewareReviser } from 'openapi-enforcer-middleware'","import EnforcerMiddleware from 'openapi-enforcer-middleware'"],"auth":{"required":false,"env_vars":[]},"quickstart":{"code":"import express from 'express';\nimport { OpenApiEnforcerMiddleware } from 'openapi-enforcer-middleware';\n\nconst app = express();\n\nconst enforcer = new OpenApiEnforcerMiddleware('./openapi.yaml', {\n  mock: true, // enables mocks in development\n});\n\n// Resolve the OpenAPI document\nawait enforcer.start();\n\n// Use the middleware\napp.use(enforcer.middleware());\n\n// Define a controller (function name must match operationId in OpenAPI)\napp.get('/users/:id', (req, res) => {\n  res.json({ id: req.params.id, name: 'John' });\n});\n\napp.listen(3000, () => console.log('Server running on port 3000'));","lang":"typescript","description":"Shows initializing OpenApiEnforcerMiddleware with an OpenAPI file, starting the enforcer, applying middleware, and defining a route that matches an operationId.","tag":null,"tag_description":null,"last_tested":null,"results":[]},"compatibility":null}