SellYourCode License SDK
Eine winzige Zero-Dep-Bibliothek, mit der du SYC-Lizenz-Keys gegen https://sellyourcode.de/api/licenses/activate validierst und aktivierst. Funktioniert in Browser, Node 18+, Deno, Bun.
Schnellstart (ESM)
import { activate, nodeFingerprint } from "https://sellyourcode.de/sdk/sellyourcode-license.js";
const fp = await nodeFingerprint("my-app");
const result = await activate({
key: "SYC-AAAA-BBBB-CCCC-DDDD",
fingerprint: fp,
});
if (!result.ok) throw new Error(result.error);
console.log("Aktiviert für", result.productId, "Aktivierungen:", result.usedActivations);Endpoint
POST https://sellyourcode.de/api/licenses/activate — Aktivierung registrieren.DELETE https://sellyourcode.de/api/licenses/activate — Aktivierung freigeben.
Body:
{ "key": "SYC-AAAA-BBBB-CCCC-DDDD", "fingerprint": "stabler-installations-string" }Antworten
| Status | Bedeutung |
|---|---|
| 200 | Aktivierung erfolgreich (oder reused). |
| 401 | Unbekannter / ungültiger Key. |
| 403 | Key revoked oder expired. |
| 409 | Aktivierungs-Limit erreicht (maxActivations). |
| 429 | Rate-Limit — kurz warten. |
Fingerprint-Tipps
- Web-Apps: generiere eine GUID beim ersten Start und speichere sie in localStorage. Aktiviere mit der GUID als Fingerprint.
- Node-Anwendungen: nutze
nodeFingerprint(seed)aus dem SDK — kombiniert hostname + platform + arch + dein Seed. - Mobile / Desktop: nutze die OS-Installation-GUID (z.B. macOS Hardware-UUID, Windows MachineGuid). Wechselt nicht zwischen App-Updates.
Best Practices
- Aktiviere beim Start deiner App — cache das Ergebnis lokal für 24h, damit Offline-Nutzung möglich bleibt.
- Beim Uninstall: ruf
DELETEauf, damit der Kunde die Lizenz auf einem anderen Gerät reaktivieren kann. - Logge niemals Lizenz-Keys auf Server-Side-Logs deiner Kunden. Behandle sie wie Passwörter.