Skip to main content

Octet Browser SDK

Country-of-origin signals for the browser. The Octet Browser SDK lets your web app ask, for a given browser session: "what country is this browser physically in, and how confident are you?" — and get back a verdict your backend can act on.

Heads up

This documentation describes the browser SDK as it ships today. License management is currently a single key you hand to the edge connector; richer activation is on the roadmap and flagged where relevant (see Licensing).

What the SDK does, in one sentence

You serve a small collector script from your own domain and run a lightweight edge binary at your network edge. For each browser session, Octet returns a coarse verdict{ country, confidence } — and you decide what to do with it.

Pick a starting point

What this documentation covers

  • Getting Started. What you need, and the end-to-end happy path.
  • Concepts. How the pieces fit together, what a verdict is, what gets collected, and the trust boundary. Plain-English openers, technical depth below.
  • Packages & Install. The two artifacts you ship, what each does, and how to get them.
  • Integration Guide. Embed the collector, deploy the edge for your server, and read the verdict on your backend.
  • Reference. The collector API, the verdict schema, edge configuration, and licensing.
  • Troubleshooting. Indexed by what you actually see.

What the SDK is not

  • It is not a tracker. It answers a single question — the likely country of origin for a session — and is stateless on Octet's side. It does not build user profiles for you.
  • It does not tell you why. You get a country and a confidence level. The reasoning that produces them runs entirely on Octet's servers and is never exposed — to your browser, to your backend, or in this documentation.
  • It does not decide for you. Octet returns a verdict; you apply policy (allow, challenge, log). See Verdicts.
  • It does not run in the browser alone. A verdict requires both the in-browser collector and the edge component in front of your app. See How It Works.