/api/badge/{domain}Security verification badge
Returns an SVG badge showing the most recent website-security grade for the given domain, as produced by https://vigilbase.com/tools/website-security. If no grade exists the badge renders a question mark.
Parameters
| domain (path)* | string | Domain to display on the badge. Schemes, `www.` prefixes, and trailing paths are normalised server-side. |
| style (query) | string: default, compact, mini | Badge size variant. |
Responses
| 200 | image/svg+xml | SVG badge image. |
/api/v1/agent/toolsList agent-executable tools
Returns the allowlisted non-intrusive tools agents may run via POST /api/v1/agent/tools/{toolName}/execute, plus skill and UI URLs.
Responses
| 200 | application/json | Tool catalog. |
| 401 | application/problem+json | Invalid API key. |
| 403 | application/problem+json | Missing tools:read scope. |
| 429 | application/problem+json | Rate limit exceeded. |
/api/v1/agent/tools/security-headers/executeRun security-headers scan (agent API)
Non-intrusive HTTP security headers scan for autonomous agents. Anonymous free tier or Vigilbase One developer API key. Rate limited per IP/key.
Request body (JSON)
| target* | string | Scan target. For security-headers prefer a full URL; for email-security use an apex domain. |
{
"target": "https://example.com"
}Responses
| 200 | application/json | Scan completed. |
| 400 | application/problem+json | Invalid request body or malformed target. No scan ran. |
| 401 | application/problem+json | Invalid API key. |
| 403 | application/problem+json | API key missing required scope. |
| 404 | application/problem+json | Tool not on the agent allowlist. |
| 422 | application/problem+json | Scan ran but reported an error status. `grade` and `gradeScore` are null. |
| 429 | application/problem+json | Rate limit exceeded, or the hourly scan quota (20 scans per client IP and per target) is spent. Retry-After gives the time until it resets. |
| 503 | application/problem+json | Scan storage is temporarily unavailable. No scan ran; retry after the Retry-After delay. |
/api/v1/agent/tools/email-security/executeRun email-security scan (agent API)
Non-intrusive email authentication DNS scan for autonomous agents. Anonymous free tier or Vigilbase One developer API key. Rate limited per IP/key.
Request body (JSON)
| target* | string | Scan target. For security-headers prefer a full URL; for email-security use an apex domain. |
{
"target": "example.com"
}Responses
| 200 | application/json | Scan completed. |
| 400 | application/problem+json | Invalid request body or malformed target. No scan ran. |
| 401 | application/problem+json | Invalid API key. |
| 403 | application/problem+json | API key missing required scope. |
| 404 | application/problem+json | Tool not on the agent allowlist. |
| 422 | application/problem+json | Scan ran but reported an error status. `grade` and `gradeScore` are null. |
| 429 | application/problem+json | Rate limit exceeded, or the hourly scan quota (20 scans per client IP and per target) is spent. Retry-After gives the time until it resets. |
| 503 | application/problem+json | Scan storage is temporarily unavailable. No scan ran; retry after the Retry-After delay. |
/api/v1/developer/keysDeprecated — create keys on Vigilbase One
Returns 410 Gone. Self-serve API key minting moved to https://one.vigilbase.com/developers (Better Auth apiKey plugin, user-scoped keys with prefix vb_dev_).
Responses
| 410 | application/problem+json | Minting moved to Vigilbase One. |
/api/agent/toolsList agent tools (legacy alias)
Deprecated alias of GET /api/v1/agent/tools. Returns Deprecation/Sunset headers.
Responses
| 200 | Tool catalog (legacy). |