License Server

The License Server Web service provides several Web methods for interacting with licenses. For Instant SOLO Server Shared URL, this can be reached at https://secure.softwarekey.com/solo/webservices/licenseserver.asmx. If you are using Instant SOLO Server Custom Shared URL or Instant SOLO Server Dedicated URL, replace secure.softwarekey.com with your sub-domain/domain. If you are running a standalone version of SOLO Server, replace secure.softwarekey.com/solo in the URL with the path to your SOLO Server instance. Please contact us if you need assistance determining the correct URL.

The licenseserver.asmx page offers the following Web methods:

AddLicenseAndUnregisteredCustomer

Allows adding a new license and an unregistered customer associated with the license. This method requires passing in a SOLO Server AuthorID/UserID/Password, and the user must have Add Single Customer and Add License permissions.

Important

Since this web method requires providing an AuthorID, UserID, and User Password as inputs, it should be used for internal applications only and should not be called by client applications distributed to customers. Using this web method in a client application exposes a security risk as this would require including SOLO Server login credentials in the distributed product.

Important

Licenses added through this web method on Instant SOLO Server accounts which have not been activated will automatically be marked as test licenses, and will automatically be purged at the first of every month.

Input

Parameter Data Type Required/Optional Description
authorID int Required The SOLO Server AuthorID for which the product is to be added.
userID string Required The SOLO Server UserID within the SOLO Server Author's roster of authorized SOLO Server users that is using the service.
userPassword string Required The password affiliated with the SOLO Server UserID.
prodOptionID int Required The Product Option ID for which the license is to be created.
distributorID int Optional The Distributor ID to which the license is to be associated. Pass in 0 (zero) if a distributor has not been specified or is otherwise unavailable.
unitPrice double Required The unit price of the specified Product Option ID.
licenseNotes string Optional Any notes to be associated with the new license. Pass in an empty string if notes have not been specified or are otherwise unavailable.

Output

The result dataset contains the following parameters:

Parameter Data Type Description
CustomerID int The new Customer ID.
LicenseID int The new License ID.
Password string The randomly generated password for the new Customer.
AuthorSerialNumNext int If applicable, the AuthorSerialNumNext value of the product.
AuthorSerialNumType string If applicable, the type of serial number.
SerialNumber string If applicable, the serial number of the license.
ActivationPassword string The randomly generated activation password for the new license.

RegisterLicense

Allows registering an unregistered license with customer data.

Important

The optional fields listed below are considered optional in the SOLO Server database. Specifying a blank value will result in the respective field being updated with an empty value in the database.

Input

Parameter Data Type Required/Optional Description
licenseID int Required The License ID.
password string Required The customer password or license activation password.
company string Optional The customer's company name.
firstName string Optional The customer's first name.
lastName string Optional The customer's last name.
address1 string Optional The customer's street address (or line 1 of the customer's address).
address2 string Optional The customer's second address line (i.e. apartment or suite number). Pass in an empty string if a second address line has not been specified or is otherwise unavailable.
city string Optional The city of the customer's address.
stateProvince string Optional The state/province of the customer's address. For US or Canadian addresses, this should be validated to be a valid state/province code. See State Codes and Country Strings as well as Client Validation Script for details on validation.
postalcode string Optional The customer's zip/postal code. For US or Canadian addresses, this should be validated to be a valid postal code. See State Codes and Country Strings as well as Client Validation Script for details on validation.
country string Optional The country of the customer's address. This should be a valid SOLO Server country string. See State Codes and Country Strings as well as Client Validation Script for details on validation.
phone string Optional The customer's phone number. Pass in an empty string if a phone number has not been specified or is otherwise unavailable.
fax string Optional The customer's fax number. Pass in an empty string if a fax number has not been specified or is otherwise unavailable.
email string Optional The customer's email address.
notes string Optional Any notes to be added to the customer record upon registration. Pass in an empty string if no notes have been specified.
newPassword string Optional A new password for the customer. Note that this will only be updated if the customer password is used for authentication.

Output

The result dataset contains the following parameters:

Parameter Data Type Description
Failure
Error int Code for the error. Codes are as follows:
  • 1 - Invalid LicenseID/Password
  • 3 - Registered Customer - the customer has already registered. Use the UpdateLicenseRegistration method instead.
Message string Description of the error. See Error above.
Success
CustomerID int The CustomerID. Note that this can change from the original CustomerID associated with the license if the entered customer data causes a merge to occur.

UpdateLicenseRegistration

Allows updating the registration information on a license.

Important

The optional fields listed below are considered optional in the SOLO Server database. Specifying a blank value will result in the respective field being updated with an empty value in the database.

Input

Parameter Data Type Required/Optional Description
licenseID int Required The License ID.
password string Required The customer password or license activation password.
company string Optional The customer's company name.
firstName string Optional The customer's first name.
lastName string Optional The customer's last name.
address1 string Optional The customer's street address (or line 1 of the customer's address).
address2 string Optional The customer's second address line (i.e. apartment or suite number). Pass in an empty string if a second address line has not been specified or is otherwise unavailable.
city string Optional The city of the customer's address.
stateProvince string Optional The state/province of the customer's address. For US and Canadian addresses, this should be validated to be a valid state/province code. See State Codes and Country Strings as well as Client Validation Script for details on validation.
postalCode string Optional The customer's zip/postal code. For US and Canadian addresses, this should be validated to be a valid postal code. See State Codes and Country Strings as well as Client Validation Script for details on validation.
country string Optional The country of the customer's address. This should be a valid SOLO Server country string. See State Codes and Country Strings as well as Client Validation Script for details on validation.
phone string Optional The customer's phone number. Pass in an empty string if a phone number has not been specified or is otherwise unavailable.
fax string Optional The customer's fax number. Pass in an empty string if a fax number has not been specified or is otherwise unavailable.
email string Optional The customer's e-mail address.
notes string Optional Any notes to be added to the customer record upon registration. Pass in an empty string if no notes have been specified.
newPassword string Optional A new password for the customer. Note that this will only be updated if the customer password is used for authentication.

Output

The result dataset contains the following parameters:

Parameter Data Type Description
Failure
Error int Code for the error. Codes are as follows:
  • 1 - Invalid LicenseID/Password
Message string Description of the error. See Error above.
Success
CustomerID int The CustomerID. Note that this can change from the original CustomerID associated with the license if the entered customer data causes a merge to occur.

ValidateLicenseRegistration

Validates whether a given license has been registered.

Input

Parameter Data Type Required/Optional Description
licenseID int Required The License ID.
password string Required The customer password or license activation password.

Output

The result dataset contains the following parameters:

Parameter Data Type Description
Failure
Error int Code for the error. Codes are as follows:
  • 1 - Invalid LicenseID/Password
  • 3 - Unregistered Customer
Message string Description of the error. See Error above.
Success
The license registration data XML
  • CustomerID (int)
  • CompanyName (string)
  • FirstName (string)
  • LastName (string)
  • MailAddr1 (string)
  • MailAddr2 (string)
  • City (string)
  • StateProvince (string)
  • PostalCode (string)
  • Country (string)
  • Voice (string)
  • Fax (string)
  • Email (string)
  • Notes (string)
  • EuropeanUnionVATNumber (string)
  • ProductID (int)
  • ProdOptionID (int)