Will It Vibe logoWill It Vibe?
API-008Medium severity-8 points

OpenAPI-style {param} braces in an Express route

Part of Architecture & Best Practices, which counts for 15% of the overall score. When this check fires it deducts 8 points from that category, once per scan, no matter how many places it turns up.

What it detects

A route path uses curly-brace placeholders like {orderId}, which is OpenAPI/Swagger documentation syntax, not the :orderId syntax Express (and most Node routers) actually parse as a parameter. The braces are typically either treated as literal characters the client can never match, or fail to compile as a route at all, most likely copy-pasted from an API spec or another framework's example.

Why it matters

A route path with curly braces like /orders/{orderId} is OpenAPI/Swagger documentation syntax, not something Express or similar Node routers parse as a parameter; they expect a colon, as in /orders/:orderId. Left as braces, the route either fails to compile at all in newer router versions, or in older ones is registered as a literal path that only matches the string '{orderId}' verbatim, meaning no real order ID will ever match it.

How to fix it

Replace the curly-brace placeholder with the colon syntax your router actually parses, for example changing {orderId} to :orderId, and update the handler to read req.params.orderId. If the braces were copied from an OpenAPI spec while stubbing out routes, keep the spec as documentation but fix the actual route registration to use the router's real parameter syntax.

The paid report includes a ready-to-paste prompt for your AI coding agent for every check it finds, pointed at the exact findings from your scan. See pricing

Does your repo trip this check?

Paste a GitHub URL or drop a project folder. Scans run in your browser and take seconds.

Scan your repo

Related Architecture & Best Practices checks