Administrators

APIDescription
GET Administrators

Get App Orchestration administrators.

POST Administrators

Create an administrator.

GET Administrators({id})

Get a single administrator by ID.

PUT Administrators({id})

Update an existing administrator.

DELETE Administrators({id})

Delete an administrator. See Deleting Objects.

PUT Administrators({id})/Validate

Validate the updated details for an administrator, before update. See Validation.

GET Administrators/Count

Get the number of App Orchestration administrators. See Object Counts.

GET Administrators/Current

Get information about the currently logged-in administrator.

POST Administrators/Validate

Validate an administrator before creation. See Validation.

Agents

APIDescription
GET Agents

Get the agents that are registered with App Orchestration.

GET Agents({id})

Get a single agent by ID.

GET Agents/Count

Get the number of agents that are registered with App Orchestration. See Object Counts.

Authorization

APIDescription
POST Authorization/AllowedOperations

Get allowed scoped authorization operations for the currently logged-in administrator.

Note that this API uses a POST verb because it takes an unbounded array as input, and may otherwise exceed the maximum input size for a GET operation.

GET Authorization/Information

Get authorization information for the currently logged-in administrator.

GET Authorization/Roles

Get the authorization roles available in the App Orchestration system.

GET Authorization/Roles/Count

Get the number of authorization roles available in the App Orchestration system.

GET Authorization/Scopes

Get the authorization scopes available in the App Orchestration system.

GET Authorization/Scopes/Count

Get the number of authorization scopes available in the App Orchestration system.

ComputeResources

APIDescription
GET ComputeResources

Get all compute resources.

POST ComputeResources

Create a new compute resource.

GET ComputeResources({id})

Get a compute resource by ID.

DELETE ComputeResources({id})

Delete a compute resource. See Deleting Objects.

PUT ComputeResources({id})

Updates a compute resource.

GET ComputeResources({id})/ClusterTree

Get the tree of available clusters on a compute resource.

Note: This API only works for Hyper-V and VSphere compute resources.

GET ComputeResources({id})/DeleteCascade

Get the objects for a compute resource that a potential delete would cascade to. See Deleting Objects.

GET ComputeResources({id})/HypervisorsInPool

Get the hypervisors that exist in a XenServer compute resource hypervisor pool.

Note: This API only works for XenServer compute resources.

GET ComputeResources({id})/HypervisorsInPool/Count

Get the number of hypervisors that exist in a XenServer compute resource hypervisor pool.

Note: This API only works for XenServer compute resources.

GET ComputeResources({id})/Networks

Get the list of networks available on a compute resource.

GET ComputeResources({id})/Networks/Count

Get the number of networks available on a compute resource.

GET ComputeResources({id})/ServiceOfferings

This API is not used.

GET ComputeResources({id})/ServiceOfferings/Count

This API is not used.

GET ComputeResources({id})/SessionMachineCatalogCompatibility

Get the list of session machine catalogs using auto-provisioning, along with information about whether the template and service offering configured for each catalog exists on the compute resource.

GET ComputeResources({id})/SessionMachineCatalogCompatibility/Count

Get the number of session machine catalogs using auto-provisioning.

GET ComputeResources({id})/SessionMachines

Get the list of session machines which have been provisioned on a compute resource.

GET ComputeResources({id})/SessionMachines/Count

Get the number of session machines which have been provisioned on a compute resource.

GET ComputeResources({id})/SessionMachines/TenantCounts

Get the number of tenants for each session machine that has been provisioned on the compute resource.

GET ComputeResources({id})/SharedNetworkCompatibility

Get information about whether a compute resource has the shared networks available which are required for provisioning.

GET ComputeResources({id})/Storage

Get the storage available on a compute resource.

GET ComputeResources({id})/Storage/Count

Get the number of storage devices available on a compute resource.

GET ComputeResources({id})/Templates

Get the templates (machines that can be used for creating session machine catalogs) on a compute resource.

GET ComputeResources({id})/Templates/Count

Get the number of templates (machines that can be used for creating session machine catalogs) on a compute resource.

GET ComputeResources({id})/TenantNetworkCompatibility

Get the list of tenants that are allowed to use a compute resource for provisioning private delivery groups, along with information about whether the tenant's networks are available on the compute resource.

GET ComputeResources({id})/TenantNetworkCompatibility/Count

Get the number of tenants that are allowed to use a compute resource for provisioning private delivery groups.

GET ComputeResources({id})/Tenants

Get the list of tenants that are associated with a compute resource, either directly or via having provisioned machines that reside on the compute resource.

GET ComputeResources({id})/Tenants/Count

Get the number of tenants that are associated with a compute resource, either directly or via having provisioned machines that reside on the compute resource.

PUT ComputeResources({id})/Validate

Validate the update for a compute resource. See Validation.

GET ComputeResources/Count

Get number of compute resources.

POST ComputeResources/Discover/Clusters

Discover information about a compute resource's clusters prior to adding it to the system.

