canonical: https://jentic.com/apis/azure.com/hdinsightmanagementclient

# Microsoft Azure HDInsightManagementClient

Jentic publishes the only available OpenAPI specification for HDInsightManagementClient, keeping it validated and agent-ready. The HDInsight Management API manages HDInsight cluster applications - the optional add-on workloads that can be installed onto a running HDInsight cluster, such as third-party tools or custom services. This 2018-06-01-preview surface is focused specifically on the application lifecycle: list, get, create, and delete. Authentication is Azure AD OAuth2 against management.azure.com, and the resource is scoped under Microsoft.HDInsight/clusters/{clusterName}/applications.

## For AI agents

Install, list, and remove HDInsight cluster applications - the optional add-on workloads installed on a running HDInsight cluster.

## Scope

Does not provision HDInsight clusters, submit jobs, or manage Spark workloads - use for installing and removing cluster applications on existing HDInsight clusters only.

## Capabilities

- Install a new application onto an existing HDInsight cluster
- List all applications attached to a specific HDInsight cluster
- Retrieve the configuration and state of a single cluster application
- Remove an application from a cluster when it is no longer needed
- Verify that a cluster application has reached a terminal provisioning state

## Use cases

### Install a third-party application on a cluster

Use PUT on /subscriptions/.../clusters/{clusterName}/applications/{applicationName} to deploy an application onto an existing HDInsight cluster. The API accepts the application definition and returns 202 with an Azure-AsyncOperation header that callers poll until the application reaches Succeeded. Useful when standardising tooling installs across a fleet of HDInsight clusters.

Example prompt: PUT /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.HDInsight/clusters/analytics-prod/applications/jupyter-extension with the agreed application definition body and poll until provisioningState is Succeeded.

### Inventory of installed applications

List all applications on a cluster via GET /subscriptions/.../clusters/{clusterName}/applications. The response gives application name, kind, and current state, suitable for a fleet inventory dashboard. Useful when verifying that all clusters share the same baseline tooling.

Example prompt: GET /subscriptions/{sub}/resourceGroups/{rg}/providers/Microsoft.HDInsight/clusters/analytics-prod/applications and return the names and provisioning states of all installed applications.

### Remove an unused application

Delete a cluster application via DELETE /subscriptions/.../clusters/{clusterName}/applications/{applicationName}. The DELETE returns 202 and runs asynchronously while the application's resources are torn down. Useful at the end of a tooling deprecation cycle.

Example prompt: DELETE the 'old-jupyter' application from cluster 'analytics-prod' and poll the async operation until provisioning is removed.

### AI agent cluster tooling management via Jentic

An infrastructure agent uses Jentic to standardise tooling on every HDInsight cluster - listing what is installed, installing missing applications, and removing deprecated ones. Jentic resolves natural-language intents to the right Applications operation and injects the bearer token at execution time.

Example prompt: Use Jentic to search for 'install an application on an hdinsight cluster', load Applications_Create, and execute it for 'jupyter-extension' on cluster 'analytics-prod'.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications | List applications on a cluster |
| GET | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications/{applicationName} | Get a specific cluster application |
| PUT | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications/{applicationName} | Install an application on a cluster |
| DELETE | /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.HDInsight/clusters/{clusterName}/applications/{applicationName} | Delete an application from a cluster |

## Key resources

- **Applications** — List, get, create, and delete cluster applications scoped under a specific HDInsight cluster.

## Why Jentic

- **Setup:** Wiring HDInsight application management by hand means creating an Azure AD service principal, exchanging its secret for a bearer token against management.azure.com, and polling the Azure-AsyncOperation header that install and delete calls return. Through Jentic you install once, import HDInsight Management from the API Directory, store the service principal credentials once, and your agent calls it.
- **Permission scoping:** The cluster and application names travel in the URL path (/clusters/{clusterName}/applications/{applicationName}), so a rule can pin your agent to listing and reading applications on named clusters. You choose the operations it may call, so deleting a cluster application is not included unless you add it.
- **Credential handling:** Your Azure service principal credentials are stored once, encrypted, by your own Jentic One instance and exchanged for a scoped Azure AD bearer token at execution time. The client secret never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'install an application on an hdinsight cluster' or 'list cluster applications', and Jentic returns the matching Applications operation with its input schema so the agent calls the right ARM endpoint without browsing Microsoft Learn.

## Related APIs

- **HDInsight Job Management** — Submits Hive, Pig, MapReduce, and Sqoop jobs to a running HDInsight cluster.
- **Azure Compute Management** — Manages the underlying VMs that HDInsight clusters run on.
- **Azure Databricks** — Spark-first analytics service on Azure with its own cluster and library APIs.

## FAQ

### Why is there no official OpenAPI spec for HDInsightManagementClient?

Microsoft Azure does not publish a stand-alone OpenAPI specification for the 2018-06-01-preview HDInsight applications surface. Jentic generates and maintains this spec from the Microsoft.HDInsight ARM surface so that AI agents and developers can call HDInsightManagementClient via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does this API use?

It uses Azure AD OAuth2 against management.azure.com, declared as the azure_auth security scheme. Through Jentic, your service principal credentials sit in the encrypted vault and are exchanged for a scoped bearer token at execution time.

### Does this API let me create a cluster?

No. This 2018-06-01-preview surface is scoped to cluster applications only - install, list, get, and delete add-on workloads on an existing cluster. To provision the cluster itself, use a more recent HDInsight Management API or ARM template that exposes the clusters resource.

### What are the rate limits?

Standard ARM throttles apply at the subscription level - about 12,000 reads and 1,200 writes per hour per subscription. PUT and DELETE on applications are long-running, so callers should poll the Azure-AsyncOperation header rather than retry the original request.

### How do I install a cluster application through Jentic?

Run jentic.search('install an application on an hdinsight cluster'), load the Applications_Create schema, and execute it with the subscription, resource group, cluster name, application name, and the application definition body. The PUT returns 202 and the async operation reports success once installation completes.

### Can I limit what my agent is allowed to do with the Azure HDInsight Management API?

Yes. Because you run Jentic One yourself, your own rules decide which of the four Applications operations your agent may call, so you can allow listing and reading cluster applications while withholding install (PUT) and delete unless you grant them. Since the cluster and application names travel in the URL path under /clusters/{clusterName}/applications/{applicationName}, a rule can pin the agent to named clusters and named applications. The Azure service principal credentials stay in your own instance and are exchanged for a scoped bearer token at execution time, so the agent only ever calls the operations you have approved.
