Table of Contents

Summary

This page details the functionality of the AGTEK Access Internet Key system. The syntax of these operations is pseudo object oriented, with a some English prose to indicate parameter and return types. This should not be taken as a real programmer's documentation, but rather as a specification indicating how the API should be implemented.

A NOTE about binding: C++ classes will return their values as the final parameter (passed by reference) and the actual return value is an AccessError code. Java classes will return the appropriate return value, with errors being indicated by standard (in this case AGTEK Access) exception structures.

Objects and Methods

The following objects and listed methods encompass the functionality for the License Server API. The language specific bindings for these methods will be folded into the appropriate language binding document during development (C++/Java).

AccessServer

The Access server API provides basic user functionality for the use and consumption of license keys.

methods

AdminAPI (Customers)

The AdminAPI provides the capability to administer basic license features (as well as a couple of other feature);

methods

SupportAPI (AGTEK Employees only)

The SupportAPI supports the capability to administer revenue based features in the Access system. This API is to be used only at AGTEK.

methods

Storage User

The StorageUser object represents a userinstance in the AGTEK Access authentication system. Users are used to scope operations (role based authorization) and to associate with software license keys. StorageUser objects are documented (JavaDoc style) here: http://dev.agtek.com/AccessJavaDocs/index.html

License Key

The LicenseKey object represents an instance of a license key in the AGTEK Access System. LicenseKey objects contain the key identifier, the key parameters, and associated users. While the LicenseKey may represent all this information as being aggregated, it may not be implemented that way in the Access database.

int(32) LicenseKey.getId() int(16) LicenseKey.getCustomerId() int

Mapping from Solo

This table provides the equivalent calls between the Solo system and the new system. Calls are based at the ASP level of functionality. It is envisioned that a new C++ wrapper would be written for the AGTEK desktop apps to plug into the security model. It is expected that a new class (equivalent to SoftwareKey/Network key would need to be written to be able to plug into the existing frameworks.

ASP Function New Function Description
AddFloatingUser.asp admin.addUser(l,u) Add user to a license key
AddFloatingUserPassword.aspadmin.setPassword(u,p) Set/reset password on user.
DeleteFloatingUser.asp admin.deleteUser(u) Delete specified user.
GetCheckedOutKey.asp admin.checkoutLicense(l)Checkout the specified license.
GetCompanyCrossRef.asp N/A Not needed, customer ops scoped by admin login
GetFloatingUsers.asp admin.getUsers() List all potential users for current customer
GetMaxFloatingUsers.asp license.getMaxUsers() Maximum users per key allowable.
GetNetKeyDaysAway.asp license.getMaxDuration()Get duration from license.
GetNetKeysAvail.asp admin.getLicenses(prod,free) List keys available for product
GetNetKeysInUse.asp admin.getLicenses(prod,free) List keys available for product
GetRegDataAG.asp ? not used in CNetworkKeyCalled in CSoftwareKey::GetSoftwareLicense
GetUpdatesAG.asp ? not used in CNetworkKeyCalled in SoftwareKey::FindPage
ModFloatingUser.asp admin.updateUser(u) Modify/update user record
ModNetKeyDaysAway.asp admin.updateLicenseDuration(l, long)
NoNetworkKeys.asp access.submitLicenseComment(str)Add comment to license audit log.
ReleaseLicense.asp access.checkinLicense(l)Release/Checkin the lock on the license
SetFloatingUser.asp admin.addUser(l,u) Adds user to a license key.