SAP-samples/cloud-cap-with-javascript-basics

2 errors, 82 warningsmain

84 issues need attention.

2 errors and 82 warnings in the paths between 89 routes and 3 tables.

ROUTE FINDINGS81 of 89 · 7/7 rules
ROUTES
89
TABLES
3
FILES READ
66
RULES RUN
7/7

84 findings

  • GET /odata/v4/catalog/ListOfBooks can reach Books without authenticating.

    auth-before-dataGET /odata/v4/catalog/ListOfBooks → Books

  • GET /odata/v4/catalog/Books can reach Books without authenticating.

    auth-before-dataGET /odata/v4/catalog/Books → Books

  • GET /odata/v4/admin/Languages has no validator or rate limiter attached.

    public-entry-guarded

  • GET /odata/v4/catalog/ListOfBooks has no validator or rate limiter attached.

    public-entry-guarded

  • GET /odata/v4/catalog/Books has no validator or rate limiter attached.

    public-entry-guarded

  • POST /odata/v4/catalog/submitOrder has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/smtp has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/multiply{/:num1}{/:num2} has no validator or rate limiter attached.

    public-entry-guarded

  • GET /apiJS/api-docs.json has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/xml has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/xml/example1 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/promises has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/promisesError has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/constants has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/blockScoped has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/parameterDefaults has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/parameterMultiple has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/unicode has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/numFormat has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/currFormat has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es6/dateFormat has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es2018 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es2018/promisesFinally has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es2018/for-await-of-loops has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es2018/async-generator has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/es2018/regex2018 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/zip has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/zip/example1 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/zip/zipBooks has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/zip/zipBooks2{/:format} has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/await has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/await/await has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/await/awaitError has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/await/awaitDB1 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/ has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes1 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes1Error has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes2a has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes2b has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes3a has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes3b has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes4a has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/oo/classes4b has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/hello has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex1 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/user has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/os has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/os/osInfo has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/os/osUser has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/excel has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/excel/download has no validator or rate limiter attached.

    public-entry-guarded

  • POST /rest/excel/upload has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/toc has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2 has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/waterfall has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/promises has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/await has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/queryParallel has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/whoAmI has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/env has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/cfApi has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/space has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/os has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/ex2/osUser has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/textBundle has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/strings has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/dates has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/array has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/json has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/objects has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/classes has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/promises has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/constants has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/blockScoped has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/parameterDefaults has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/parameterMultiple has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/unicode has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/numFormat has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/currFormat has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/JavaScriptBasics/dateFormat has no validator or rate limiter attached.

    public-entry-guarded

  • GET /rest/outboundTest/:search{/:index} has no validator or rate limiter attached.

    public-entry-guarded

  • Genres is not connected to anything.

    no-orphan-datastore

Part of this repository was not read, so this report is incomplete. Unread: srv/cat-service.cds, app/admin-books/fiori-service.cds.

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/SAP-samples/cloud-cap-with-javascript-basics)](https://wyro.in/scan/SAP-samples/cloud-cap-with-javascript-basics)

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.