canonical: https://jentic.com/apis/azure.com/azure-addons-resource-provider

# Microsoft Azure Azure Addons Resource Provider

The Azure Addons Resource Provider API manages Canonical Ubuntu Advantage support plans purchased through Azure as a third-party addon. It exposes the Microsoft.Addons resource provider operations for listing available support plan types, retrieving the current state of a plan in a subscription, and creating, updating, or deleting plan assignments. This is a control-plane API for governing third-party support entitlements alongside other Azure resources.

## For AI agents

Manage Canonical support plan addons attached to an Azure subscription, including listing available plan types and creating, retrieving, or deleting active plans. Supports the Microsoft.Addons resource provider control plane.

## Scope

Does not handle Microsoft support tickets, marketplace purchases, or VM-level patching - use for Canonical support plan assignment on Azure subscriptions only.

## Capabilities

- List the Canonical support plan types available to an Azure subscription
- Retrieve the current support plan assignment for a given provider and plan name
- Create or update a Canonical support plan assignment in a subscription
- Delete an active Canonical support plan from a subscription
- Discover all Microsoft.Addons resource provider operations exposed to the subscription

## Use cases

### Provision Canonical Ubuntu Advantage Support

Attach a Canonical Ubuntu Advantage support plan to an Azure subscription so that Ubuntu VMs running in that subscription receive Canonical-provided patching, kernel livepatch, and 24/7 support entitlements. The Addons Resource Provider exposes a single PUT to assign Essential or Standard plan types under the Canonical support provider, callable from infrastructure-as-code or an agent. Provisioning takes seconds; the plan then applies to all eligible Ubuntu workloads in the subscription.

Example prompt: Create a Canonical support plan with planTypeName=Standard under providerName=Canonical for subscription 1111-2222 via PUT /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/Canonical/supportPlanTypes/Standard.

### Audit Active Third-Party Support Entitlements

Read which Canonical support plans are currently assigned across a portfolio of Azure subscriptions to verify entitlement coverage during renewals or compliance reviews. The API returns the plan resource with its provisioning state so finance and operations teams can reconcile billing line items against active subscriptions. A single GET per subscription is enough to enumerate the assignment.

Example prompt: Retrieve the current Canonical Standard plan via GET /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/Canonical/supportPlanTypes/Standard and report its provisioningState.

### Deprovision Unused Support Plans

Cancel Canonical support plans on subscriptions that no longer run Ubuntu workloads to stop ongoing charges. The DELETE operation on the plan resource removes the assignment cleanly through the Microsoft.Addons resource provider, letting cost-management pipelines reclaim spend without portal access. This is typically driven by a tagging or usage report rather than ad-hoc human action.

Example prompt: Delete an unused Canonical Essential plan via DELETE /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/Canonical/supportPlanTypes/Essential.

### Agent-Driven Subscription Onboarding

When a Jentic agent provisions a new Azure landing zone for Ubuntu workloads, it calls the Addons Resource Provider as part of the bootstrap sequence to attach a Canonical support plan automatically. The agent enumerates available plan types via Operations_List, then issues the matching SupportPlanTypes_CreateOrUpdate call. This removes a manual portal step from every new subscription handoff.

Example prompt: List Microsoft.Addons operations, identify the SupportPlanTypes_CreateOrUpdate operation, and provision a Canonical Essential plan on the newly created subscription.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /providers/Microsoft.Addons/operations | List available Microsoft.Addons operations |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/{providerName}/supportPlanTypes | List Canonical support plans for the subscription |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/{providerName}/supportPlanTypes/{planTypeName} | Get a specific support plan assignment |
| PUT | /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/{providerName}/supportPlanTypes/{planTypeName} | Create or update a support plan assignment |
| DELETE | /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/{providerName}/supportPlanTypes/{planTypeName} | Delete a support plan assignment |

## Key resources

- **supportPlanTypes** — Create, read, update, and delete Canonical support plan assignments under a provider
- **supportProviders** — Lists the Canonical support plans available to a subscription
- **operations** — Discovery endpoint for all Microsoft.Addons resource provider actions

## Why Jentic

- **Setup:** Wiring the Azure Addons Resource Provider by hand means registering an Azure AD app, exchanging OAuth 2.0 tokens for management.azure.com, and building the Azure Resource Manager plumbing that polls create-or-update and honours throttling. Through Jentic you install once, import the Azure Addons Resource Provider from the API Directory, store the Azure AD credential once, and your agent calls it.
- **Permission scoping:** This API puts the subscription, support provider, and plan type in the URL path (for example /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/{providerName}/supportPlanTypes/{planTypeName}), so a rule can pin your agent to a specific provider such as Canonical. You choose the operations it may call, so ones like creating a billable support plan or deleting an active one are not included unless you add them.
- **Credential handling:** Your Azure AD credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'add a Canonical support plan to an Azure subscription' or 'check whether a support plan is active', and Jentic returns the matching SupportPlanTypes operation with its full request schema so the agent does not navigate the ARM provider docs.

## Related APIs

- **Microsoft Support** — Opens and tracks Microsoft-side support tickets, complementary to third-party Canonical plans.
- **Azure Consumption Management** — Reports usage and charges that include Canonical addon line items.
- **Azure Cost Management** — Cost reporting and budget control surface that surfaces addon spend at a portfolio level.

## FAQ

### What authentication does the Azure Addons Resource Provider API use?

Azure Active Directory OAuth 2.0 via the azure_auth scheme with the user_impersonation scope on https://management.azure.com/. Through Jentic, AAD client credentials sit in your Jentic One instance and the agent receives a bearer token at execution time, never a raw secret.

### Can I provision a Canonical support plan with this API?

Yes. Issue PUT /subscriptions/{subscriptionId}/providers/Microsoft.Addons/supportProviders/Canonical/supportPlanTypes/{planTypeName} with planTypeName set to Essential or Standard. The API returns the plan resource with its provisioningState once accepted.

### What are the rate limits for the Azure Addons Resource Provider API?

Calls share Azure Resource Manager subscription throttling, typically 12,000 reads and 1,200 writes per hour per subscription. Honour 429 responses and the Retry-After header; the spec does not declare per-endpoint quotas.

### How do I add a Canonical support plan through Jentic?

Search Jentic for "add canonical support plan azure", load the schema for SupportPlanTypes_CreateOrUpdate, then execute with subscriptionId, providerName=Canonical, and planTypeName. Run it through Jentic One, the self-hosted execution layer to get an API key.

### Which support providers are supported?

The 2017-05-15 spec only models Canonical (Ubuntu Advantage) as a support provider. Other vendors are not addressable through this resource provider, even though the path templates accept a {providerName} segment.

### Does this API affect billing?

Yes. Creating a support plan via PUT enrols the subscription in the chosen Canonical plan, which generates monthly charges visible in Azure Cost Management. Deleting the plan stops future charges; consult the Marketplace agreement for proration rules.

### Can I limit what my agent is allowed to do with the Microsoft Azure Addons Resource Provider API?

Yes. Because you run Jentic One yourself, your own rules decide which Microsoft.Addons operations the agent may call and which Azure AD credential it uses. This API puts the subscription, support provider, and plan type in the URL path, so you can pin the agent to a single provider such as Canonical and grant read-only operations like listing plan types or getting a plan's state while withholding the PUT that creates a billable support plan and the DELETE that cancels an active one. Those write operations are available to the agent only if you explicitly add them.