Note: The verb is POST rather than GET so that the credentials are passed securely in the message body rather than in the query string.

POST ComputeResources/Discover/Information

Discover information about a compute resource prior to adding it to the system.

Note: The verb is POST rather than GET so that the credentials are passed securely in the message body rather than in the query string.

POST ComputeResources/Validate

Validate the details of a compute resource to create. See Validation.

DashboardData

APIDescription
GET DashboardData

Get dashboard data.

GET DashboardData/GuidedSetupData

Get dashboard guided setup data.

GET DashboardData/Notifications

Get the notifications displayed on the dashboard.

DataCenters

APIDescription
POST DataCenters

Create a new datacenter.

GET DataCenters

Get all datacenters.

PUT DataCenters({id})

Updates a datacenter.

DELETE DataCenters({id})

Delete a datacenter. See Deleting Objects.

GET DataCenters({id})

Get a single datacenter by ID.

GET DataCenters({id})/ComputeResources

Get the compute resources located in a datacenter.

GET DataCenters({id})/ComputeResources/Count

Get the number of compute resources located in a datacenter.

GET DataCenters({id})/DeleteCascade

Get the objects for a datacenter that a potential delete would cascade to. See Deleting Objects.

GET DataCenters({id})/DeliveryGroups

Get the delivery groups located in a datacenter.

GET DataCenters({id})/DeliveryGroups/Count

Get the number of delivery groups located in a datacenter.

GET DataCenters({id})/DeliveryGroups/OfferingCounts

Get the number of offerings for each delivery group the datacenter is associated with

GET DataCenters({id})/DeliveryGroups/SubscriptionCounts

Get the number of subscriptions for each delivery group the datacenter is associated with

GET DataCenters({id})/DeliveryGroups/TenantCounts

Get the number of tenants for each delivery group the datacenter is associated with

GET DataCenters({id})/DeliverySites

Get the delivery sites located in a datacenter.

GET DataCenters({id})/DeliverySites/Count

Get the number of delivery sites located in a datacenter.

GET DataCenters({id})/DeliverySites/TenantCounts

Get the number of tenants for each delivery site the datacenter is associated with

GET DataCenters({id})/RequiredCapacity

Get the capacity required in a datacenter to meet the desired capacity of all delivery groups in that datacenter.

GET DataCenters({id})/SessionMachines

Get the session machines located in a datacenter.

GET DataCenters({id})/SessionMachines/Count

Get the number of session machines located in a datacenter.

GET DataCenters({id})/SessionMachines/TenantCounts

Get the number of tenants for each session machine the datacenter is associated with

GET DataCenters({id})/StoreFrontServerGroups

Get the StoreFront server groups located in a datacenter.

GET DataCenters({id})/StoreFrontServerGroups/Count

Get the number of StoreFront server groups located in a datacenter.

GET DataCenters({id})/StoreFrontServerGroups/TenantCounts

Get the number of tenants for each StoreFront server group the datacenter is associated with

GET DataCenters({id})/Tenants

Get the tenants who have at least one location user group using this datacenter as either primary or backup.

GET DataCenters({id})/Tenants/Backup

Get the tenants who have at least one location user group using this datacenter as backup.

GET DataCenters({id})/Tenants/Backup/Count

Get the number of tenants who have at least one location user group using this datacenter as backup.

GET DataCenters({id})/Tenants/Count

Get the number of tenants who have at least one location user group using this datacenter as either primary or backup.

GET DataCenters({id})/Tenants/Primary

Get the tenants who have at least one location user group using this datacenter as primary.

GET DataCenters({id})/Tenants/Primary/Count

Get the number of tenants who have at least one location user group using this datacenter as primary.

PUT DataCenters({id})/Validate

Validate the update for a datacenter. See Validation.

GET DataCenters/Count

Get number of datacenters.

POST DataCenters/Validate

Validate the details of a datacenter to create. See Validation.

DeliveryControllers

APIDescription
GET DeliveryControllers

Get all delivery controllers.

GET DeliveryControllers({id})

Get a single delivery controller by ID.

PUT DeliveryControllers({id})

Updates a delivery controller.

DELETE DeliveryControllers({id})

Delete a delivery controller. This will not cascade to any other objects.

GET DeliveryControllers/Count

Get number of delivery controllers.

DeliveryGroups

APIDescription
GET DeliveryGroups

Get all delivery groups.

PUT DeliveryGroups

Simultaneously create new delivery groups, edit existing delivery groups, and delete existing delivery groups.

GET DeliveryGroups({id})

Get a single delivery group by ID.

DELETE DeliveryGroups({id})

Delete a delivery group. See Deleting Objects.

GET DeliveryGroups({id})/DeleteCascade

Get the objects for a delivery group that a potential delete would cascade to. See Deleting Objects.

GET DeliveryGroups({id})/DeliverySites

Get the delivery sites hosting a delivery group.

Note: Multiple delivery sites may be required for a delivery group when its size exceeds the remaining capacity in one delivery group.

