Vulny

Documentație API

API-ul REST Vulny îți permite să rulezi scanări de securitate și să-ți gestionezi țintele programatic. Disponibil în planurile Pro și Corporate (și în timpul perioadei de probă gratuite). Generează o cheie în Setări → API. Pentru pipeline-uri CI/CD gata făcute vezi Pipeline DevSecOps.

Autentificare

Trimite cheia ta API ca bearer token sau în antetul X-API-Key:

curl https://vulny.app/api/v1/targets \
  -H "Authorization: Bearer vlny_your_key"

Limite de rată

120 de cereri pe minut per cheie. Fiecare răspuns include antetele X-RateLimit-Limit, X-RateLimit-Remaining și X-RateLimit-Reset. Depășirea limitei returnează 429 cu un antet Retry-After.

Pornește o scanare

POST /api/v1/scans — pornește o scanare la cerere pe o țintă (adăugată în contul tău dacă este nouă). Returnează un id de scanare pentru interogare.

curl -X POST https://vulny.app/api/v1/scans \
  -H "Authorization: Bearer vlny_your_key" \
  -H "Content-Type: application/json" \
  -d '{"target":"example.com"}'

# → { "id": "...", "target": "example.com", "status": "queued" }

Stare și rezultate ale scanării

GET /api/v1/scans/{id} — interoghează până când done este true. Returnează un summary de severitate și lista de findings — folosește-le pentru a trece sau eșua un pipeline CI.

curl https://vulny.app/api/v1/scans/SCAN_ID \
  -H "Authorization: Bearer vlny_your_key"

# → { "status": "finished", "done": true, "progress": 100,
#     "summary": { "critical": 1, "high": 2, "medium": 0, "low": 3, "total": 6 },
#     "findings": [ { "severity": "critical", "title": "CVE-2024-...", "cvss_score": 9.8, "port": "443/tcp" } ] }

Vezi Pipeline DevSecOps pentru exemple complete GitLab CI și GitHub Actions care așteaptă scanarea și eșuează build-ul la descoperiri critice.

Adaugă ținte (în masă, până la 1000)

POST /api/v1/targets/bulk — acceptă domenii sau IP-uri, opțional cu etichete. Respectă limita de ținte a planului tău.

curl -X POST https://vulny.app/api/v1/targets/bulk \
  -H "Authorization: Bearer vlny_your_key" \
  -H "Content-Type: application/json" \
  -d '{"targets":["example.com","203.0.113.10",{"value":"api.example.com","tags":["prod"]}]}'

Șterge ținte (în masă)

DELETE /api/v1/targets/bulk — după ID-uri sau după valori (IP-uri / nume de host).

curl -X DELETE https://vulny.app/api/v1/targets/bulk \
  -H "Authorization: Bearer vlny_your_key" \
  -H "Content-Type: application/json" \
  -d '{"values":["example.com","203.0.113.10"]}'

Actualizează etichete (în masă)

PATCH /api/v1/targets/tags — setează, adaugă sau elimină etichete pe mai multe ținte odată (mode: set | add | remove).

curl -X PATCH https://vulny.app/api/v1/targets/tags \
  -H "Authorization: Bearer vlny_your_key" \
  -H "Content-Type: application/json" \
  -d '{"values":["example.com"],"tags":["pci","prod"],"mode":"add"}'

Specificație OpenAPI

Specificația completă, citibilă de mașină, este disponibilă la /api/v1/openapi.json — importă-o în Postman, Insomnia sau generatorul tău de cod.

Vezi rezultatul pe propriul tău site

Rulează o singură scanare pentru securitate, SEO și căutarea AI (GEO) – și obține un raport PDF personalizat, pregătit pentru ISO 27001.

Scanează site-ul meu →