Beta version updated on December 13th 2024
This document provides a quick guide to the properties and types associated with the LicensePoolConfiguration
and LicensePoolGroup
objects. It includes detailed descriptions, example objects, and usage guidelines to help you understand and integrate with CoreView API.
Please note that API design is still a beta version and the contents are subject to change as we continue to refine and improve our API.
Detailed schema
Properties of LicensePoolConfiguration
The LicensePoolConfiguration
object contains the following properties:
Property | Type | Description |
---|---|---|
Id | string | The unique identifier for the VirtualTenant. The underlying type is a MongoDB ObjectId
|
Name | string | The name of the VirtualTenant. |
Description | string | A description of the VirtualTenant. |
DistributionGroupDomainFilters | array of strings | A list of domains. Distribution groups with a domain inside this list will be visible inside the VirtualTenant. |
DistributionGroupFilters | array of QueryFilter | An ordered list of QueryFilter objects representing the rules that distribution group properties must satisfy to be visible inside the VirtualTenant. The first element is expected to have the condition And . |
SecurityGroupFilters | array of QueryFilter | An ordered list of QueryFilter objects representing the rules that security group properties must satisfy to be visible inside the VirtualTenant. The first element is expected to have the condition And . |
Microsoft365GroupFilters | array of QueryFilter | An ordered list of QueryFilter objects representing the rules that Microsoft365 group properties must satisfy to be visible inside the VirtualTenant. The first element is expected to have the condition And . |
UserFilters | array of QueryFilter | An ordered list of QueryFilter objects representing the rules that user properties must satisfy to be visible inside the VirtualTenant. The first element is expected to have the condition And . |
UserDomainFilters | array of strings | A list of domains. Users with a domain inside this list will be visible inside the VirtualTenant. |
UsersGroups | array of NestedGroup | A list of NestedGroup objects used to filter the users of the tenant. Each member of these groups will be visible to the operators of the VirtualTenant. |
DeviceFilters | array of QueryFilter | An ordered list of QueryFilter objects representing the rules that device properties must satisfy to be visible inside the VirtualTenant. The first element is expected to have the condition And. |
DeviceSecurityGroups | array of NestedGroup | A list of NestedGroup objects used to filter the devices of the tenant. Each member of these groups (expected to be of type SecurityGroup) will be visible to the operators of the VirtualTenant. |
OrganizationalUnitFilters | array of QueryFilter | An ordered list of QueryFilter objects representing the rules that user organizational unit must satisfy to be visible inside the VirtualTenant. The first element is expected to have the condition And. |
Operators | array of strings | A list of UserPrincipalNames of the operators added to the VirtualTenant. |
OperatorsGroups | array of NestedGroup | A list of NestedGroup objects. Each member of these groups will be added as an operator to the VirtualTenant. |
Properties of LicensePoolGroup
The LicensePoolGroup
object contains the following properties:
Property | Type | Description |
---|---|---|
Id | string | The unique identifier for the license pool group. |
Name | string | The name of the license pool group |
Description | string | Description of the license pool group |
Filters | array of QueryFilter | An ordered list of QueryFilter objects representing the rules that filter criteria properties must satisfy to be visible inside the LicensePoolGroup. |
LicensePoolInfos | array of LicensePoolInfo | An ordered list of LicensePoolInfo objects representing the SKUs assigned to the LicensePoolGroup. |
PricePerUser | double | The price per user in the license pool group. |
PricePerActiveUser | double | The price per active user in the license pool group. |
PricePerLicensePool | double | The price per license pool in the license pool group. |
Currency | string | The currency in which prices are stated for the license pool group. |
Detailed property types
LicensePoolSkuConfiguration
A LicensePoolSkuConfiguration
object is used to define set of SKUs to be assigned to LicensePoolConfiguration
.
It consists of the following properties:
- SkuId (string): the unique identifier for the SKU
- SkuName (string): the SKU name
- SkuPartNumber (string): the SKU part number
LicensePoolInfo
A LicensePoolInfo
object is used to define sku information within a LicensePoolGroup
.
It consists of the following properties:
- SkuId (string): the unique identifier for the SKU
- Sku (string): the SKU name or identifier
- UserGroupId (string): the identifier of the user group
- GroupName (string): the name of the group
- SkuPartNumber (string): the part number of the SKU
- Total (long): the total number of licenses
- Available (long): the number of available licenses
- Assigned (long): the number of assigned licenses
- Consumed (long): the number of consumed licenses
- NotAssigned (long): the number of unassigned licenses
- IsActive (bool): Indicates whether the license pool is active
QueryFilter
A QueryFilter
object is used to define rules for filtering properties within a LicensePoolGroup
.
It consists of the following properties:
- Name (string): the name of the property of the object that is being filtered (e.g., Department, DisplayName)
- Value (string): the value to filter on. Used in combination with the Operation property
- ValueDate (string, date-time): the date value to filter on. Reserved for properties of the object that have an underlying DateTime type
- Condition (enum): Represents how the single QueryFilter should combine with other QueryFilters (And, Or)
- Operation (enum): The kind of operation to be performed on the object in order to respect the filter (e.g., Equals, Contains)
License
A License
object represents license information including SKU details and license unit counts.
It consists of the following properties:
- SkuId (string): the unique identifier for the SKU
- SkuName (string): the SKU name
- SkuPartNumber (string): the SKU part number
- ActiveUnits (integer): the number of active licenses
- ConsumedUnits (integer): the number of consumed licenses
- RemainingUnits (integer): the number of remaining licenses
Possible values for FirstLevelCriteria and SecondLevelCriteria
The following values can be used for both FirstLevelCriteria and SecondLevelCriteria parameters:
- City
- CompanyCountry
- Domain
- Division
- OrganizationalUnit
- CustomAttribute1
- CustomAttribute2
- CustomAttribute3
- CustomAttribute4
- CustomAttribute5
- CustomAttribute6
- CustomAttribute7
- CustomAttribute8
- CustomAttribute9
- CustomAttribute10
- CustomAttribute11
- CustomAttribute12
- CustomAttribute13
- CustomAttribute14
- CustomAttribute15
- Department
- Office
- PostalCode
- State
- PortalAttribute1
- PortalAttribute2
- PortalAttribute3
- UsageLocation
These values are case-sensitive and must be specified exactly as shown above.
Examples
Example of a LicensePoolConfiguration object
Here’s an example of a LicensePoolConfiguration
object:
{
"firstLevelCriteria": "City",
"secondLevelCriteria": "",
"skus": [
{
"skuId": "0123456789abc:companyname:ENTERPRISEPACK"
},
{
"skuId": "0123456789abc:companyname:FLOW_FREE"
}
],
"PricePerUser": null,
"PricePerActiveUser": null,
"PricePerLicensePool": null,
"Currency": null
}
Example of a LicensePoolGroup object
Here’s an example of a LicensePoolGroup
object:
{
"name": "License group name",
"description": "License group description",
"filters": [
{
"name": "LicensePoolDiscriminator",
"value": "Milan",
"valueDate": null,
"condition": "OR",
"operation": "Equals"
}
],
"licensePoolInfos": [
{
"skuId": "0123456789abc:companyname:SKUID",
"sku": "Product with SKU",
"userGroupId": null,
"groupName": null,
"skuPartNumber": "SKUID",
"total": 1000000,
"available": 0,
"assigned": 0,
"consumed": 0,
"notAssigned": 999012,
"isActive": true
}
],
"pricePerUser": 0.0,
"pricePerActiveUser": 0.0,
"pricePerLicensePool": 0.0,
"currency": "USD",
"notes": "My notes",
"valueToAssign": "Milan"
}
Download
Visualize and interact with our API by downloading Swagger UI:
Download the License Pools API Swagger UI
Understand our API’s data structure by downloading the JSON schema:
Download the License Pools JSON schema