Getting Started
Basic Concepts
18 min
if you are new to licensespring, or to software licensing in general, you might find it helpful to review the following concepts so that you can get up and running as quickly as possible product a defined product within the licensespring platform this is what you wish to add software licensing to a product can be a web app, a desktop application, a plugin, a device/hardware or a microservice for example a product can have many possible attributes, but here are a few that you should be aware of product name this is what you call your app it can be anything, and is not particularly consequential for configuring your licensespring account the product name can be edited at any time by a user of the vendor platform product code the product code is important as it is a required field for most of the license api calls you cannot change a product code once you have defined a product in licensespring, so choose it wisely! product authorization licensespring supports key based or user based authorization key based licenses use a license key to authorize a license with the license api it is mostly used for node locking licenses to a machine or device user based licenses require that an email is assigned to a license the user's email and password (or single sign on) is used as part of the authorization process licenses an example license detail page licenses serve as a record of entitlements granted for a given product these license entitlements can be issued, modified, transferred, revoked, and contain many configuration options here are a few of the main options to be aware of license types there are 4 elementary types of licenses which can be issued using licensespring perpetual these licenses do not have expiry dates time limited these licenses have a fixed end date this end date can affect the license status subscription the license status is determined by an external source of truth (like a recurring billing system such as stripe) subscriptions also have subscription periods recorded consumption allows for usage metering, such as counting the times a license application is run, or number of api requests license max activations max activations is a field determining how many unique devices can be bound to a license license total activations total activations is also a field that belongs to a license, and counts how many distinct devices have been bound to a given license total activations will always be less than or equal to max activations license status this is the state of a given license there are many different states covered in different section in these docs the main ones to be aware of inactive the license has not been bound to any device but can currently be used specifically, the total activations field is 0 active the license has been bound to at least 1 device, and can currently be used (is not disabled or expired) expired for licenses that can expire (eg time limited licenses) disabled the software vendor can set a license as disabled, which overrides other statuses a subscription license is disabled when the subscription is no longer active activation the license activation is the act of binding a license to a device, also known as node locking license activation requires hardwareid the license authorization method (either a license key, or user identification like email / password or single sign on) the product code hardware id this is a unique identifier of a device that activated a license, and is sent on almost all requests to the license api licensespring's restful apis there are two primary restful apis maintained to interface between licensespring and your product and technology license api the license api is what your client facing application will use to connect to licensespring's cloud it allows for a limited set of operations such as license checks, activations, or to count consumptions it uses a signing and verifying key in order to communicate with the server securely management api the management api is intended for all of your back office operations, such as creating new licenses, exporting license usage to a bi tool, or integrating with your internal erp, crm, or recurring billing for instance it is not intended to be customer facing licensespring's sdks we have developed and maintain several wrappers to the apis to make it easier to add licensespring to your software, as well as to make it easier to use for example the sdks will automatically compute the hardwareid, enable local license checks, prevent clock tampering, or cache consumptions, to name a few of the additional features that the sdks provide events & webhooks events api at a glance the events api provides real time notifications of important actions and changes within the licensespring system, such as new customer creation, license activations, or license expirations these events form the foundation for building automations, integrations, and custom workflows technical overview events are generated automatically whenever key actions occur (e g , customer creation, order updates, license lifecycle changes) these events are dispatched in real time and can be consumed directly by your applications events power downstream services such as webhooks , enabling external systems to respond promptly common use cases include integrating with crms, automating internal operations, or triggering user engagement flows webhooks at a glance webhooks provide a simple way for licensespring to notify your systems about events as they happen instead of polling apis, your application receives https requests containing event details in json format, making it easier to stay in sync with license activity technical overview you configure a webhook endpoint (listener url) within your licensespring account you select which events you want to subscribe to (e g , license created, license expired, customer added) when those events occur, licensespring automatically sends an https post request with a json payload to your endpoint your system can then parse and act on the event—such as updating records, sending alerts, or triggering workflows to set up and configure webhooks, click the link for detailed instructions webhooks integrations licensespring connects seamlessly with leading platforms to streamline licensing operations and boost efficiency salesforce manage customer relationships and licensing data in one place while gaining actionable insights fastspring automate license provisioning, order processing, and subscription management for smoother operations stripe simplify payment handling, subscription billing, and secure financial transactions shopify easily manage licenses within your online store, making product monetization simple why choose licensespring integrations? ease of use simple setup for quick adoption efficiency reduce manual work and improve productivity scalability works for both startups and large enterprises reliability secure, well maintained integrations you can trust find an up to date list of native integrations supported by licensespring, along with detailed setup instructions, here integrations https //docs licensespring com/integrations