Getting started
This page takes you from a fresh account to an activated license. Everything happens in the console; the quickstarts then do the same from your application's code.
1. Create your account
Register at the console and sign in. A new account starts on the demo tier - free and currently without usage limits - so you can define your products, mint licenses and integrate the SDK end to end without subscribing. When you are ready to go live, every paid plan starts with a 14-day free trial (Settings → Plan & Usage).
If you would rather experiment without touching your live tenant, the Sandbox (linked in
the console navigation) is a separate playground with seedable sample data and
SBX-prefixed license keys. This page follows the live path.
2. Find your vendor id
Your vendor id identifies your tenant to the SDK. It is shown in the console under Settings. You will pass it to the SDK verbatim.
3. Create your product
Products → Create. The product form captures the name and price, and it also selects the license template that defines the license terms: the license type (Perpetual or Subscription), an optional Floating seats checkbox, the validity duration, and the number of activations (devices). On a fresh account, click Manage templates… next to the picker to create your first template, then select it for the product. Start simple: a Perpetual license, non-floating, with or without a fixed duration.
4. Issue your first license, with an order
Orders → Create. Every license is issued by an order. Pick your product, set the
quantity (one key per unit), and enter the customer email; for this first run, use your
own. Enter a total of 0 for a free order (paid channels fill this in for real sales).
The license key (XXXXX-XXXXX-XXXXX-XXXXX-XXXXX) is emailed to the customer address
together with the receipt. The console does not display the key again; it stores only a
hash. The order's page shows the license it issued and the delivery record. On the demo
tier the license is valid for 7 days and carries a demo marker.
5. Activate
Point the SDK at the service and activate with your license key:
C++
#include "softactivate/sws_licensing.h"
// create a licensing client pointed at the activation endpoint
auto client = sws::licensing::client::create(endpointUrl);
// your tenant's licensing domain - license certificate chains are
// validated against ca.<this domain>
client->set_metadata("trusted_domain", trustedDomain);
// your vendor id and the customer's license key (both live in the console)
client->set_vendor_id(vendorId);
client->set_license_key(customerLicenseKey);
// your product's Reference Id (console -> Products) - binds licenses to
// THIS product; a key sold for a different product is refused
client->set_product_id("YOUR_PRODUCT_ID");
C#
using SWS.Licensing;
// create a licensing client pointed at the activation endpoint
var client = new LicensingClient(endpointUrl);
// your tenant's licensing domain - license certificate chains are
// validated against ca.<this domain>
client.TrustedDomain = trustedDomain;
// your vendor id and the customer's license key (both live in the console)
client.VendorId = vendorId;
client.LicenseKey = customerLicenseKey;
// your product's Reference Id (console -> Products) - binds licenses to
// THIS product; a key sold for a different product is refused
client.SetProductId("YOUR_PRODUCT_ID");
VB.NET
Imports SWS.Licensing
' create a licensing client pointed at the activation endpoint
Dim client As New LicensingClient(endpointUrl)
' your tenant's licensing domain - license certificate chains are
' validated against ca.<this domain>
client.TrustedDomain = trustedDomain
' your vendor id and the customer's license key (both live in the console)
client.VendorId = vendorId
client.LicenseKey = customerLicenseKey
' your product's Reference Id (console -> Products) - binds licenses to
' THIS product; a key sold for a different product is refused
client.SetProductId("YOUR_PRODUCT_ID")
For production tenants the endpoint is https://lm.sws.softactivate.com and the
trusted domain is sws.softactivate.com. The
quickstarts walk the full loop, activating, saving
the license, validating again offline, and releasing the seat, in about ten minutes.
If something refuses
The statuses and errors reference maps every status to the action your application should take.