enifsieus / vulndb

Ingesting and modeling tools for NVD (Vulnerabilities and Products) and OSV
Apache License 2.0
1 stars 4 forks source link

Adding an HTTP server with fastapi #8

Closed fkautz closed 8 months ago

fkautz commented 8 months ago

Initial endpoints are:

@app.get("/"): Root endpoint that returns a status object. @app.get("/cve/id/{cve_id}"): Endpoint to retrieve a CVE entry by CVE ID. @app.get("/cpe/id/{cpe_id}"): Endpoint to retrieve a CPE entry by CPE ID. @app.get("/osv/id/{id}"): Endpoint to retrieve an OSV entry by an ID or alias. @app.post("/osv/purl"): Endpoint to retrieve an OSV entry by a Package URL (purl). @app.post("/cve/purl"): Endpoint to retrieve a CVE entry by a Package URL (purl).

There is also an auto-generated /docs endpoint.

As a future item, if we strongly type the API, it will automatically generate docs. This also extends to pydanic which we use for the database.

fkautz commented 8 months ago

sorry, this wasn't meant to be upstreamed at this time.