GET license
This request performs the following:
>Provides provisioning information related to entitlements, products, and features.
>Provides license consumption information, such as the number of running sessions (in the case of licenses with the limited concurrency limit) and the number of usage count consumed (in the case of licenses with the limited usage limit).
>Checks the license availability for a user.
Type
GET
URI
<SCC_URL>/licenses?customer={customer}&user={user}&featureName={fname}&featureVersion={fver}&Entitlement={EID}&productName={pname}&productVersion={pver}&userSpecificEnititlement={trueORfalse}
The <SCC_URL> represents the Cloud Connect URL sent by Directory Service (also called, YPS) in response to the POST registration request.
Example URI
https://fra01-he02.trial.sentinelcloud.com/scc/licenses?customer=c1&user=u1&featureName=fname1&featureVersion=1.0&Entitlement=aced45&productName=product1&productVersion=1.0&userSpecificEnititlement=true
URI Parameters
The following parameters are used to retrieve the license information:
Parameter | Description |
---|---|
customer |
The unique customer ID (as provided in EMS). |
user |
Identifies the user. NOTE The user-specific filtering is done based on whether the userSpecificEntitlement parameter is True or False. |
featureName |
(Optional) The feature name. |
featureVersion |
(Optional) The feature version. If a feature is created with version from EMS, it become mandatory to provide the feature version along with the feature name in the request. |
entitlement |
(Optional) The entitlement ID. |
productName | (Optional) The product name. |
productVersion |
(Optional) The product version. NOTE If productVersion is provided, the filtering is performed for the exact product name and product version pair. Otherwise, details of all products are returned. |
userSpecificEntitlement |
(Optional) A Boolean parameter to filter results based on the given user name. It has one of the following values: >True : Enable the user-specific filtering. The request, in this case, returns only those named entitlements to which the given user is associated and all unnamed entitlements. >False : Disable the user-specific filtering. In this case, all named and unnamed entitlements are returned. The default value is False. |
Input Combinations
Following are the combinations for the request parameters:
Customer |
Entitlement |
Product |
Feature |
Result |
---|---|---|---|---|
Not null |
Null |
Null |
Null |
Information of all entitlements, products, and features related to the given customer and user. |
Not null |
Not null |
Null |
Null |
Information of all features and products for the given EID. |
Not null |
Not null |
Not null |
Null |
Information of all features for the given product and EID. |
Not null |
Not null |
Not null |
Not null |
Information for the given feature, product, and EID. |
Further filtering can be done based on userSpecificEntitlement
and user
parameters. For details, refer to the URI Parameters table given above.
Request Body
None
Response Body
NOTE The responses shown below are for a given entitlementId, productName, and productVersion.
Case 1: When an entitlement contains a feature with unlimited concurrency and unlimited usage count
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<licenses>
<entitlement>
<entitlementId>51f0c54b-24e9-43a6-bf22-ce8738da59fe</entitlementId>
<product>
<productName>m1</productName>
<productVersion>1</productVersion>
<feature>
<featureId>57</featureId>
<featureName>z1</featureName>
<featureVersion/>
<usable>true</usable>
<usabilityStatus>Available</usabilityStatus>
<concurrencyLimit>Unlimited</concurrencyLimit>
<startDate>2017-01-04T00:00:00Z</startDate>
<endDate>2018-01-05T00:00:00Z</endDate>
<vendorInfo/>
<endDateGraceDuration>0</endDateGraceDuration>
<usageLimit>Unlimited</usageLimit>
</feature>
</product>
</entitlement>
</licenses>
Case 2: When an entitlement contains a feature with limited concurrency
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<licenses>
<entitlement>
<entitlementId>3c6d37dd-7c23-453d-8f07-96f776d301c7</entitlementId>
<product>
<productName>calculator</productName>
<productVersion>2</productVersion>
<feature>
<featureId>19</featureId>
<featureName>add</featureName>
<featureVersion>1</featureVersion>
<usable>true</usable>
<usabilityStatus>available</usabilityStatus>
<concurrencyLimit>5</concurrencyLimit>
<concurrencyCriteria>per user</concurrencyCriteria>
<runningSessions>0</runningSessions>
<startDate>2016-07-18T00:00:00Z</startDate>
<endDate>2017-07-18T00:00:00Z</endDate>
<vendorInfo>vendorinfo</vendorInfo>
<endDateGraceDuration>3</endDateGraceDuration>
<usageLimit>unlimited</usageLimit>
</feature>
</product>
</entitlement>
</licenses>
Case 3: When an entitlement contains a feature with limited usage count
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<licenses>
<entitlement>
<entitlementId>3c6d37dd-7c23-453d-8f07-96f776d301c7</entitlementId>
<product>
<productName>calculator</productName>
<productVersion>3</productVersion>
<feature>
<featureId>16</featureId>
<featureName>add</featureName>
<featureVersion>1</featureVersion>
<usable>true</usable>
<usabilityStatus>available</usabilityStatus>
<concurrencyLimit>unlimited</concurrencyLimit>
<startDate>2016-07-18T00:00:00Z</startDate>
<endDate>2017-07-18T00:00:00Z</endDate>
<vendorInfo>vendorinfo</vendorInfo>
<usageLimit>5</usageLimit>
<usageCountConsumed>0</usageCountConsumed>
<usageCountGrace>10</usageCountGrace>
<endDateGraceDuration>2</endDateGraceDuration>
</feature>
</product>
</entitlement>
</licenses>
For a feature with limited usage count, the following attributes are visible in the output:
- usageLimit (It contains a finite integer value indicating the maximum number of usage counts allowed. In other cases, its value remains "unlimited").
- usageCountGrace
- usageCountConsumed
In case of error:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<error>
<status>Fail</status>
<errorCode>error_code</errorCode>
<errorDescription>error_message</errorDescription>
</error>
Elements in the Output XML
The following table describes the elements present in the output XML:
Element | Description |
---|---|
Entitlement Information | |
entitlementId | The entitlement ID (known as EID in EMS). |
Product Information | |
productName | The name of the product. |
productVersion | The version of the product. |
Feature Information | |
featureId | The integer ID of the feature. |
featureName | The name of the feature. |
featureVersion | The version of the feature. |
usable |
Specifies if the license is usable or not. Its value can be one of the following: >true: Indicates that the license is usable. >false: Indicates that the license is not usable. |
usabilityStatus |
The usability status of the feature. Its value can be one of the following: >Available: Indicates that the license is ready for use. >An error string: Indicates that the license is not available. |
License Information | |
concurrencyLimit |
The maximum number of concurrent instances allowed for a feature. Its value should be in the range 1-32752. The "unlimited" value indicates that the concurrency limit is not set, or the concurrency is unlimited. NOTE When using the EMS GUI, to specify unlimited concurrency, the Unlimited check box is selected. The 0 value is not allowed from the EMS GUI. When using an EMS web service, the 0 value is provided to specify unlimited concurrency. For license attribute details, refer to the EMS Guides. The default value is "unlimited". NOTE If the concurrencyLimit contains a finite value, the getInfo output also contains the following elements: concurrencyCriteria and runningSessions. |
concurrencyCriteria |
The criteria of counting concurrent instances. Its value can be one of the following: >per login: Count each login request as an instance. If the same user logins to a feature multiple times, each login will consume one concurrency limit. >per user: Count each user as an instance. All the login requests by the same user are counted as one instance, and consume only one concurrency limit. This element is present in the XML only if concurrencyLimit contains a finite value. |
runningSessions |
The number of active concurrent instances. Its value cannot exceed the concurrency limit. This element is present in the XML only if concurrencyLimit contains a finite value. |
startDate |
The license start date and time. If a start date is given for a license, the feature cannot be used before that date and time. Date is in the yyyy-mm-dd format, and time is in the hours:minutes:seconds format. The UTC time zone is used. Example:
|
endDate |
The license expiration date and time. The license expires when the end date is reached. If an expiry is set, date is in the yyyy-mm-dd format and time is in the hours:minutes format. Otherwise, the field has the string value of “Never expires”. The UTC time zone is used. Example:
|
vendorInfo |
The vendor-defined information for a feature specified from EMS (in the Vendor Info license attribute), for example, employee role or data download speed. A software vendor can query vendorInfo values in an application by using the getInfo API. Based on the API results, the vendor can define application logic or can implement dynamic decision making capabilities. This field can contain up to 255 alphanumeric characters. Note: >This attribute/element is not used by the Sentinel Cloud Connect in license enforcement. |
endDateGraceDuration |
The additional number of days for which the license can be used after the end date has been reached. The range is 0 to 365 days. This element is mapped to the Grace Days attribute of the Connected license model of EMS. |
usageLimit |
The maximum number of times a feature can be used. Its value is an integer in the range of 1 to 2147483647. The "unlimited" value indicates that the usage limit is not set, or unlimited usage counts are allowed. NOTE When using the EMS GUI, to specify unlimited usage counts, the Unlimited check box is selected. 0 is not allowed from the EMS GUI. When using an EMS web service, the 0 value is used to allow unlimited usage count. For license attribute details, refer to the EMS Guides. If usageLimit contains a finite value, the getInfo output also contains the following elements: usageCountGrace and usageCountConsumed. |
usageCountGrace |
The number of additional usage counts allowed for a feature after the usage limit has been reached. This element is present in the getInfo output only if the usageLimit contains a finite value and the Grace Limit is set to a non zero value in EMS. Its value is an integer in the range of 1 to 2147483647. |
usageCountConsumed |
The number of usage counts that have been consumed so far. This element is present in the getInfo output only if the usageLimit contains a finite value. |
Response Schema
<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="licenses">
<xs:complexType>
<xs:sequence>
<xs:element name="entitlement" minOccurs='1'>
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="entitlementId" minOccurs='1' maxOccurs='1'/>
<xs:element name="product" minOccurs='1'>
<xs:complexType>
<xs:sequence>
<xs:element type="xs:string" name="productName"/>
<xs:element type="xs:string" name="productVersion"/>
<xs:element name="feature" minOccurs='1'>
<xs:complexType>
<xs:sequence>
<xs:element type="xs:int" name="featureId"/>
<xs:element type="xs:string" name="featureName"/>
<xs:element type="xs:string" name="featureVersion"/>
<xs:element type="xs:string" name="usable"/>
<xs:element type="xs:string" name="usabilityStatus"/>
<xs:element name="concurrencyLimit">
<xs:simpleType>
<xs:union memberTypes="xs:int xs:string"/>
</xs:simpleType>
</xs:element>
<xs:element type="xs:dateTime" name="startDate"/>
<xs:element type="xs:dateTime" name="endDate"/>
<xs:element type="xs:string" name="vendorInfo"/>
<xs:element type="xs:int" name="endDateGraceDuration"/>
<xs:element type="xs:string" name="concurrencyCriteria" minOccurs='0'/>
<xs:element type="xs:int" name="runningSessions" minOccurs='0'/>
<xs:element type="xs:string" name="usageCountGrace" minOccurs='0'/>
<xs:element type="xs:int" name="usageCountConsumed" minOccurs='0'/>
<xs:element name="usageLimit" >
<xs:simpleType>
<xs:union memberTypes="xs:int xs:string"/>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
Error Codes
Error Code | Description | Status Code |
---|---|---|
2002 |
User is invalid |
400 Bad request |
2003 |
Customer is invalid |
400 Bad request |
2008 |
Invalid parameter: featureName |
400 Bad request |
2010 |
Invalid parameter: featureVersion |
400 Bad request |
2026 |
Access denied to the requested feature |
403 Forbidden |
See Also: Common Error Codes