Example objects and operations

Example objects and operations for the 10Duke Entitlement Management Graph API.

Entitlement

Generic operations: POST, GET, PUT, DELETE

Add license consumer relations

Enables a user or members of a group to consume licenses of an entitlement.

POST /graph?operation=AddLicenseConsumerRelations

Parameters:

Parameter In Type Required
entitlementId: The id of the entitlement that owns the licenses query or form UUID true
profileGroupId: The id of a group whose members are granted rights to consuming the licenses query or form UUID false
profileId: The id of a user who is granted rights to consuming the licenses query or form UUID false
allowExistingRelation: A flag determining if this operation succeeds even if the relation to create already exists query or form boolean false

Remove license consumer relations

Removes license consumption rights from a user or members of a group.

POST /graph?operation=RemoveLicenseConsumerRelations

Parameters:

Parameter In Type Required
entitlementId: The id of the entitlement that owns the licenses query or form UUID true
profileGroupId: The id of a group whose members are denied rights to consuming licenses query or form UUID false
profileId: The id of a user who is denied rights to consuming the licenses query or form UUID false
allowAlreadyRemoved: A flag determining if this operation succeeds even if the relation to remove doesn’t exist query or form boolean false

Related objects:

  • ~OneToMany/License

  • ~LicenseConsumerRelation/ProfileGroup

  • ~LicenseConsumerRelation/Profile

  • ~ManyToOne/Organization

  • ~ManyToOne/Profile

Assignment

Generic operations: POST, GET, PUT, DELETE

Related objects:

  • ~OneToMany/Consumption

  • ~ManyToOne/Profile

  • ~ManyToOne/License

Consumption

Generic operations: POST, GET, PUT, DELETE

Related objects:

  • ~ManyToOne/Assignment

License

Generic operations: POST, GET, PUT, DELETE

Move licenses

Moves a license from the current entitlement to another entitlement.

POST /graph/License[@id='LIC_ID']?operation=MoveLicenses

Parameters:

Parameter In Type Required
license selector: Selects one or more licenses to move. Example: /License[@id='8cd13682-7735-40dd-9f7f-8a6d35949eef'] path Graph Selector true
to: The id of the target entitlement, or a Graph Selector for selecting the target entitlement query or form UUID or Graph Selector true
create: A flag determining if a new entitlement is created if no entitlement found. The default is false. query or form boolean false

Create or update license assignments

Manages assignments that define how a license relates to a profile that is a potential consumer of the license.

POST /graph?operation=CreateOrUpdateAssignments

An assignment can describe that:

  • The license is currently used by the profile (the user occupies a license seat) but can be released.

  • The license is reserved to the profile with a long-term reservation. This kind of a reservation reserves a license seat also when not actively consuming the license.

  • License consumption is denied from the profile, even when the profile belongs to a ProfileGroup for which the license has been granted.

Parameters:

Parameter In Type Required
createAssignment: A flag controlling if a new assignment is created, if an assignment doesn’t exist already query or form boolean false
profileId: The id of the profile for whom license assignment is managed query or form UUID true
licenseId: The id of the license to manage query or form UUID true
reservationType: The type of the reservation:
- "" (empty string): Dynamically occupying a license seat, can be released
- "reserved": A long-term reservation
- "denied": Consumption denied
query or form string false
validFrom: The assignment validity start time query or form ISO date false
validUntil: The assignment validity end time query or form ISO date false

Related objects:

  • ~ManyToOne/Entitlement

  • ~ManyToOne/LicensedItem

  • ~OneToMany/LicenseMetadata

  • ~OneToMany/LicenseScope

LicensedItem

Generic operations:

POST, GET, PUT, DELETE

Related objects:

  • ~OneToMany/License

  • ~Includes/LicensedItem

  • ~ManyToMany/ProductPackage

LicenseScope

Generic operations: POST, GET, PUT, DELETE

Related objects:

  • ~ManyToOne/License

LicenseMetadata

Generic operations: POST, GET, PUT, DELETE

Related objects:

  • ~ManyToOne/License

ProductPackage

Generic operations: POST, GET, PUT, DELETE

Use a product package to grant licenses to an organization

Grants licenses to an organization.

POST /graph/ProductPackage[@id='PP_ID']?operation=InitializeOrganizationLicenses

Parameters:

Parameter In Type Required
product package selector: Selects a product package containing items for which licenses are granted path Graph Selector true
ownerOrganizationId: The id of the organization to own the granted licenses query or form UUID false
licensedItemCount: The number of license seats granted query or form int false
validFrom: The license validity period start time query or form ISO date false
validUntil: The license validity period end time query or form ISO date false
initializeForProfileGroupId: The id of a group, licenses are granted to the members of this group query or form UUID false
entitlementId: The id of the entitlement where the licenses are added query or form UUID false
externalReference: The reference to an external entity related to the granted licenses, for example, an order number query or form string false
clientData: A JSON string for any data specified by the caller when creating licenses query or form JSON string false

Use a product package to grant licenses to a user

Grants licenses to a user, as represented by a profile.

POST /graph/ProductPackage[@id='PP_ID']?operation=InitializePersonalLicenses

Parameters:

Parameter In Type Required
initializeForProfileId: The id of the user to own the granted licenses query or form UUID true
licensedItemCount: The number of license seats granted query or form int false
validFrom: The license validity period start time query or form ISO date false
validUntil: The license validity period end time query or form ISO date false

Related objects:

  • LicensedItem

SeatCountCredit

Generic operations: POST, GET, PUT, DELETE

Related objects:

  • ~ManyToOne/License

UseTimeCredit

Generic operations: POST, GET, PUT, DELETE

Related objects:

  • ~ManyToOne/License