Documentație SDK
Ghid complet de integrare a clientului de licențiere CannyRO în plugin-urile tale WordPress.
1. Getting Started
Descarcă fișierul SDK din contul tău și plasează-l în directorul inc/
al plugin-ului tău:
class-cannyro-license-client.php
Integrare minimă
Adaugă următorul cod în fișierul principal al plugin-ului tău (de obicei în callback-ul plugins_loaded
sau direct la nivelul rădăcinii):
require_once __DIR__ . '/inc/class-cannyro-license-client.php';
new CannyRO_License_Client([
'server_url' => 'https://license.cannyagency.com',
'plugin_file' => __FILE__,
'plugin_slug' => 'your-plugin-slug',
'plugin_name' => 'Your Plugin Name',
'version' => '1.0.0',
]);
2. API Endpoints
Toate endpoint-urile sunt publice (nu necesită autentificare WordPress) și acceptă/returnează JSON.
| Endpoint | Metodă | Descriere |
|---|---|---|
/wp-json/cannyro-license/v1/activate
|
POST | Activează o licență pe un domeniu |
/wp-json/cannyro-license/v1/deactivate
|
POST | Dezactivează licența |
/wp-json/cannyro-license/v1/validate
|
POST | Validează token-ul activ |
/wp-json/cannyro-license/v1/check-update
|
GET | Verifică dacă există un update |
/wp-json/cannyro-license/v1/download
|
GET | Descarcă pachetul plugin-ului |
/wp-json/cannyro-license/v1/health
|
GET | Status server |
3. Parametri activate
Trimite un POST
la endpoint-ul /wp-json/cannyro-license/v1/activate
cu următorul body JSON:
{
"purchase_code": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"site_url": "https://yoursite.com",
"plugin_version": "1.0.0",
"php_version": "8.2.0",
"wp_version": "6.7"
}
Răspuns succes (HTTP 200)
{
"success": true,
"token": "...",
"expires_at": 1234567890,
"license_type": "regular"
}
Stochează token-ul returnat — acesta va fi trimis la fiecare cerere de validare ulterioară.
4. Coduri de eroare frecvente
Toate răspunsurile de eroare au forma { "code": "...", "message": "..." }.
| Cod | Descriere |
|---|---|
purchase_code_not_found
|
Codul nu există în sistem |
already_activated
|
Limita de activări atinsă |
license_not_active
|
Licența a fost revocată sau expirată |
domain_mismatch
|
Token-ul nu corespunde domeniului |
rate_limited
|
Prea multe cereri (429) |
5. Support
Ai întrebări legate de integrare sau funcționare?
Timp de răspuns: de obicei în 24–48 de ore în zilele lucrătoare.