Skip to main content

vulkro discover

Map your API surface - extract every HTTP endpoint without running any security scan. Faster than scan and useful when you only need the route inventory (e.g. for OpenAPI generation, contract diffs, or onboarding docs).

Usage

vulkro discover [PATH]
vulkro discover [PATH] --format json

Arguments

ArgumentDescriptionDefault
PATHPath to the project root..

Flags

FlagDescriptionDefault
--format, -ftable, json, sarif, gh-pr, junit, csv, cyclonedx, spdx, pdf, ropa-md, ropa-html.table

What it does

Walks the working tree honouring .gitignore, detects the language and framework, and statically extracts:

  • HTTP method
  • Route path (with [param] -> {param} normalisation for Next.js)
  • Source file + line number
  • Handler function (when extractable)
  • Auth status (Protected, Unprotected, Unknown)

Output is the same Endpoint records the security engine consumes - so vulkro discover --format json is the canonical way to feed Vulkro's endpoint detection into another tool.

Example

$ vulkro discover ./mealie

Detected: Python | FastAPI
124 endpoints

GET /api/auth/refresh [Protected] mealie/routes/auth.py:42
POST /api/auth/login [Unprotected] mealie/routes/auth.py:67
GET /api/recipes/{slug} [Protected] mealie/routes/recipes.py:113
DELETE /api/groups/{group_id}/members [Protected] mealie/routes/groups.py:88
...

Export to OpenAPI

vulkro export . --target openapi -o openapi.yaml

Produces an OpenAPI 3.1 document with one operation per endpoint. Schemas are minimal placeholders - Vulkro doesn't infer request/response shapes - but route paths, parameters, and method are accurate.