GET DeliveryGroups({id})/DeliverySites/Count

Get the number delivery sites hosting a delivery group.

Note: Multiple delivery sites may be required for a delivery group when its size exceeds the remaining capacity in one delivery group.

GET DeliveryGroups({id})/OfferingReferences

Get offerings associated with a delivery group. An offering is considered to be associated with a delivery group if the offering IsolationMode is SharedDeliveryGroup, and the delivery group is compatible with the offering. This means that all current and future tenants who subscribe to the offering will have their user sessions hosted on the delivery group.

GET DeliveryGroups({id})/Offerings

Get offerings associated with a delivery group. An offering is considered to be associated with a delivery group if the offering IsolationMode is SharedDeliveryGroup, and the delivery group is compatible with the offering. This means that all current and future tenants who subscribe to the offering will have their user sessions hosted on the delivery group.

Note: if all you need are offering references, the GET DeliveryGroups({id})/OfferingReferences API will perform much better.

GET DeliveryGroups({id})/Offerings/Count

Get offerings associated with a delivery group. An offering is considered to be associated with a delivery group if the offering IsolationMode is SharedDeliveryGroup, and the delivery group is compatible with the offering. This means that all current and future tenants who subscribe to the offering will have their user sessions hosted on the delivery group.

GET DeliveryGroups({id})/RequiredCapacity

Get the list of required items to meet the desired capacity of the delivery group.

GET DeliveryGroups({id})/SessionMachines

Get the session machines in a delivery group.

GET DeliveryGroups({id})/SessionMachines/Count

Get the number of session machines in a delivery group.

GET DeliveryGroups({id})/SubscriptionReferences

Get references to subscriptions hosted on a delivery group.

GET DeliveryGroups({id})/Subscriptions

Get subscriptions hosted on a delivery group.

Note: if all you need are subscription references, the GET DeliveryGroups({id})/SubscriptionReferences API will perform much better.

GET DeliveryGroups({id})/Subscriptions/Count

Get number of subscriptions hosted on a delivery group.

GET DeliveryGroups({id})/TenantReferences

Get references to all tenants using a delivery group.

GET DeliveryGroups({id})/Tenants

Get the list of all tenants using a delivery group.

Note: if all you need are tenant references, the GET DeliveryGroups({id})/TenantReferences API will perform much better.

GET DeliveryGroups({id})/Tenants/Count

Get the number of tenants using a delivery group.

GET DeliveryGroups/Compatible

Get delivery groups compatible with datacenter, catalogs, tenant, and isolation mode.

GET DeliveryGroups/Count

Get number of delivery groups.

GET DeliveryGroups/TenantCounts

Get number of tenants for each delivery group.

PUT DeliveryGroups/Validate

Validate the simultaneous edits for multiple delivery groups. See Validation.

DeliverySites

APIDescription
GET DeliverySites

Get all delivery sites.

POST DeliverySites

Create a new delivery site.

GET DeliverySites({id})

Get a single delivery site by ID.

PUT DeliverySites({id})

Updates a delivery site.

DELETE DeliverySites({id})

Delete a delivery site. See Deleting Objects.

GET DeliverySites({id})/DeleteCascade

Get the objects for a delivery site that a potential delete would cascade to. See Deleting Objects.

GET DeliverySites({id})/DeliveryControllers

Get delivery controllers for a delivery site.

GET DeliverySites({id})/DeliveryControllers/Count

Get the number of delivery controllers for a delivery site.

GET DeliverySites({id})/DeliveryGroups

Get the delivery groups located in a delivery site.

GET DeliverySites({id})/DeliveryGroups/Count

Get the number of delivery groups located in a delivery site.

GET DeliverySites({id})/DeliveryGroups/OfferingCounts

Get the number of offerings associated with each delivery group in the delivery site. An offering is considered to be associated with a delivery group if the offering IsolationMode is SharedDeliveryGroup, and the delivery group is compatible with the offering. This means that all current and future tenants who subscribe to the offering will have their user sessions hosted on the delivery group.

GET DeliverySites({id})/DeliveryGroups/SubscriptionCounts

Get the number of subscriptions associated with each delivery group in the delivery site.

GET DeliverySites({id})/DeliveryGroups/TenantCounts

Get the number of tenants associated with each delivery group in the delivery site.

GET DeliverySites({id})/SessionMachines

Get the session machines in a delivery site.

GET DeliverySites({id})/SessionMachines/Count

Get the number of session machines in a delivery site.

GET DeliverySites({id})/SessionMachines/TenantCounts

Get the number of tenants associated with each session machine in the delivery site.

GET DeliverySites({id})/Subscriptions

Get subscriptions hosted on a delivery site.

GET DeliverySites({id})/Subscriptions/Count

Get number of subscriptions hosted on a delivery site.

GET DeliverySites({id})/TenantReferences

Get references to all tenants using a delivery site.

GET DeliverySites({id})/Tenants

Get the list of all tenants using a delivery site.

