Documentation·REST API · v1 + v2 mirrored

Build on the same surface
the dashboard runs on.

Scan, compare, evaluate compliance and route webhooks over a plain REST API. Start with the quickstart, browse by surface, then jump into the reference.

Start here

Your first scan in three steps.

  1. 01Create an API key in Dashboard under Settings, API Access.
  2. 02Send it as an X-API-Key header on every request.
  3. 03Scan any domain and read the same graded result the dashboard renders.
Generate an API key
curl
curl -H "X-API-Key: cqs_your_key" \
  https://api.cqwerty.com/api/v1/scan/example.com
200 OK · application/json
{
  "ok": true,
  "domain": "example.com",
  "grades": {
    "ssl_grade": "A+",
    "email_grade": "B",
    "headers_grade": "C",
    "overall_score": 72,
    "risk_level": "MEDIUM"
  }
}
Browse by surface

Which part of your domain are you fixing?

Each surface points to its guide, the live tool to test it, and the endpoint that returns it as JSON.

DNS

A, MX, NS and DNSSEC, plus propagation and lookups across resolvers.

Email auth

SPF, DKIM and DMARC alignment, graded the way inbox providers read them.

TLS

Certificate validity, chain, expiry and the live handshake on port 443.

Headers

HSTS, CSP and the response headers that decide how a browser trusts you.

API reference

Every endpoint, in one place.

REST over HTTPS, JSON in and out. v1 and v2 are mirrored. v1 is supported until April 2027.

Run a lightweight security scan on any domain. Returns SSL, DMARC, SPF and headers grades plus a WHOIS summary.

AuthX-API-Key header
Request
curl -H "X-API-Key: cqs_your_key" \
  https://api.cqwerty.com/api/v1/scan/example.com
Response
{
  "ok": true,
  "domain": "example.com",
  "grades": {
    "ssl_grade": "A+",
    "email_grade": "B",
    "headers_grade": "C",
    "overall_score": 72,
    "risk_level": "MEDIUM"
  },
  "ssl": { "valid": true, "issuer": "Let's Encrypt", "expires": "2026-07-01" },
  "dmarc": { "record": "v=DMARC1; p=reject; rua=..." },
  "spf": { "record": "v=spf1 include:_spf.google.com -all" },
  "scanned_at": "2026-04-11T00:00:00Z"
}

Run your first scan now.

No card, read only, results in about 90 seconds. Generate a key in the dashboard, then call the API.

No credit card Results in 90 seconds Read only