Universal Key
Portable by default

One key.
Every AI app.

Your preferences, policies, and balances come with you.

Docs for builders

The key is the settings page that finally leaves the app.

UNIVERSAL KEY

•••• •••• 8A2F

Balance

$1,142.68

ZDR

On

Monthly cap

$6,500

Apps

7

OpenAIAnthropicGemini+4

The actual product

A portable user config.

A Universal Key is not just an API token with a balance. It is one source of truth for the decisions you already made.

On the keyWhat the app inherits
PrivacyZDR only, never train on my data
VisibilityWhich logs you can see, what the app can hide
SpendOne balance, monthly cap, per-app limits
MarkupMaximum app markup; unknown markup = block
Working prefsThe defaults you already decided

The app either honors the key or the request doesn’t run. Defaults don’t get to quietly win.

The onboarding tax

Never start from zero.

Every new tool taxes you the same way. The setup does not compound—it resets.

01Create an account
02Paste another key
03Hunt for the retention toggle
04Guess whether prompts are logged
05Set a budget after you’ve been billed
06Explain how you work, again

Config lives on the key.

Open a new chat app, coder, or research tool and it already has the non-negotiables.

RetentionOff
TrainingNo
LogsVisible · Scoped
SpendYour cap
MarkupYour ceiling

First prompt is not a setup wizard.

Policy as a gate

Policy travels. Apps don’t get a vote.

ZDR is not a nice-to-have buried in a provider dashboard. It is a rule on the key.

Never train on my data

Show me usage and logs

Monthly cap $100

Block unknown markup

Max app markup 20%

My Rules

Zero data retentionRequired

TrainingNever

Monthly spend cap$100

Unknown markupBlock

Max app markup20%

This request was refused.

Researchly requires a provider that retains prompts for 30 days. Your rule: Zero data retention only.

Fail closed. Every time.

Live balance

$1,142.68

CursorCursor$4.82
CodexCodex$2.17
Claude CodeClaude Code$7.64
WindsurfWindsurf$1.09

One balance

Prefs without money still strand you.

Perfect privacy settings do not help if every app has its own credits tab. Compatible apps draw from one live balance—no stacked seats and no leftover $11.40 in a tool you used twice.

Balance is infrastructure. The key is still you, already set up.

One source of truth

One ledger.

Every call in one place: app, model, your cost, their markup, allowed or revoked.

Live usage
CursorCursor Allowed
CodexCodex Allowed
Claude CodeClaude Code Allowed
WindsurfWindsurf Revoked

If an app is sloppy with logs or greedy on markup, you don’t file a support ticket. Revoke access. The next request fails closed.

For builders

Don’t make users recreate their setup.

You ship the app. You do not become their identity provider, billing system, and privacy settings page.

One integration

01

They sign in with the key

02

You receive a ready-to-spend user with policy attached

03

You set a published, capped margin

04

We route, meter, and settle

Policy violation? Rejected before you eat the blame.

Configure the key once.

ZDR, logs, caps, markup, working prefs—all of it rides with the same credential. Next compatible app: no first-run, no blank slate, no privacy setup.