Get the outside view
GEThttps://api.fortwatch.ai/app/assets/{id}/outside-view/{part}
What anyone can see of the asset without scanning it, read live and never stored: web (the site's headers and certificate), email (SPF, DMARC, DKIM, MX), dns, or subdomains (from certificate transparency logs). At most 120 a minute per workspace. Also limited per workspace: 120 a minute.
Parameters
| Name | In | Type | Description |
|---|---|---|---|
idrequired | path | integer | |
partrequired | path | string | One of: web, email, dns, subdomains |
Example request
curl -X GET "https://api.fortwatch.ai/app/assets/42/outside-view/web" \
-H "Authorization: Bearer $FORTWATCH_API_KEY"Response 200
The request succeeded.
| Field | Type | Description |
|---|---|---|
partrequired | string | One of: web, email, dns, subdomains |
hostrequired | string | |
checkedAtrequired | string (date-time) | |
statusrequired | string | One of: ok, unreachable, unavailable |
itemsrequired | object[] | |
severityrequired | string | |
templateIdrequired | string | |
namerequired | string | |
descriptionrequired | string | null | |
remediationrequired | string | null | |
factsrequired | object | What the part read: the page and its certificate, the mail records, the DNS records, or the subdomain count and a sample |
{
"part": "web",
"host": "app.example.com",
"checkedAt": "2026-10-16T12:00:00.000Z",
"status": "ok",
"items": [
{
"severity": "string",
"templateId": "string",
"name": "Production",
"description": "string",
"remediation": "string"
}
],
"facts": {}
}Errors
400 | The request is not valid: a field is missing or has the wrong shape (the message names it). |
401 | No valid credentials: the API key or access token is missing, revoked or expired (INVALID_API_KEY, INVALID_TOKEN). |
403 | Not allowed: the key or token lacks this scope (SCOPE_REQUIRED), the route is dashboard-only (SESSION_REQUIRED), or a plan limit applies. |
404 | Not found in your workspace. |
429 | Too many requests (RATE_LIMITED): wait the seconds Retry-After gives. |
Every code is explained in Errors.