LicenPro
DocumentationREST APILicenses API

Licenses API

Operator CRUD plus anonymous validation with X-API-KEY.

Product API key

Used by POST /api/Licenses/validate. Send X-API-KEY: <product key> (or legacy Authorization: X-API-KEY <key>). Never ship the private signing key to clients.

Prefix /api/Licenses. Hosted example: https://licenpro.runasp.net/api/Licenses/validate.

GET/api/Licenses

Paginated list. Query: pageNumber, pageSize, search, status, type.

GET/api/Licenses/{id}

Single license by GUID.

POST/api/Licenses

Create license. Body: CreateLicenseDto — required name, type (Perpetual, Trial, Subscription, NodeLocked, Floating, Concurrent), issuedTo, softwareReleaseId; optional expiry, seats, hardware, entitlement set ids, notes.

POST/api/Licenses/validate

AllowAnonymous + X-API-KEY. multipart/form-data: licenseKey, validationParams (JSON string), optional licenseFile.

GET/api/Licenses/validate/{licenseKey}

Simple validation; optional hardwareId query.

GET/api/Licenses/status/{licenseKey}

Status payload for SDK polling.

POST/api/Licenses/refresh/{licenseKey}

Refresh license material (optional RefreshLicenseDto).

GET/api/Licenses/{licenseKey}/activations

Anonymous activation snapshot.

GET/api/Licenses/{id}/download

Authorized download of license file bytes.

POST/api/Licenses/{id}/generate-file

Regenerate license file.

POST/api/Licenses/{id}/revoke

Revoke license.

GET/api/Licenses/{id}/access-attempts

Node-locked sharing detection. Lists machines denied because the license is bound elsewhere, with attempted and bound hardware IDs, IP, entry point and attempt counts, plus summary totals. Product owner or Admin only — this is the one route that returns unmasked device and network detail.

POST/api/Licenses/{id}/access-attempts/{attemptId}/acknowledge

Mark one attempt as reviewed. Returns the refreshed summary. Product owner or Admin only.

Additional routes cover hardware binding, transfers, and pending bindings; explore responses from your host under the same prefix.

Vendor licenses guide · SDK LicenseClient