Skip to content

Ship enterprise-ready auth this afternoon.

SSO, user management, and fine-grained authorization for your app — on infrastructure that never leaves the EU. No CLOUD Act exposure. NIS2 and DORA-ready.

10
Building blocks
240+
API operations
EU-only
Data residency
Zero
US CLOUD Act exposure

How it fits

Your app on one side, every identity provider on the other.

Your application speaks one standard protocol to Thoryn. Thoryn brokers the rest — enterprise directories, social login, and its own user store.

Your app

OIDC / OAuth 2.0

Thoryn

Broker and user store

Any identity provider

  • Okta
  • Microsoft Entra ID
  • Google Workspace
  • SAML / OIDC
  • Email and password

One integration. Add or swap providers without touching your app.

Sovereign by default

Your users' data never leaves the EU

Sovereignty is not a tier or an add-on. It is how the platform is built and where it runs.

  • EU-only residency

    Every request, key, and log stays on EU-only infrastructure. Data does not leave the region.

  • No CLOUD Act exposure

    Dutch incorporation and EU hosting keep your data outside US CLOUD Act reach.

  • NIS2 and DORA-ready

    Controls map to NIS2 and DORA, with evidence you can hand to auditors.

  • Keys in Vault, not the app

    ES256 signing keys are custodied in Vault and OpenBao, never in the application.

Regulatory pressure keeps rising

Regulatory pressure 2024 to 2027Stacked-bar chart of four EU security and privacy regulations across four years. Each column counts the regulations whose preparation or enforcement milestone falls in that year. By 2027 every regulation is enforced.20243 live20254 live20264 live20274 live
NIS2
DORA
CRA
GDPR
Data table
Regulatory enforcement schedule by year for four EU security and privacy regulations. Cells contain “preparation”, “enforced”, or are empty when the regulation has no milestone in that year.
Regulation2024202520262027
NIS2PreparationEnforcedEnforcedEnforced
DORAPreparationEnforcedEnforcedEnforced
CRAPreparationPreparationEnforced
GDPREnforcedEnforcedEnforcedEnforced

NIS2, DORA, and the Cyber Resilience Act raise the bar for where identity data lives and how it is secured. EU-sovereign auth is the baseline, not the upsell.

Developer-first

One API, one CLI, no lock-in

Wire your first login this afternoon, then automate the rest from your own toolchain.

  • One REST API

    A single /api/v1 surface covers every capability, with generated reference docs.

  • The thoryn CLI

    Script tenants, clients, and users from the thoryn command-line tool.

  • Actions & Hooks

    Extend login with your own code and subscribe to the events you care about.

  • Open standards

    Built on OAuth 2.0, OIDC, PKCE, PAR, and DPoP. No proprietary protocol.

See it in code

Register an application in one call.

Every capability sits behind one /api/v1 REST surface, with camelCase JSON and OAuth 2.0 bearer tokens. The same request runs from cURL, fetch, or raw HTTP — the client secret comes back once.

Register an OAuth application

POST /api/v1/applications
curl -X POST https://api.thoryn.org/api/v1/applications \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "displayName": "Acme Portal",
    "redirectUris": ["https://app.acme.example/login/oauth2/code/thoryn"],
    "scopes": ["openid", "profile", "email", "offline_access"],
    "grantTypes": ["authorization_code", "refresh_token"],
    "clientType": "confidential"
  }'

The client secret comes back once

Response
{
  "clientId": "app-3f9c1a20b7e4",
  "clientSecret": "shown-once-store-it-now",
  "createdAt": "2026-07-16T09:30:00Z",
  "displayName": "Acme Portal",
  "redirectUris": ["https://app.acme.example/login/oauth2/code/thoryn"],
  "scopes": ["openid", "profile", "email", "offline_access"],
  "grantTypes": ["authorization_code", "refresh_token"],
  "status": "active"
}

SDKs — coming soonGenerate a typed client from the OpenAPI spec today. First-party SDKs are on the way.

Browse the API reference

See the product

A hosted login and a console you don't have to build.

Ship a branded sign-in page and give your team a console for users, organizations, and audit. Both are included.

Hosted loginProduct preview
Preview of the Thoryn hosted login page

Hosted login

A branded sign-in page with SSO, social, and passwordless, hosted for you.

Admin consoleProduct preview
Preview of the Thoryn admin console

Admin console

Manage users, organizations, applications, and audit logs from one place.

Pricing

Start free, scale when you do.

Every building block is available from day one. See how the plans map to your stage.

See pricing

Ready to ship auth this afternoon?

Create an account and wire your first login, or talk to us about a pilot.