انتقل إلى المحتوى

مفتاح API للإدارة

استخدم مفتاح API للإدارة لإصدار التراخيص تلقائيًا من نظام الطلبات أو قراءة بيانات الترخيص من الخادم. يمثّل مساحة عملك كمورّد.

أي مفتاح يحتاجه العميل البرمجي؟

بيانات الاعتمادلمن يُسلّمالغرض منه
lv_api_…
مفتاح API للإدارة
خادمك الخاصأنشئ المنتجات والسياسات والتراخيص واعرض الأجهزة والاستخدام والتدقيق
lv_lic_…
مفتاح الترخيص
برنامج العميلالتفعيل والتحقق والنبضات وتحرير الجهاز
المفتاح العام للمنتجوزّعه مع البرنامج العميلتحقق من توقيع الترخيص من الخادم

يكفي مفتاح الترخيص للتحقق داخل برنامج العميل. مفتاح API للإدارة يتحكم بمساحة العمل كلها؛ لا تضعه في برنامج العميل أو صفحة عامة.

إنشاء مفتاح

  1. سجّل الدخول بصفة Owner لمساحة العمل وافتح API Key ثم اختر إنشاء API Key.
  2. سمّه حسب الاستخدام، مثل «نظام الطلبات». اختر القراءة فقط للاستعلام أو القراءة والكتابة لإنشاء التراخيص وتعديلها. الصلاحية من 1 إلى 365 يومًا.
  3. انسخ المفتاح كاملًا فور الحفظ؛ يُعرض مرة واحدة فقط. احفظه في إعدادات خادم خاصة أو متغير بيئة.

أرسل أول طلب إداري

يقرأ المثال قائمة المنتجات. اضبط LICENTIVO_URL على عنوان خادم الترخيص واضبط LICENTIVO_API_KEY على المفتاح الكامل الذي أنشأته ثم نفّذ:

curl
curl "$LICENTIVO_URL/api/v1/products?limit=25" \
  -H "Authorization: Bearer $LICENTIVO_API_KEY"

هذه صيغة Bash/macOS/Linux. في Windows PowerShell استخدم curl.exe؛ متغير البيئة هو $env:LICENTIVO_URL و $env:LICENTIVO_API_KEY. أمثلة الطلبات الكاملة للغات التسع في خيار API Key لإدارة الخادم في صفحة SDK.

يعيد النجاح HTTP 200 مع data.items. طلبات Bearer Key لا تحتاج ملفات دخول أو CSRF.

الصلاحيات ومعالجة الإبطال

مفتاح القراءة يعرض الموارد، ومفتاح القراءة والكتابة ينشئ ويعدّل المنتجات والسياسات والتراخيص. الحسابات والفرق والإعدادات والمدفوعات تحتاج دخول حساب مخوّل، لا مفتاح إدارة.

ألغِ المفتاح المسرّب أو غير المستخدم من لوحة التحكم. لاستبداله اضغط تدوير؛ يبطل القديم فورًا. ثم حدّث إعدادات خادمك.

حصة API في الباقة تحسب التفعيل والتحقق والنبضات والتحرير. طلبات الإدارة هذه لا تُحسب ضمنها.

Common request and response conventions

ItemConvention
Server originLICENTIVO_URL is the license server origin. API paths start with /api/v1 .
AuthenticationAuthorization: Bearer YOUR_MANAGEMENT_API_KEY. Read-only keys use scope=read; read/write keys use scope=write. A key accesses its own workspace. Writes also require its creator to be an active Owner.
JSON bodyFor requests with a body, send Content-Type: application/json. Bodies are limited to 64 KiB. Unknown fields, multiple JSON objects and invalid types are rejected. Operations marked {} require an empty JSON object. GET and DELETE have no body.
UpdatesPATCH preserves omitted fields. Basic updates require at least one editable field. See conditional requirements, such as duration_days.
Success and failureSuccessful JSON responses use {"data": ..., "request_id": "..."}; errors use {"error": {"code": "...", "message": "..."}, "request_id": "..."}. Creation usually returns 201, reads and updates 200, and queued tasks 202.
File responsesSuccessful CSV and ZIP responses contain file data without a data wrapper. Errors still use JSON. The X-Request-ID response header identifies the request.
PaginationPaginated operations default to limit=25، offset=0; ranges are 1–100 and 0–100000. Most lists return items و total. Check each field table for echoed pagination parameters. Audit logs omit total. Increase offset for the next page and stop when fewer than limit items are returned. Do not rely on undocumented filters.
Dates and moneyDate strings use UTC / RFC 3339. Offline requests use created_at in Unix seconds. Amounts ending in *_cents are hundredths of the currency unit;*_micros are millionths. Interpret amounts with currency .

