Sell
Migrate from KeyAuth
Bring your KeyAuth keys, users, and variables across without asking customers for anything new.
What comes across#
| KeyAuth | Atlas |
|---|---|
| Licenses (keys, level, expiry, note, ban) | Licenses with the same key, expiry, and status |
| Users (username, password, HWID, expiry) | App users bound to their license |
| Global variables | Product variables |
| User variables | User variables on each license |
Customers keep typing the key they already have, and existing accounts keep their passwords: KeyAuth's bcrypt hashes are accepted and upgraded to Argon2id on first sign-in. Keys are stored only as hashes, never in plain text.
Run the import#
- Export your data with KeyAuth's seller API:
fetchallkeys,fetchallusers,fetchallvars, andfetchalluservars. - Open your product, select Import from KeyAuth, paste or upload the JSON, and run a dry run. It shows what will be created and what will be skipped, and why.
- Run the import for real. Re-running it skips anything already imported.
- Swap the KeyAuth SDK for the Atlas one. The methods line up:
license,login,register,var→variable,getvar→user_variable,download,log,checkblack→is_blacklisted.
Or from your server
const report = await atlas.imports.keyauth({
product_id: "prod_...",
licenses: keys, // fetchallkeys
users, // fetchallusers
variables: vars, // fetchallvars
user_variables: userVars, // fetchalluservars
activation_limit: 1, // KeyAuth locks a key to one HWID
dry_run: true,
});HWIDs reset once
KeyAuth's HWIDs aren't comparable with Atlas device IDs, so each customer's first launch on the Atlas SDK claims their seat again.