Errors

The API and the MCP server report errors with the same codes. The code is for your program, the message is for people.

400 Bad Request
{
  "error": {
    "code": "blocked_host",
    "message": "Internal or private addresses are not scanned."
  }
}

The message comes in English with lang=en and in German otherwise, see Language. Its wording may change; the code stays the same. The table lists the HTTP status and the English message for each code.

When a check fails, the MCP server responds with a tool result in which isError is true. The text starts with the code, followed by the message, in English unless the call passes lang: "de", for example timeout: The site did not respond in time. The homepage endpoint GET /api/scan sends code and message as two plain fields, that is { "error": "timeout", "message": "…" }. More in the API reference.

CodeStatusMessageRetry
no_url400Please provide a URL.No
bad_url400This is not a valid address.No
bad_scheme400Only http:// and https:// are supported.No
blocked_host400Internal or private addresses are not scanned.No
dns_failed400The address could not be resolved.Only once the DNS record exists
unauthorized401API key missing or invalid.No
rate_limited429Too many requests. Please wait a moment.Yes, after X-RateLimit-Reset
server_error500Unexpected error.Yes, once
fetch_failed502The site could not be reached.Yes, after a short pause
tls_invalid502The site's HTTPS certificate is invalid. Browsers show a warning.Only once the certificate is valid
too_many_redirects502Too many redirects.No
not_configured503This feature is not set up yet.No
timeout504The site did not respond in time.Yes, after a short pause

Errors with status 400 are caused by the input. Retrying with the same address usually gives the same result. Errors from 502 upward are usually caused by the checked site or the network, and a second attempt after a few seconds often helps. With tls_invalid, the problem lies with the checked site, and browsers show a warning there as well. How to fix it is explained in the help article HTTPS and certificates.

Is your app
watertight?

Hullwise finds the leaks before someone else does: exposed keys, database credentials and outdated software. Every finding comes with steps to fix it.

https://

Click a finding to mark it as fixed.

See pricingHow a scan works

Ship fast. Stay hullwise.