POWERING REELNOX STUDIO · BACKDROP_ · TIMEPEEK

Sell your desktop app.
We handle the keys.

Generate, activate and verify license keys with one tiny API — machine-locked activations, trials, revocations. Built by an indie developer who needed it. Now open to every indie developer.

a sale, as seen by your app

$ curl -X POST api.sublimearts.io/v1/licenses -d '{"product":"my-app"}'

MYAPP-·····-·····-·····-·····

✓ key delivered to buyer — machine-locked, revocable

HOW IT WORKS

Three calls. That's the whole integration.

01

Register your product

One call. Pick a slug and a key prefix — done.

curl -X POST api.sublimearts.io/v1/products \
  -H "Authorization: Bearer $SUBLIMEKEYS_API_KEY" \
  -d '{"slug":"my-app","key_prefix":"MYAPP"}'
02

Issue a key on every sale

Call it from your Stripe or Gumroad webhook — the key comes back ready to email. (Or skip this call entirely — see AUTOMATE in the docs.)

curl -X POST api.sublimearts.io/v1/licenses \
  -H "Authorization: Bearer $SUBLIMEKEYS_API_KEY" \
  -d '{"product":"my-app","email":"buyer@mail.com"}'

→ "MYAPP-K3F7Q-9WZ2M-P8RT4-XN5CB"
03

Verify inside your app

Machine-locked activation, offline verification via a signed lease (no network needed for up to 7 days), revoke on refund.

from sublimekeys import SublimeKeysClient

client = SublimeKeysClient(product_id="my-app")
result = client.verify(license_key=key)
if result.valid:
    unlock_full_version()

Python? pip install sublimekeys — official SDK, handles the offline verification for you. View on PyPI → · Node.js / Electron? npm install sublimekeys View on npm →

PRICING

Start free. Upgrade when it pays for itself.

FREE€0

1 product · 100 keys · 5 devices/key

PRO€9/mo

5 products · 1,000 keys · 25 devices/key

BUSINESS€29/mo

unlimited products & keys · 100 devices/key

FAQ

The questions that matter.

What happens to my licenses if SublimeKeys shuts down?

Your data is never hostage: every key and activation is exportable via the API (GET /v1/licenses) at any moment, no permission needed. If we ever sunset the service, paying customers get 12 months of notice and a full export. And since this same API powers our own products — ReelNox Studio, BackDrop_, TimePeek — keeping it alive is existential for us too.

Do my users need to be online?

Only for the first activation and roughly once a week after that. Every /activate and /verify call returns a cryptographically signed lease valid for 7 days — verify it locally with no network call, no blind trust. The official Python and Node.js/Electron SDKs handle this automatically; other languages can verify the Ed25519 signature themselves (see the docs).

What if I hit my plan limit?

Nothing breaks. Existing keys keep activating and verifying forever — you just can't issue new ones until you upgrade. Your customers never notice anything.

What happens if I downgrade or cancel my subscription?

Nothing is ever deleted, suspended, or revoked — not your products, not a single license key. Everything keeps working exactly as before, forever, for you and for every customer who already bought a key from you. The only change: you can't create new products or keys beyond your new plan's limits until you upgrade again. Your customers' software should never break because of a decision you made on your end.

Where does my data live?

In the EU — on dedicated infrastructure in Nuremberg, Germany, HTTPS everywhere. Your API key is stored only as a SHA-256 hash: we physically cannot read it back.

How do I revoke a key?

Products → pick the product → Manage keys. Find the key (by email or the key itself) and hit Revoke — it's immediate and irreversible, exactly like a refund should work. Under the hood it's DELETE /v1/licenses/{key}, scoped so you can only ever touch your own keys.

How many devices can one license activate on?

Whatever you decide, up to your plan's ceiling. Pass max_activations when you issue a key via POST /v1/licenses (it defaults to 1 if you don't). Sell "personal use, 3 devices"? Set it to 3. The per-key ceiling itself scales with your SublimeKeys plan — 5 on Free, 25 on Pro, 100 on Business — so a single leaked key can never fan out further than that, whatever plan you're on. See the docs for the full field list.

Can I migrate from Gumroad, Keygen or my own server?

Yes. Bulk-issue keys for your existing customers with a real, ten-line script — see MIGRATE in the docs for the exact code. Key prefixes are configurable, so the new keys match your brand from day one. It re-keys your customers rather than preserving old key strings — the docs explain the tradeoff.