ScanOpsPro API Coming soon
A programmatic version of our scanner is on the roadmap, so you can run the same read-only security and performance checks from your own scripts and pipelines. It is not live yet — this page previews the shape we are designing so you can plan ahead.
Planned endpoint
The API is expected to be a single, simple GET request that takes the URL you want to scan as a query parameter and returns JSON. Something along these lines:
GET https://scanopspro.com/api/v1/scan?url=example.com
Just like the website scanner, it will perform only read-only checks against public information — TLS, HTTP response headers and response timing — and will never carry out intrusive testing. Our full methodology applies unchanged.
Planned response
The JSON response will mirror the fields the web scanner already produces, so anything you can read in a report you will be able to read from the API. A successful scan is expected to look like this:
{
"ok": true,
"host": "example.com",
"final_url": "https://example.com/",
"status": 200,
"https": true,
"ttfb_ms": 148,
"http_version": "3",
"server": null,
"score": 82,
"grade": "warn",
"grade_label": "Needs work",
"checks": [
{
"status": "pass",
"label": "HTTPS / TLS",
"detail": "Served over HTTPS with a valid certificate."
},
{
"status": "fail",
"label": "Content-Security-Policy",
"detail": "No Content-Security-Policy header was found."
},
{
"status": "info",
"label": "Time To First Byte",
"detail": "Good — 148 ms."
}
],
"scanned_at": "2026-08-14 09:30:00 UTC"
}
Fields you can expect
| Field | Type | Meaning |
|---|---|---|
ok | boolean | Whether the scan completed successfully. |
host | string | The hostname that was scanned. |
final_url | string | The URL reached after any redirects. |
status | integer | The HTTP status code of the final response. |
https | boolean | Whether the site was served over valid HTTPS. |
ttfb_ms | integer / null | Time to First Byte in milliseconds, or null if not measurable. |
http_version | string / null | Negotiated HTTP protocol version. |
server | string / null | The Server header, or null if not disclosed. |
score | integer | Overall score from 0 to 100. |
grade | string | One of ok, warn or bad. |
grade_label | string | Human label: Strong, Needs work or At risk. |
checks | array | Each check with its status, label and detail. |
scanned_at | string | UTC timestamp of the scan. |
A failed scan is expected to return {"ok": false, "error": "…"} with a plain-language reason, so your code can branch on the ok flag.
Want the API when it launches?
Tell us how you’d use it and we’ll get in touch as it nears release.
Register interest