Note: if all you need are tenant references, the GET DeliverySites({id})/TenantReferences API will perform much better.

GET DeliverySites({id})/Tenants/Count

Get the number of tenants using a delivery site.

PUT DeliverySites({id})/Validate

Validate the update for a delivery site. See Validation.

POST DeliverySites/Aggregate

Aggregate an existing delivery site into StoreFront sites for tenants.

POST DeliverySites/Aggregate/Validate

Validate the details for aggregating an existing delivery site into StoreFront sites for tenants. See Validation.

GET DeliverySites/Count

Get number of delivery sites.

POST DeliverySites/Discover/AggregationData

Discover details of a delivery site that is going to be aggregated into StoreFront sites for tenants.

GET DeliverySites/TenantCounts

Get number of tenants for each delivery site.

POST DeliverySites/Validate

Validate the details of a delivery site to create. See Validation.

Deployment

APIDescription
GET Deployment

Get information about the deployment of App Orchestration.

POST Deployment/UpgradeDatabase

Upgrade the App Orchestration deployment to the latest known version of the database schema.

Domains

APIDescription
GET Domains

Get all domains.

POST Domains

Create a new domain.

GET Domains({id})

Get a single domain by ID.

PUT Domains({id})

Updates a domain.

DELETE Domains({id})

Delete a domain. See Deleting Objects.

GET Domains({id})/DeleteCascade

Get the objects for a domain that a potential delete would cascade to. See Deleting Objects.

GET Domains({id})/TenantReferences

Get references to all tenants using a domain.

GET Domains({id})/Tenants

Get the list of all tenants using a domain.

Note: if all you need are tenant references, the GET Domains({id})/TenantReferences API will perform much better.

GET Domains({id})/Tenants/Count

Get number of tenants using a domain.

PUT Domains({id})/Validate

Validate the update for a domain. See Validation.

GET Domains/Count

Get number of domains.

POST Domains/Validate

Validate the details of a domain to create. See Validation.

EchoAcceptLanguage

APIDescription
GET EchoAcceptLanguage

Echoes the client's "Accept-Language" header, in client-preference order.

This API is helpful if the client is a Javascript app running in a browser; it allows the app to find the user's language preferences configured within the browser. This API is also useful to "ping" the web service to ensure that it is up and running.

GlobalSettings

APIDescription
PUT GlobalSettings

Update global settings.

GET GlobalSettings

Get global settings.

POST GlobalSettings

Create the initial, first-time-use global settings.

POST GlobalSettings/EnableAutoProvisioning

Enable automatic, integrated provisioning of session machines.

This operation must be done one time before using integrated provisioning, but remains in effect for the lifetime of the App Orchestration deployment.

POST GlobalSettings/EnableAutoProvisioning/Validate

Validation of the details for enabling automatic, integrated provisioning of session machines. See Validation.

PUT GlobalSettings/Validate

Validation of an update for global settings. See Validation.

POST GlobalSettings/Validate

Validation of the initial, first-time-use global settings. See Validation.

Icons

APIDescription
GET Icons({id})

Get icons known by the system.

Logout

APIDescription
POST Logout

Log out of the API, forcing the current session to terminate.

MachineDetails

APIDescription
GET MachineDetails

Get details of all machines (session machines, delivery controllers, and StoreFront servers).

GET MachineDetails({id})

Get the details of a single machine by ID.

GET MachineDetails/Count

Get number of machines (session machines, delivery controllers, and StoreFront servers).

Offerings

APIDescription
GET Offerings

Get offerings.

POST Offerings

Create one or more new offerings.

GET Offerings({id})

Get a single offering by ID.

PUT Offerings({id})

Update an offering.

DELETE Offerings({id})

Delete an offering. See Deleting Objects.

GET Offerings({id})/CompatibleFileTypes

Get the file types compatible with an offering.

A file type is compatible with an offering if:

  • The offering is an application, not a desktop.
  • The file type is available on the machines in the offering's session machine catalog.
  • The file type's "Open" or "Edit" action defines an association with the offering's command line executable.
GET Offerings({id})/CompatibleFileTypes/Count

Get the number of file types compatible with an offering.

A file type is compatible with an offering if:

  • The offering is an application, not a desktop.
  • The file type is available on the machines in the offering's session machine catalog.
  • The file type's "Open" or "Edit" action defines an association with the offering's command line executable.
GET Offerings({id})/ConfiguredFileTypes

Get the file types configured for an offering.

GET Offerings({id})/ConfiguredFileTypes/Count

Get the number of file types configured for an offering.

GET Offerings({id})/DeleteCascade

Get the objects for an offering that a potential delete would cascade to. See Deleting Objects.

GET Offerings({id})/DeliveryGroups

Get the delivery groups used by subscriptions to an offering, or which may be used for future subscriptions to the offering.

GET Offerings({id})/DeliveryGroups/Count

Get the number of delivery groups used by subscriptions to an offering, or which may be used for future subscriptions to the offering.

