apyhub
SECURITY & PRIVACY · SEO

Audit Website Security API

What it does

Website Security Audit checks a public site for basic security signals and returns a concise report you can act on. Send a url, and optionally set follow_redirects, to inspect the destination site over HTTPS.

The response includes the audited url and host, whether https is in use, and a score from 0 to 100. You also get tls_valid plus boolean checks for common protections: cookie flags (secure, http_only, same_site) and headers (csp, hsts, referrer_policy, x_frame_options, x_content_type_options).

When the audit finds issues, findings returns an array of objects with an id, message, severity, and recommendation. That makes it useful for automated site reviews, pre-release checks, and monitoring of public properties where you want a quick view of missing TLS or defensive headers without running a full scanner.

POST
Audit a website for TLS, headers, cookies, and basic exposure issues
http://localhost:8080/dosvak/website-security-audit

QUICKSTART

GUIDE

Quickstart

Check a website for security basics by sending its URL.

curl -X POST "http://localhost:8080/dosvak/website-security-audit" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://example.com"}'

What you'll get back

Returns a JSON object with website audit results, including url (string), host (string), https (boolean), score (integer from 0 to 100), cookies (object), headers (object), findings (array of finding objects), and tls_valid (boolean).

{
  "url": "https://example.com",
  "host": "example.com",
  "https": true,
  "score": 92,
  "cookies": {
    "secure": true,
    "http_only": true,
    "same_site": true
  },
  "headers": {
    "csp": true,
    "hsts": true,
    "referrer_policy": true,
    "x_frame_options": true,
    "x_content_type_options": true
  },
  "findings": [],
  "tls_valid": true
}
TRY ITLIVE · 100 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*

About this endpoint

What it does

Audits the website at the supplied url and returns a JSON object summarizing basic security checks for HTTPS, headers, cookies, TLS validity, an overall score, and a list of findings.

Request Body

ParameterTypeMandatoryDescription
urlStringYesThe website URL to audit.
follow_redirectsBooleanNoWhether redirects should be followed when auditing the target. Default: true.

Response

Returns a JSON object with url and host string fields, https and tls_valid boolean fields, score as an integer from 0 to 100, nested cookies and headers objects with boolean checks, and a findings array of issue objects.

ParameterTypeMandatoryDescription
urlStringNoThe audited website URL.
hostStringNoThe host extracted for the audit target.
httpsBooleanNoWhether the target is accessible over HTTPS.
scoreIntegerNoThe audit score, from 0 to 100.
cookiesObjectNoCookie-related security checks.<br>cookies.secure: whether cookies are marked secure.<br>cookies.http_only: whether cookies are marked HttpOnly.<br>cookies.same_site: whether cookies use SameSite.
headersObjectNoResponse-header security checks.<br>headers.csp: whether Content Security Policy is present.<br>headers.hsts: whether HSTS is present.<br>headers.referrer_policy: whether a Referrer-Policy header is present.<br>headers.x_frame_options: whether X-Frame-Options is present.<br>headers.x_content_type_options: whether X-Content-Type-Options is present.
findingsObject ArrayNoA list of finding objects.<br>findings[].id: finding identifier.<br>findings[].message: finding message.<br>findings[].severity: severity level; allowed values are low, medium, high.<br>findings[].recommendation: suggested remediation.
tls_validBooleanNoWhether the site’s TLS configuration is considered valid.

Body

Name
Type
Description
bodyREQUIRED
object
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.