Domains
API endpoints for managing monitored domains.
List Domains
Returns all domains in your organization.
Response (200):
Get Domain
Returns a single domain with assets summary.
Response (200):
Add Domain
Creates a new domain and generates a verification challenge. The API auto-verifies domains matching your business email — otherwise you'll need to verify via DNS or HTTP.
Request Body:
| Field | Type | Required | Description |
|---|---|---|---|
domain | string | Yes | Root domain to monitor |
method | string | No | Verification method: dns (default) or http |
Response (201):
Domain quotas by plan:
| Plan | Max Domains |
|---|---|
| Free | 1 |
| Hunter | 5 |
| Pro | 25 |
| Team | 100 |
| Enterprise | Unlimited |
When the limit is reached, the API returns 403:
Verify Domain
Triggers a verification check. If already verified, returns the current status.
Request Body (optional):
| Field | Type | Description |
|---|---|---|
method | string | Switch verification method: dns or http. Generates a new challenge if changed. |
Verification methods:
- DNS: Add a TXT record
_surfbot-verify.yourdomain.comwith the challenge token value. - HTTP: Place a file at
https://yourdomain.com/.well-known/surfbot-verify.txtcontaining the challenge token. - Email: Automatic for users with a business email matching the domain.
Success Response (200):
Failure Response (422):
Trigger Domain Scan
Starts a scan for a verified domain. This is a convenience endpoint — see Scans for the full scan API.
Request Body (optional):
| Field | Type | Description |
|---|---|---|
type | string | discovery (default) or full |
ports | string | Custom port spec, e.g. "80,443,8000-9000" |
Response (202):