GET Offerings({id})/OfferingsInSameScope

Find other offerings in the same scope as the specified offering. Offerings in the same scope will share delivery groups when users are subscribed.

For 'SharedDeliveryGroup' offerings, a scope is defined as:

  • The same session machine catalog.
  • The same isolation level.

For 'PrivateDeliveryGroup' and 'PrivateDeliverySite' offerings, a scope is defined as:

  • The same session machine catalog.
  • The same isolation level.
  • Compatible with the tenant (i.e. does not use Advanced Access Control or other settings that are not supported by the tenant's configuration).

Note that the offering specified is not included in the results.

GET Offerings({id})/OfferingsInSameScope/Count

Get the number of other offerings in the same scope as the specified offering. Offerings in the same scope will share delivery groups when users are subscribed.

For 'SharedDeliveryGroup' offerings, a scope is defined as:

  • The same session machine catalog.
  • The same isolation level.

For 'PrivateDeliveryGroup' and 'PrivateDeliverySite' offerings, a scope is defined as:

Note that the offering specified is not included in the results.

GET Offerings({id})/Subscriptions

Get subscriptions to an offering.

GET Offerings({id})/Subscriptions/Count

Get the number of subscriptions to an offering.

GET Offerings({id})/SubscriptionsInSameScope

Get the subscriptions in the same scope as the specified offering. Subscriptions in the same scope share delivery groups.

For 'SharedDeliveryGroup' offerings, a scope is defined as:

  • The same session machine catalog.
  • The same isolation level.

For 'PrivateDeliveryGroup' and 'PrivateDeliverySite' offerings, a scope is defined as:

  • The same session machine catalog.
  • The same isolation level.
  • The same tenant.
GET Offerings({id})/SubscriptionsInSameScope/Count

Get the number of subscriptions in the same scope as the specified offering. Subscriptions in the same scope share delivery groups.

For 'SharedDeliveryGroup' offerings, a scope is defined as:

  • The same session machine catalog.
  • The same isolation level.

For 'PrivateDeliveryGroup' and 'PrivateDeliverySite' offerings, a scope is defined as:

  • The same session machine catalog.
  • The same isolation level.
  • The same tenant.
PUT Offerings({id})/Validate

Validate details to update an offering. See Validation.

POST Offerings/CompatibleTenants

Get the list of compatible tenants for an offering; i.e. those tenants which are allowed to subscribe to the offering.

Tenants are compatible with an offering if:

  • The offering does not require NetScaler Gateway, or the tenant's users connect via NetScaler Gateway.
  • The offering does not require Advanced Access Control, or the tenant uses Advanced Access Control.
POST Offerings/CompatibleTenants/Count

Get the number of compatible tenants for an offering; i.e. those tenants which are allowed to subscribe to the offering.

Tenants are compatible with an offering if:

  • The offering does not require NetScaler Gateway, or the tenant's users connect via NetScaler Gateway.
  • The offering does not require Advanced Access Control, or the tenant uses Advanced Access Control.
GET Offerings/Count

Get number of offerings.

POST Offerings/Validate

Validate details to create one or more new offerings. See Validation.

SessionMachineCatalogs

APIDescription
GET SessionMachineCatalogs

Get session machine catalogs.

POST SessionMachineCatalogs

Create a new session machine catalog.

GET SessionMachineCatalogs({id})

Get a single session machine catalog by ID.

PUT SessionMachineCatalogs({id})

Updates a session machine catalog.

DELETE SessionMachineCatalogs({id})

Delete a session machine catalog. See Deleting Objects.

GET SessionMachineCatalogs({id})/DeleteCascade

Get the objects for a session machine catalog that a potential delete would cascade to. See Deleting Objects.

GET SessionMachineCatalogs({id})/DeliveryGroups

Get the delivery groups associated with a session machine catalog.

GET SessionMachineCatalogs({id})/DeliveryGroups/Count

Get the number of delivery groups associated with a session machine catalog.

GET SessionMachineCatalogs({id})/DeliveryGroups/OfferingCounts

Get the number of offerings for each delivery group associated with the session machine catalog.

GET SessionMachineCatalogs({id})/DeliveryGroups/SubscriptionCounts

Get the number of subscriptions for each delivery group associated with the session machine catalog.

GET SessionMachineCatalogs({id})/DeliveryGroups/TenantCounts

Get the number of tenants for each delivery group associated with the session machine catalog.

GET SessionMachineCatalogs({id})/DiscoveredApplications

Get the discovered applications on the machines in the session machine catalog, which are available for creating offerings.

GET SessionMachineCatalogs({id})/DiscoveredApplications/Count

Get the number of discovered applications on the machines in the session machine catalog, which are available for creating offerings.

POST SessionMachineCatalogs({id})/IncrementVersion

Increment the version of a session machine catalog, which causes the session machines in the catalog to begin an update process.

POST SessionMachineCatalogs({id})/IncrementVersion/Validate

Validate the details for incrementing the version of a session machine catalog. See Validation.

GET SessionMachineCatalogs({id})/Offerings

Get offerings associated with a session machine catalog.

GET SessionMachineCatalogs({id})/Offerings/Count

Get the number of offerings associated with a session machine catalog.

GET SessionMachineCatalogs({id})/RequiredCapacity

Get the list of required items to meet the desired capacity of all delivery groups associated with a session machine catalog.

GET SessionMachineCatalogs({id})/SessionMachines

Get the session machines in a session machine catalog.

POST SessionMachineCatalogs({id})/SessionMachines

Create new session machines within a session machine catalog.

GET SessionMachineCatalogs({id})/SessionMachines/Count

Get the number of session machines in a session machine catalog.

GET SessionMachineCatalogs({id})/SessionMachines/TenantCounts

Get the number of tenants for each session machine contained in the session machine catalog.

POST SessionMachineCatalogs({id})/SessionMachines/Validate

Validate the details for creating new session machines within a session machine catalog. See Validation.

GET SessionMachineCatalogs({id})/Subscriptions

Get subscriptions associated with a session machine catalog.

GET SessionMachineCatalogs({id})/Subscriptions/Count

Get the number of subscriptions associated with a session machine catalog.

PUT SessionMachineCatalogs({id})/Validate

Validate the update for a session machine catalog. See Validation.

GET SessionMachineCatalogs/Count

Get number of session machine catalogs.

POST SessionMachineCatalogs/Validate

Validate the details of a session machine catalog to create. See Validation.

SessionMachines

APIDescription
GET SessionMachines

Get all session machines.

GET SessionMachines({id})

Get a single session machine by ID.

DELETE SessionMachines({id})

Delete a session machine. See Deleting Objects.

Note: the session machine will attempt to drain user sessions prior to deletion. If the session machine was part of a delivery group, another session machine will be immediately allocated to the delivery group to maintain the desired capacity.

POST SessionMachines({id})/CompleteUpdate

Informs App Orchestration that the administrator has finished manually intervening in the update process for the session machine. The machine will be considered to be fully updated to the latest version of the session machine catalog, and will be returned to fully functional status.

POST SessionMachines({id})/Drain

Drain and delete a session machine.

The session machine will first drain all user sessions, then will automatically be deleted. If the session machine was part of a delivery group, another session machine will be immediately allocated to the delivery group to maintain the desired capacity.

GET SessionMachines({id})/Subscriptions

Get subscriptions for which a user session may be launched on a given session machine.

GET SessionMachines({id})/Subscriptions/Count

Get the number of subscriptions for which a user session may be launched on a given session machine.

GET SessionMachines({id})/TenantReferences

Get references to all tenants whose users may use a session machine. Note: if the session machine is statically allocated to a user, this API may not reflect the actual availability of the machine, as only the original user may access the machine regardless of whether the delivery group is shared or private.

GET SessionMachines({id})/Tenants

Get the list of all tenants whose users may use a session machine. Note: if the session machine is statically allocated to a user, this API may not reflect the actual availability of the machine, as only the original user may access the machine regardless of whether the delivery group is shared or private.

Note: if all you need are tenant references, the GET SessionMachines({id})/TenantReferences API will perform much better.

GET SessionMachines({id})/Tenants/Count

Get the number of tenants whose users may use a session machine. Note: if the session machine is statically allocated to a user, this API may not reflect the actual availability of the machine, as only the original user may access the machine regardless of whether the delivery group is shared or private.

GET SessionMachines/Count

Get the number of session machines.

StoreFrontServerGroups

APIDescription
GET StoreFrontServerGroups

Get StoreFront server groups.

POST StoreFrontServerGroups

Create a new StoreFront server group.

GET StoreFrontServerGroups({id})

Get a single StoreFront server group by ID.

PUT StoreFrontServerGroups({id})

Update a StoreFront server group.

DELETE StoreFrontServerGroups({id})

Delete a StoreFront server group. See Deleting Objects.

GET StoreFrontServerGroups({id})/DeleteCascade

Get the objects for a StoreFront server group that a potential delete would cascade to. See Deleting Objects.

GET StoreFrontServerGroups({id})/StoreFrontServers

Get the StoreFront servers in a StoreFront server group.

GET StoreFrontServerGroups({id})/StoreFrontServers/Count

Get the number of StoreFront servers in a StoreFront server group.

GET StoreFrontServerGroups({id})/TenantReferences

Get references to all tenants using a StoreFront server group.

GET StoreFrontServerGroups({id})/Tenants

Get the list of all tenants using a StoreFront server group.

Note: if all you need are tenant references, the GET StoreFrontServerGroups({id})/TenantReferences API will perform much better.

GET StoreFrontServerGroups({id})/Tenants/Count

Get the number of tenants using a StoreFront server group.

Note: if all you need are tenant references, the GET StoreFrontServerGroups({id})/TenantReferences API will perform much better.

PUT StoreFrontServerGroups({id})/Validate

Validate the update for a StoreFront server group. See Validation.

GET StoreFrontServerGroups/Count

Get number of StoreFront server groups.

GET StoreFrontServerGroups/TenantCounts

Get the number of tenants for each StoreFront server group.

POST StoreFrontServerGroups/Validate

Validate the details of a StoreFront server group to create. See Validation.

StoreFrontServers

APIDescription
GET StoreFrontServers

Get all StoreFront servers.

GET StoreFrontServers({id})

Get a single StoreFront server by ID.

PUT StoreFrontServers({id})

Update a StoreFront server.

DELETE StoreFrontServers({id})

Delete a StoreFront server. See Deleting Objects. Note: this delete will not cause any cascaded deletes.

GET StoreFrontServers/Count

Get number of StoreFront servers.

Subscriptions

APIDescription
GET Subscriptions

Get all subscriptions.

POST Subscriptions

Create new subscriptions.

Note: A subscription ties a tenant to an offering, with a list of users. When attempting to create a subscription for a tenant and offering where a subscription already exists, the specified list of users is added to the existing subscription.

GET Subscriptions({id})

Get a single subscription by ID.

PUT Subscriptions({id})

Update an existing subscription.

DELETE Subscriptions({id})

Delete a subscription. This deletion will not cascade to any other objects.

PUT Subscriptions({id})/Validate

Validate details for updating an existing subscription. See Validation.

GET Subscriptions/Count

Get number of subscriptions.

POST Subscriptions/Validate

Validate details for subscriptions to be created. See Validation.

Tasks

APIDescription
GET Tasks

Get all task records.

GET Tasks({id})

Get details of a single task by ID.

POST Tasks({id})/Cancel

Cancel a task. This stops a task from executing, which is similar to an "induced error". Other tasks will be blocked until the task is retried, or the desired state is modified so that the task is no longer needed.

See DesiredState.

POST Tasks({id})/Retry

Retry a task. This starts a failed or cancelled task over. Some steps that completed successfully may be performed again, but this will be done in a safe manner to ensure there is no duplicated configuration.

POST Tasks/ClearHistory

Clear all task history.

GET Tasks/Count

Get the number of task records.

Tenants

APIDescription
GET Tenants

Get all tenants.

POST Tenants

Import a new tenant. The tenant must already exist in Active Directory.

GET Tenants({id})

Get a single tenant by ID.

PUT Tenants({id})

Update the details of a tenant.

DELETE Tenants({id})

Delete a tenant. See Deleting Objects.

GET Tenants({id})/AvailableDataCenters

Get the list of all datacenters available for use by a tenant.

GET Tenants({id})/AvailableDataCenters/Count

Get the number of datacenters available for use by a tenant.

GET Tenants({id})/CompatibleOfferings

Get compatible offerings for a tenant; i.e. those offerings which the tenant is allowed to subscribe.

GET Tenants({id})/CompatibleOfferings/Count

Get the number of compatible offerings for a tenant; i.e. those offerings which the tenant is allowed to subscribe.

GET Tenants({id})/DeleteCascade

Get the objects for a tenant that a potential delete would cascade to. See Deleting Objects.

GET Tenants({id})/DeliveryGroups

Get the delivery groups in use by a tenant. This includes shared delivery groups which the tenant's users have access to.

PUT Tenants({id})/DeliveryGroups

Simultaneously create new delivery groups, edit existing delivery groups, and delete existing delivery groups for a tenant.

GET Tenants({id})/DeliveryGroups({deliveryGroupId})/OfferingReferences

Get offerings associated with a delivery group. An offering is considered to be associated with a delivery group if the offering IsolationMode is SharedDeliveryGroup, and the delivery group is compatible with the offering. This means that all current and future tenants who subscribe to the offering will have their user sessions hosted on the delivery group.

GET Tenants({id})/DeliveryGroups({deliveryGroupId})/SubscriptionReferences

Get references to subscriptions hosted on a delivery group.

GET Tenants({id})/DeliveryGroups/Count

Get the number of delivery groups in use by a tenant. This includes shared delivery groups which the tenant's users have access to.

GET Tenants({id})/DeliveryGroups/OfferingCounts

Get the number of offerings available to any tenant, which are associated with each of the delivery groups that are in use by the specified tenant. This includes shared delivery groups which the tenant's users have access to.

This differs from GET Tenants({id})/DeliveryGroups/TenantOfferingCounts in that this API returns information about all tenants using the delivery groups, while the other API returns information about only the given tenant.

GET Tenants({id})/DeliveryGroups/SubscriptionCounts

Get the number of subscriptions belonging to any tenant, which are associated with each of the delivery groups that are in use by the specified tenant. This includes shared delivery groups which the tenant's users have access to.

This differs from GET Tenants({id})/DeliveryGroups/TenantSubscriptionCounts in that this API returns information about all tenants using the delivery groups, while the other API returns information about only the given tenant.

GET Tenants({id})/DeliveryGroups/TenantCounts

Get the number of tenants using each of the delivery groups that are in use by a tenant. This includes shared delivery groups which the tenant's users have access to.

GET Tenants({id})/DeliveryGroups/TenantOfferingCounts

Get the number of offerings available to the specified tenant, which are associated with each of the delivery groups that are in use by the tenant. This includes shared delivery groups which the tenant's users have access to.

This differs from GET Tenants({id})/DeliveryGroups/OfferingCounts in that this API returns only information about the given tenant, while the other API returns information about all tenants using the delivery groups.

GET Tenants({id})/DeliveryGroups/TenantSubscriptionCounts

Get the number of subscriptions belonging to the specified tenant, which are associated with each of the delivery groups that are in use by the tenant. This includes shared delivery groups which the tenant's users have access to.

This differs from GET Tenants({id})/DeliveryGroups/SubscriptionCounts in that this API returns only information about the given tenant, while the other API returns information about all tenants using the delivery groups.

PUT Tenants({id})/DeliveryGroups/Validate

Validate the simultaneous edits for multiple delivery groups for a tenant. See Validation.

GET Tenants({id})/DeliverySites

Get the delivery sites in use by a tenant. This includes shared delivery sites that are hosting delivery groups which the tenant's users have access to.

GET Tenants({id})/DeliverySites/Count

Get the number of delivery sites in use by a tenant. This includes shared delivery sites that are hosting delivery groups which the tenant's users have access to.

GET Tenants({id})/GlobalDefaults

Get the subset of global settings that are read-only for tenant administrators.

GET Tenants({id})/LocationUserGroup({lugId})/DeleteCascade

Get the objects for a tenant location user group that a potential delete would cascade to. See Deleting Objects.

GET Tenants({id})/Offering({offeringId})/OfferingsInSameScope

Get offerings in the same scope of a given offering, and available to the given tenant. That is, offerings with the same isolation mode and the same session machine catalog, and compatible with the same tenant.

GET Tenants({id})/Offering({offeringId})/OfferingsInSameScope/Count

Get number of offerings in the same scope of a given offering, and available to the given tenant. That is, offerings with the same isolation mode and the same session machine catalog, and compatible with the same tenant.

GET Tenants({id})/Offering({offeringId})/SubscriptionsInSameScope

Get subscriptions in the same scope of the specific tenant for a given offering. That is, subscriptions with the same isolation mode in the same session machine catalog as the offering, and associated with the same tenant.

GET Tenants({id})/Offering({offeringId})/SubscriptionsInSameScope/Count

Get the number of subscriptions in the same scope of the specific tenant for a given offering. That is, subscriptions with the same isolation mode in the same session machine catalog as the offering, and associated with the same tenant.

GET Tenants({id})/Offerings({offeringId})

Get a single offering by ID.

GET Tenants({id})/Offerings({offeringId})/DeliveryGroups

Get the delivery groups used by a tenant's subscriptions to an offering, or which may be used for future subscriptions of the tenant to the offering.

If a delivery group does not exist in a datacenter used by the tenant, a fake delivery group object will be returned for the datacenter.

GET Tenants({id})/Offerings({offeringId})/DeliveryGroups/Count

Get the number of delivery groups used by a tenant's subscriptions to an offering, or which may be used for future subscriptions of the tenant to the offering.

If a delivery group does not exist in a datacenter used by the tenant, a fake delivery group object will be counted for the datacenter.

GET Tenants({id})/SessionMachines

Get the session machines in use by a tenant. This includes shared session machines in delivery groups which the tenant's users have access to.

GET Tenants({id})/SessionMachines/Count

Get the number of session machines in use by a tenant. This includes shared session machines in delivery groups which the tenant's users have access to.

GET Tenants({id})/StoreFrontServerGroups

Get the StoreFront server groups in use by a tenant.

GET Tenants({id})/StoreFrontServerGroups/Count

Get the number of StoreFront server groups in use by a tenant.

GET Tenants({id})/Subscriptions

Get subscriptions for a tenant.

POST Tenants({id})/Subscriptions

Create new subscriptions.

Note: A subscription ties a tenant to an offering, with a list of users. When attempting to create a subscription for a tenant and offering where a subscription already exists, the specified list of users is added to the existing subscription.

DELETE Tenants({id})/Subscriptions({subscriptionId})

Delete a tenant's subscription. This deletion will not cascade to any other objects.

GET Tenants({id})/Subscriptions({subscriptionId})

Get a single subscription by ID.

PUT Tenants({id})/Subscriptions({subscriptionId})/Validate

Validate details for updating an existing subscription. See Validation.

GET Tenants({id})/Subscriptions/Count

Get number of subscriptions for a tenant.

POST Tenants({id})/Subscriptions/Validate

Validate details for subscriptions to be created. See Validation.

PUT Tenants({id})/Validate

Validate the details for updating a tenant. See Validation.

GET Tenants/Count

Get the number of tenants.

POST Tenants/Validate

Validate the details of a tenant to import. See Validation.