Retries and idempotency

Ordinary creation, renewal and key rotation do not provide general Idempotency-Key deduplication. Do not blindly resend after a timeout; it can issue or renew twice. For reliable order processing, use POST /api/v1/licenses/batch: generate and store the body request_idper order, and keep the original ID and identical content for retries. Onboarding also deduplicates by its body request_id.

The top-level response request_id differs from the business idempotency ID: the server generates the former for each HTTP request, while you retain the latter per business operation. Poll task status after 202. On 429, wait according to Retry-After . A 5xx or lost connection can leave a write outcome uncertain; query first or recover using that operation’s idempotency rules.

Management errors and recovery
HTTP / error.codeCause and recovery
400 INVALID_INPUT
415 JSON_REQUIRED
Correct fields, conditional requirements or Content-Type before retrying.
401 UNAUTHENTICATEDThe key is malformed, expired or revoked, or its account/workspace is inactive. Check the complete key and account state.
403 FORBIDDEN
403 CSRF_INVALID
Check scope, Owner role and session requirements. CSRF tokens for cookie-authenticated writes must match the session.
404 NOT_FOUND
405 METHOD_NOT_ALLOWED
Check the resource ID, workspace, archive state and HTTP method. A 405 response lists allowed methods in Allow.
409 PRODUCT_DISABLED
409 RESOURCE_IN_USE
Enable the product first. Resolve dependent resources before archiving a product or policy.
409 LICENSE_REVOKED
409 PERPETUAL_LICENSE
Revoked licenses cannot be restored or renewed. Perpetual licenses have no usage expiry to extend.
409 DEVICE_LIMIT_BELOW_ACTIVE
409 ACTIVE_DEVICES_CONFLICT
Release excess devices/sessions before lowering limits or switching license models.
409 POLICY_CHANGED
409 PREVIEW_STALE
Reload the policy revision or preview the changes again before submitting; preserve concurrent updates.
409 IDEMPOTENCY_CONFLICTThe business request_id was reused with different content. Retries retain the original ID and body; new operations need a new ID.
409 KEY_LIMIT
409 KEY_INACTIVE
At most 100 active keys are allowed; revoke unused keys. Rotation requires an active key whose creator remains an active Owner.
409 PLAN_VERSION_CONFLICT
409 INVOICE_STATE_CONFLICT
409 JOB_STATE_CONFLICT
Reload pricing, invoice or task state before proceeding. Only failed billing tasks can be retried.
409 DELIVERY_RUNNING
409 WEBHOOK_DISABLED
Wait for the running delivery or enable the endpoint first. Receivers must deduplicate by event ID.
413 EXPORT_TOO_LARGE
429 RATE_LIMITED
Filter exports to at most 5000 rows or use pagination. Wait according to Retry-After when rate-limited.
500 INTERNAL_ERROR
503 DEFAULT_PLAN_DISABLED
Keep request_id for diagnosis; contact an administrator if the default allowance is disabled. Recover uncertain writes according to the operation’s idempotency rules.

Offline operations may also return runtime licensing errors; see Troubleshooting and licensing errors.

Technical terminology
المدةالمعنى
authentication / authorizationAuthentication / authorization: establish the credential’s identity, then check permission for the operation.
scopeScope: read grants read access and write grants read/write access; separate from the Owner / read_only account role.
policy / plan / purchaseLicensing policy / billing plan / package purchase contract: software licensing rules, service prices and purchased entitlements respectively.
license / license keyLicense / license key: the management record and the customer’s activation secret respectively; both differ from the management API Key.
activation / seat / leaseActivation / seat / authorization lease: a device or session record, a concurrent-use slot, and time-bounded server-signed authorization respectively.
revoke / suspend / archive / releaseRevoke / suspend / archive / release: revocation is terminal, suspension is reversible, archiving removes normal visibility, and release frees a device or seat.
rotate / idempotency / reservationRotation / idempotency / reservation: replacing a key, preventing additional effects from repeated execution of the same operation, and reserving feature uses before committing them.

All management requests and responses

The reference covers every Bearer-key operation plus the Owner-session operations for creating, listing, rotating and revoking keys. Select an operation for calls, responses, fields and conditions. All example credentials are illustrative.

Loading API reference…

Management key permissions

Read-only keys can call operations marked “Read or write key”; write keys also support “Write key” operations. Key lifecycle, accounts, members, system settings, payments and refunds require an authorized session. Monthly billing queries and tasks use the permissions listed here. Customer runtime operations use customer credentials; see استدعاءات الترخيص عبر SDK.

Download the machine-readable OpenAPI JSON (اللغة الحالية)for import into tools such as Postman. Web field explanations follow the documentation language.