ADDONALCHEMY

LIZENZ-API

Aktiviere, prüfe und aktualisiere Produkte direkt aus deinem Plugin oder Server heraus. Alle Endpunkte akzeptieren JSON- oder Form-Bodies und antworten mit JSON.

IP-Limit je Lizenz

2

beliebig viele Instanzen je IP

Produkte je Subuser-Key

3

an eine Instanz gebunden

Sperrfrist nach Widerruf

14 Tage

bis zur Reaktivierung

Live-Check

POST https://beta.addonalchemy.com/api/v1/activate

Aktiviert eine Instanz und registriert die IP-Adresse des Aufrufers. Liefert die Instanz-ID zurück, die für Folgeaufrufe gespeichert werden sollte.

Felder
key, product_id, [instance_id], [name]
Antwort-Gründe
valid · product_not_licensed · ip_limit_reached · license_revoked · license_expired · subuser_revoked · subuser_bound_other_instance · unknown_key
POST https://beta.addonalchemy.com/api/v1/deactivate

Entfernt eine Instanz und gibt ihre IP-Adresse wieder frei, sofern sie von keiner weiteren Instanz genutzt wird.

Felder
key, instance_id
Antwort-Gründe
ok · unknown_key
GET | POST https://beta.addonalchemy.com/api/v1/verify

Prüft ohne Nebenwirkungen, ob ein Schlüssel echt und für ein Produkt gültig ist.

Felder
key, product_id
Antwort-Gründe
ok · product_not_licensed · revoked · not_in_subuser · owner_lost_product · unknown_key
GET https://beta.addonalchemy.com/api/v1/updates/check

Liefert die neueste freigegebene Version inklusive Changelog, Prüfsumme und – bei gültiger Lizenz – einer signierten Download-URL.

Felder
product_id, [version], [key], [platform]
Antwort-Gründe
ok · unknown_product · no_release

Beispiele

curl -X POST https://beta.addonalchemy.com/api/v1/activate \
  -H "Content-Type: application/json" \
  -d '{"key":"AALC-XXXX-XXXX-XXXX-XXXX","product_id":"PRD-XXXX-XXXX","name":"Lobby-01"}'

curl "https://beta.addonalchemy.com/api/v1/updates/check?product_id=PRD-XXXX-XXXX&version=1.0.0&key=AALC-XXXX-XXXX-XXXX-XXXX"
$response = file_get_contents('https://beta.addonalchemy.com/api/v1/activate', false, stream_context_create([
    'http' => [
        'method' => 'POST',
        'header' => 'Content-Type: application/json',
        'content' => json_encode(['key' => $licenseKey, 'product_id' => 'PRD-XXXX-XXXX']),
        'ignore_errors' => true,
    ],
]));

$license = json_decode($response, true);
$isValid = ($license['status'] ?? null) === 'valid';
const response = await fetch('https://beta.addonalchemy.com/api/v1/activate', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ key: licenseKey, product_id: 'PRD-XXXX-XXXX', instance_id: storedInstanceId }),
});

const license = await response.json();
if (license.status !== 'valid') throw new Error(license.reason);
import requests

response = requests.post('https://beta.addonalchemy.com/api/v1/activate', json={
    'key': license_key,
    'product_id': 'PRD-XXXX-XXXX',
})

license = response.json()
is_valid = license.get('status') == 'valid'

Authentifizierte Endpunkte

Für kontobezogene Abfragen erstellst du in deinem Konto einen API-Token und sendest ihn als Authorization: Bearer <token>.

  • GET https://beta.addonalchemy.com/api/v1/me
  • GET https://beta.addonalchemy.com/api/v1/licenses
  • GET https://beta.addonalchemy.com/api/v1/licenses/{key}/download
  • GET https://beta.addonalchemy.com/api/v1/plugins (öffentlich)
  • GET https://beta.addonalchemy.com/api/v1/plugins/{product_id}/versions (öffentlich)

Wir verwenden nur technisch notwendige Cookies, damit Login und Warenkorb funktionieren. Es findet kein Tracking zu Werbezwecken statt.

Mehr erfahren

Hilfe-Center

Sofort-Antworten