Add a domain
Domains are created in the dashboard, on the Integration tab.1
Open the Integration tab
Go to app.shieldlabs.ai and open the Integration tab.
2
Add the domain
Enter the hostname you want to identify visitors on, for example
myshop.com. Adding it provisions the domain’s public key, private API key, and secret key.3
Install the snippet
Drop the snippet onto that domain with its public key in the URL, following Install the snippet for the full client setup.
4
Register webhook endpoints
Add one or more endpoints on the domain’s Webhooks tab so scores are delivered to your server. See Webhooks for registration, verification, and testing.
Adding a domain mints a fresh key set on the spot. The secret key is shown in full only at that moment. Capture it then and store it server-side.
What every domain carries
You can read the live configuration for a domain at any time with the Profile endpoint. It returns both keys masked (see keys), so you can confirm a domain without exposing its credentials:
Verification is automatic
You do not add a DNS record or upload a file to verify a domain. Verification happens on its own once live snippet traffic is seen.1
Install the snippet with the domain's public key
The public key only works on the domain it was issued for. The server resolves the domain from the request
Origin, then Referer, then Host, and checks it against the public key.2
Trigger one identify call
Load a page that runs the snippet. The first fingerprint that arrives for that domain marks it as verified in the dashboard.
3
Confirm in the dashboard
The domain flips to verified on the Integration tab once that first call is recorded.
If a public key is served from a host it was not issued for, the identify call is rejected with
401, and the domain stays unverified. A key lifted from your page source will not work on someone else’s site.Subdomains and host matching
A key set is scoped to the exact host you registered. The server resolves the domain from the requestOrigin, then Referer, then Host, and looks it up against the registered domains. The match is exact, with one normalization: a leading www. is stripped, so www.myshop.com and myshop.com resolve to the same domain.
Subdomains do not inherit a parent domain’s key set. app.myshop.com and checkout.myshop.com are distinct hosts: each one you want to identify visitors on needs its own domain entry, with its own public key, secret key, and request totals.
Per-domain isolation
Every domain is a self-contained unit.Separate credentials
Each domain has its own public key and secret key. A key set issued for one domain authenticates only that domain. Rotating one domain’s keys never touches another’s.
Separate webhooks
Each domain can register up to 10 webhook endpoints. Point them at the same handler or different handlers, as you prefer.
Separate request totals
With multiple domains you can see how the request balance splits across them.
Independent enable state
Disabling one domain stops its identify calls and Server API access without affecting the others.
Next steps
With the domain added, wire its public key into the snippet, keep its secret key on your server, and register webhook endpoints that verifyX-Shield-Signature per the webhooks guide.