Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Openapi Psr7 Validator Laravel Package

league/openapi-psr7-validator

Validate PSR-7 HTTP requests and responses against OpenAPI 3.0.x specifications written in YAML or JSON. Matches requests to operations and checks bodies, headers, and metadata.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Contract-first API development: Lets the team treat the OpenAPI 3.0 spec as the single source of truth and enforce it automatically — validating that requests hitting a Laravel route and responses leaving it actually match what the spec promises. This turns "we have docs" into "our docs are a testable contract."
  • Build vs. buy for API validation: Buying/ adopting this package replaces weeks of hand-rolled validation middleware (schema resolution, $ref handling, format checks, security header validation) with a maintained MIT library. Strong "buy" case for the validation layer only — it does not replace request validation rules for business logic.
  • Roadmap enabler for API versioning and deprecation: Because the validator matches operations against a spec, product can ship v2 endpoints alongside v1 and assert behavioral parity/compliance per version, lowering the risk and cost of API lifecycle decisions (versioning, sunsetting, breaking changes).
  • Contract testing in CI (product risk reduction): Wiring the validator into the test suite or a PSR-15 middleware in staging catches spec drift before customers do — a direct lever on API reliability SLAs and incident/reputation risk.
  • Third-party and partner integrations: Validating inbound partner requests against the published spec gives deterministic, spec-grounded error responses (InvalidBody, InvalidQueryArgs, InvalidSecurity, etc.) — useful when selling/positioning an integration-friendly API.
  • Feature scoping signal: Using the schema validator standalone lets PMs and engineers prototype schema-first features (payload shapes, enums, formats) with automated conformance checks from day one, reducing rework later.
  • Use-case fit: Best where the API surface is documented in OpenAPI and traffic is PSR-7/PSR-15 compatible (Laravel via adapters, Slim via the shipped adapter). Less compelling where specs are stale, where GraphQL/gRPC is the primary surface, or where the team already runs a hosted API gateway/spec-linting product.

When to Consider This Package

Adopt when most of the following hold:

  • You own a real OpenAPI 3.0.x spec in JSON or YAML and want it enforced, not just published.
  • Your stack is PSR-7/PSR-15-shaped (or easily adapted): Laravel and Slim both have viable paths; PSR-15 middleware plus Slim adapter are first-class.
  • You need runtime validation, not just linting: request/response body, headers, cookies, query args, path params, and security headers are all covered with distinct exceptions you can map to HTTP error responses.
  • You want a standalone schema validator too: the package also validates arbitrary data against schema fragments, which is handy for unit tests and internal tooling.
  • You can live with the constraints of an open-source library: MIT, actively released (latest release May 2026), reasonable adoption (~563 stars) but zero dependents listed — so expect to own the integration glue and the operational risk.
  • You need custom formats: built-in validators cover common formats (date-time, uuid4, email, ipv4/ipv6, uri, etc.) and custom format callables can be registered.
  • You need a caching layer: PSR-6 support means spec parsing/compilation can be cached, which matters if you validate on every request.

Look elsewhere when:

  • The spec is unreliable or not maintained — enforcing a stale contract will generate noise and erode trust in validation.
  • You need business-rule validation, authorization logic, or transformation — this is a conformance checker, not a request pipeline replacement; Laravel Form Requests / policies still do that job.
  • You need a managed gateway with rate limiting, observability, and policy — a library won't give you dashboards, alerting, or edge enforcement.
  • You're on a non-PSR HTTP stack with no adapter path, or you need OpenAPI 3.1 support (README scopes to 3.0.x).
  • Team appetite for OSS maintenance is low — the near-zero dependents count and the need to build Laravel middleware wiring mean you should budget integration and upgrade ownership explicitly.

How to Pitch It (Stakeholders)

One-liner: A small, MIT-licensed PHP library that makes our OpenAPI spec enforceable at runtime — it validates real HTTP requests and responses against the spec so our documentation becomes a guarantee, not a suggestion.

For executives: This lets us sell and operate APIs with a machine-checked contract. It reduces the class of bugs where our API silently diverges from what we've documented to partners and customers, lowers integration support cost, and de-risks API versioning — without a new vendor contract or platform migration. Cost is a Composer dependency plus a modest integration effort; the "buy vs. build" math strongly favors adopting it over writing and maintaining a validator in-house.

For engineering leadership: The package covers the hard parts — $ref resolution, body/header/cookie/query/path/security validation, distinct exception types we can map to precise 4xx responses, PSR-15 middleware, a Slim adapter, custom format registration, and a PSR-6 cache layer to avoid re-parsing specs per request. Integration is a thin wrapper: build the validator/middleware from our spec, attach the cache pool, register custom formats, map exceptions to our error envelope, and assert conformance in CI.

Risks to name up front: low dependent count (we own the glue), OpenAPI 3.0.x scope only, and spec quality becomes load-bearing — if the spec rots, validation becomes a source of false positives. Mitigation: treat the spec as a versioned artifact with review, run validation in CI and staging before enforcing in production paths, and keep business-rule validation in Laravel where it belongs.

Recommendation: Green-light a time-boxed pilot — one API surface, CI conformance checks plus a staging PSR-15 middleware, with an explicit spec-ownership owner. Expand to production enforcement only after the noise rate from spec drift is measured and accepted.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core
nodisrupt/laravel-agent
sierratecnologia/media-manager