Introduction

Welcome to the Iguana License API reference. The following API calls are designed to interact with the my.interfaceware.com licensing system.

These APIs will allow you to get, activate, and transfer Iguana licenses programmatically providing you have licenses available to do so.

License API

The purpose of this set of API calls is to make it easy to automatically install new instances of Iguana, or transfer licenses from instances that aren't being used anymore. Please note that the URL associated with the following API calls is for the Interfaceware License System, not an Iguana instance. If you are interested in this functionality but require more licenses, please inquire with your Account Manager.

Get Auth Token

Example Usage of POST /api


  local AuthToken = net.http.post{
    url = "https://my.interfaceware.com/api",
    parameters = {
      username = 'my.interfaceware USERNAME',
      password = 'my.interfaceware PASSWORD',
      method = 'session.login'
    },
    live = true
  }

Usage

POST /api

Required Parameters

Returns

A session token which will be used with the rest of the license API calls as JSON.

Get List of Licenses

Example Usage of GET /api

local Licenses = net.http.get{
  url = "https://my.interfaceware.com/api",
  parameters = {
    product = 'Iguana',
    token = AuthToken,
    method = 'license.listentitlements'
  },
  live = true
}

Usage

GET /api

Required Parameters

Returns

A list of available license codes as JSON.

Activate a License

Example Usage of POST /api

local Activate = net.http.post{
  url = "https://my.interfaceware.com/api",
  parameters = {
    product = 'Iguana',
    token = AuthToken,
    method = 'license.activate',
    description = 'license description',
    entitlementid = licenseID,
    instanceid = IguanaInstanceID
  },
  live = true
}

Usage

POST /api

Required Parameters

Returns

Will return a JSON object containing the license description and the activation code.

Check if a License is Activated

Example Usage of POST /api

local Activate = net.http.post{
  url = "https://my.interfaceware.com/api",
  parameters = {
    product = 'Iguana',
    token = AuthToken,
    method = 'license.listActivations',
    entitlementid = licenseID,
  },
  live = true
}

Usage

POST /api

Required Parameters

Returns

If the license is activated, will return a JSON object containing information about the Iguana instance that is currently using it.

Transfer a License

Example Usage of POST /api

local Activate = net.http.post{
  url = "https://my.interfaceware.com/api",
  parameters = {
    product = 'Iguana',
    token = AuthToken,
    method = 'license.UpdateActivationInfo',
    description = 'license description',
    activationid = ID,
    instanceid = IguanaInstanceID
  },
  live = true
}

Usage

POST /api

Required Parameters

Returns

Returns a JSON object with the information about the Iguana you've transferred the license to.

Get Instance Details

This API call is used to get the Iguana instance ID, which you'll need to activate or transfer a license.

Example Usage of GET /license/details

  local Details = net.http.get{
    url = 'https://localhost:6543/license/detail',
    auth = {username = 'admin',password = 'password'},
    parameters = {},
    live = true
  }

Usage

GET /license/details

Required Parameters

Returns

Returns a JSON object containing the details regarding the particular instance that was queried.

Apply License

This API call is used to apply a license code to an Iguana instance.

Example Usage of POST /license/update

  local Details = net.http.post{
    url = 'https://localhost:6543/license/update',
    auth = {username = 'admin',password = 'password'},
    parameters = {key='LICENSE KEY'},
  live = true
  }

Usage

POST /license/update

Required Parameters

Returns

Returns a JSON object containing the details regarding the particular instance that the license was applied to.