Domain Setup
Each domain in ShieldLabs is an independent protection unit with its own keys, webhook, and analytics.
Adding a domain
- Go to dashboard.shieldlabs.ai → Domains → Add domain
- Enter your domain name (e.g.
example.com)
- Optionally set a webhook callback URL
- Copy the Public Key and Secret Key
Domain fields
| Field | Description |
|---|
domain | Your domain name |
public_key | UUID used in the JS snippet |
secret_key | Key used for webhook auth and HMAC verification |
callback | Webhook URL (can be set/updated at any time) |
enabled | Whether the domain is actively processing traffic |
domain_verified | DNS TXT verification status |
Updating a domain
Update the webhook URL or enable/disable protection:
curl -X PATCH "https://api.shieldlabs.ai/api/domains/{domain_id}" \
-H "Authorization: Bearer YOUR_JWT_TOKEN" \
-H "Content-Type: application/json" \
-d '{"callback": "https://new-server.com/webhook", "enabled": true}'
Domain verification
Domain verification confirms you own the domain. It’s optional but enables additional features.
- Go to Domain → Verify
- Add the TXT record shown to your DNS:
_shieldlabs.example.com TXT "sl-verify=abc123..."
- Click Verify after DNS propagation (usually 5–30 minutes)
Traffic weight
If you have multiple domains, the dashboard shows each domain’s share of your total monthly request quota (requests_percent). This helps you understand which domains are consuming the most capacity.
Deleting a domain
curl -X DELETE "https://api.shieldlabs.ai/api/domains/{domain_id}" \
-H "Authorization: Bearer YOUR_JWT_TOKEN"
Deleting a domain is irreversible. All associated data (sessions, scores, patterns) is removed.