License Server

The License Server web service provides several Web methods for interacting with licenses.

For SOLO Server Shared URL, this can be reached at https://secure.softwarekey.com/solo/webservices/licenseserver.asmx

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/API UserID/API UserPassword, and the user must have Add Single Customer and Add Licenses permissions.

Important

Since this web method requires providing an AuthorID, API UserID, and API User Password as inputs, it should be used for internal applications only and should not be called by client applications distributed to customers. See web service security for details.

If you are currently using regular UserID and UserPassword credentials, you will need to update your application(s) to use an API UserID and API UserPassword instead, as support for the regular User ID and Password will be removed in the future.

Important

Licenses added through this web method on SOLO Server Shared and Dedicated URL 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 SOLO Server Author ID.
userID string Required The API User ID of the user from the given author using the service (previously the regular User ID). The API User ID and Password need to be used, as support for the regular User ID and Password will be removed in the future.
userPassword string Required The API User Password for API User ID (previously the regular User Password for the User ID). The API User ID and Password need to be used, as support for the regular User ID and Password will be removed in the future.
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)