D3 Edge

Get started

Sign in, connect a site, see your first classified request.

Four steps. The last one is the point: your own traffic, classified, in the log.

1. Sign in

Go to dashboard.d3.com. Enter your work email, then the six-digit code we send you. That is the whole sign-in. D3 Edge runs its infrastructure on the d3.com domain.

D3 Edge is in early access: if your email isn't recognized, request access and we'll set your org up.

2. Create an API key

In the dashboard, open API keys and create a key. Going the no-code route? Skip this step: that install carries no key, because the domain itself says who you are.

Shown once

Store the key in your platform's secret store immediately. Both SDK guides use the name POLICY_ADAPTER_KEY. Never put it in code or client-side config.

  • You can identify it later. The dashboard shows each key's first 12 and last 4 characters, so you can match a key in a config to a key in the list without ever seeing the secret again.
  • It's scoped to your organization. Every log row is tagged with your organization and every read filters on it. There is no cross-tenant visibility.
  • Revocation is fast. Revoke a key in the dashboard and it stops being accepted everywhere within about two minutes; the window is cache propagation.

3. Connect your site

Pick one. The first needs no code; the others put our code in your own request path.

  • Point your DNS at us: change two nameservers at your registrar and enforcement runs in front of your site. No package, no deploy, no key. But we answer DNS for that domain while it's in place, so read the trade-offs first.
  • Vercel: npm install, one middleware.ts, two environment variables. Self-serve, about five minutes. If your project already has a middleware.ts, read this first.
  • Cloudflare: a thin worker in your own Cloudflare account, in front of your origin. npm install and a small wrangler config, self-serve — or we set it up with you.

4. Watch the first request land

Deploy (or, on the DNS route, wait for your nameservers to propagate), then hit your site. A plain curl https://your-site.example/ is enough. Open the dashboard log and you'll see the request within moments, looking something like:

GET /    unverified    curl/8.9    just now

unverified is correct for your curl: it carries no signature and matches no crawler fingerprint. That's it. Every request to your site is now classified, and the next 24 hours will show you what else has been visiting.

Stuck at any step, or on another platform? Talk to us. In early access, your setup friction is our bug report.

On this page