DOCS LLMs

Quickstart

Quickstart

Get license validation working in under 5 minutes.

Step 1: Add a License Input

Your app needs a place for users to enter their license key:

┌────────────────────────────────────────────┐
│  Enter your license key:                   │
│  ┌──────────────────────────────────────┐  │
│  │ XXXX-XXXX-XXXX-XXXX                  │  │
│  └──────────────────────────────────────┘  │
│                              [Activate]    │
└────────────────────────────────────────────┘

Step 2: Connect to LicenseSeat

When the user clicks Activate, validate the key using an SDK or the API directly.

Platform Install Docs
JavaScript/TypeScript npm install @licenseseat/js sdks/javascript
Swift (macOS, iOS) SPM: licenseseat-swift sdks/swift
C# (.NET, Unity, Godot) dotnet add package LicenseSeat sdks/csharp
C++ (Unreal, JUCE, native) CMake FetchContent sdks/cpp
// JavaScript
import LicenseSeat from '@licenseseat/js';

const sdk = new LicenseSeat({
  apiKey: 'pk_live_xxxxxxxx',  // Your publishable key
  productSlug: 'your-product'
});

await sdk.activate('XXXX-XXXX-XXXX-XXXX');

if (sdk.hasEntitlement('pro')) {
  enableProFeatures();
}

Direct API (Python, Go, Rust, etc.)

# Python
import requests

response = requests.post(
    'https://licenseseat.com/api/v1/products/my-app/licenses/XXXX-XXXX-XXXX-XXXX/validate',
    headers={'Authorization': 'Bearer pk_live_xxxxxxxx'},  # Publishable key
    json={'device_id': 'unique-device-id'}
)

if response.json()['valid']:
    enable_pro_features()

Response

{
  "valid": true,
  "license": {
    "key": "XXXX-XXXX-XXXX-XXXX",
    "status": "active",
    "plan_key": "pro",
    "active_entitlements": [
      { "key": "pro", "expires_at": null }
    ]
  }
}

Next Steps