License API reference

หน้านี้ยังไม่มีคำแปลภาษาไทย — แสดงฉบับภาษาอังกฤษไปก่อน

All endpoints live under /api/v1 and accept/return JSON. Errors use machine-readable codes: invalid_key, seat_limit_reached, license_expired, license_revoked, invalid_site_url, rate_limited.

POST /api/v1/licenses/activate

{ "key": "MDK-XXXX-XXXX-XXXX-XXXX", "site_url": "https://example.com" }

Claims a seat for the site. Re-activating from the same site is idempotent. Site URLs are normalized (scheme, www., trailing slashes ignored) so the same install never counts twice.

POST /api/v1/licenses/deactivate

Frees the seat for that site. Safe to call repeatedly.

POST /api/v1/licenses/validate

Read-only status check. The plugin caches the response for 12 hours and tolerates 14 days of server unreachability before degrading.

GET /api/v1/updates/manifest?key=...

Update metadata for the WordPress updater. Valid licenses get a short-lived download URL; expired ones see the release notes and a renewal notice.