maitraysuthar/rest-api-nodejs-mongodb

4 errors, 10 warningsmaster

14 issues need attention.

4 errors and 10 warnings in the paths between 9 routes and 2 tables.

ROUTE FINDINGS9 of 9 · 7/7 rules
ROUTES
9
TABLES
2
FILES READ
14
RULES RUN
7/7

14 findings

  • GET /:id can reach books without authenticating.

    auth-before-dataGET /:id → books

  • POST / can reach books without authenticating.

    auth-before-dataPOST / → books

  • PUT /:id can reach books without authenticating.

    auth-before-dataPUT /:id → books

  • DELETE /:id can reach books without authenticating.

    auth-before-dataDELETE /:id → books

  • GET / has no validator or rate limiter attached.

    public-entry-guarded

  • POST /register has no validator or rate limiter attached.

    public-entry-guarded

  • POST /login has no validator or rate limiter attached.

    public-entry-guarded

  • POST /verify-otp has no validator or rate limiter attached.

    public-entry-guarded

  • POST /resend-verify-otp has no validator or rate limiter attached.

    public-entry-guarded

  • GET /:id has no validator or rate limiter attached.

    public-entry-guarded

  • POST / has no validator or rate limiter attached.

    public-entry-guarded

  • PUT /:id has no validator or rate limiter attached.

    public-entry-guarded

  • DELETE /:id has no validator or rate limiter attached.

    public-entry-guarded

  • users is not connected to anything.

    no-orphan-datastore

Free account, no card. The repository opens as an editable graph.

Add this check to the README

wyro architecture badge
[![wyro architecture](https://wyro.in/api/badge/maitraysuthar/rest-api-nodejs-mongodb)](https://wyro.in/scan/maitraysuthar/rest-api-nodejs-mongodb)

It updates itself whenever the repository changes and links back to this report.

What this is

Wyro reads the repository’s routes and data models and checks the paths between them: whether a route can reach a table without passing a guard, whether a datastore holding personal data is exposed to a public read, whether an endpoint that issues credentials requires the credentials it issues.

It is rule-based, not a model. The same commit produces the same result every time, and it does not guess at business rules it cannot see. A rule with nothing to look at is reported as not having run — never as a pass.

This check runs on public source through GitHub’s own API and needs no account. A free account adds the editable architecture canvas, private repositories on paid plans, and a CI gate. No card required.