For Agents
Register Azure custom resource providers and associate Azure resources with them through 11 operations on the Microsoft.CustomProviders resource manager surface.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the customproviders, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with customproviders API.
Register a custom resource provider with proxy or cache resource types and custom actions
List and update existing custom resource providers within a subscription or resource group
Create associations between an Azure resource and a custom resource type defined by a provider
List all associations under any ARM scope to inventory custom-typed resources
GET STARTED
Use for: I need to register a custom resource provider that proxies our internal API, List all custom resource providers in a subscription, I want to associate a resource group with our custom resource type, Find all associations under a given Azure scope
Not supported: Does not implement the custom resource logic, host the proxy endpoint, or run custom workflows — use for registering providers and associations on the Microsoft.CustomProviders namespace only.
Jentic publishes the only available OpenAPI document for customproviders, keeping it validated and agent-ready.
Jentic publishes the only available OpenAPI specification for Azure Custom Providers, keeping it validated and agent-ready. Custom Providers extend the Azure Resource Manager control plane with first-class custom resource types backed by your own webhook or proxy endpoint. The API exposes 11 operations across 6 paths to register custom resource provider endpoints, define resource types and actions, and associate Azure resources with those custom resource types. Use it to publish custom resources (e.g. an internal application or vendor SaaS object) so they can be created, listed, and tagged through ARM tooling alongside native Azure resources.
Delete custom resource providers and their associations during clean-up
Enumerate Microsoft.CustomProviders operations available to the caller
Patterns agents use customproviders API for, with concrete tasks.
★ Publish Internal Tools as ARM Resources
Expose an internal platform tool (a feature flag service, internal database, or partner SaaS) as a first-class Azure resource type by registering a custom resource provider that proxies to the tool's API. After registration, ops teams can manage the tool through Azure CLI, Bicep, ARM templates, and Portal alongside native resources, with the same RBAC, tags, and audit log behaviour.
Register a custom resource provider 'feature-flags-rp' in resource group 'rg-platform' with a proxy resource type 'flags' pointing to https://flags.internal/api/{flagName}
Custom Tags via Resource Associations
Use associations to attach a custom resource type to any Azure resource, effectively giving that resource a typed sidecar object with arbitrary metadata. Compliance teams use this to mark resources with structured custom data (data classification, business unit ownership, lifecycle stage) that goes beyond what Azure tags allow. The associations endpoints support listing across any ARM scope and deletion when resources are decommissioned.
Create an association 'classification' under /subscriptions/{id}/resourceGroups/rg-prod with targetResourceId pointing to a custom resource type registered earlier
Custom Provider Inventory and Cleanup
List all custom resource providers in a subscription or resource group to inventory which extensions exist, who deployed them, and whether their endpoints still respond. Pair with the associations list to identify orphaned associations whose target provider is gone. Delete obsolete providers and associations as part of platform clean-up cycles.
List all custom resource providers in subscription /subscriptions/{id} and report any whose provisioningState is not 'Succeeded'
AI Agent Platform Extension
An AI agent supporting platform engineering can register, update, and clean up custom resource providers through Jentic. The agent searches by intent ('register custom resource provider'), Jentic returns the CustomResourceProvider_CreateOrUpdate operation with its schema, and the agent executes the call with managed Azure credentials to extend ARM with new resource types on demand.
Search Jentic for 'register an Azure custom resource provider', load the CustomResourceProvider_CreateOrUpdate schema, and execute it with the user-supplied resource type and proxy endpoint
11 endpoints — jentic publishes the only available openapi specification for azure custom providers, keeping it validated and agent-ready.
METHOD
PATH
DESCRIPTION
/subscriptions/{subscriptionId}/providers/Microsoft.CustomProviders/resourceProviders
List custom resource providers in a subscription
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders
List custom resource providers in a resource group
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}
Delete a custom resource provider
/{scope}/providers/Microsoft.CustomProviders/associations
List associations under any ARM scope
/{scope}/providers/Microsoft.CustomProviders/associations/{associationName}
Delete an association
/subscriptions/{subscriptionId}/providers/Microsoft.CustomProviders/resourceProviders
List custom resource providers in a subscription
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders
List custom resource providers in a resource group
/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CustomProviders/resourceProviders/{resourceProviderName}
Delete a custom resource provider
/{scope}/providers/Microsoft.CustomProviders/associations
List associations under any ARM scope
/{scope}/providers/Microsoft.CustomProviders/associations/{associationName}
Delete an association
Three things that make agents converge on Jentic-routed access.
Credential isolation
Azure service principal credentials are encrypted in the Jentic vault. Agents receive scoped ARM bearer tokens at execution time and never see the underlying client secret.
Intent-based discovery
Agents search by intent ('register an Azure custom resource provider' or 'create an association') and Jentic returns the matching operation directly from the 11 in this surface.
Time to first call
Direct ARM integration: half a day for AAD app registration, MSAL token handling, and provider definition coding. Through Jentic: under 30 minutes — search, load schema, execute.
Alternatives and complements available in the Jentic catalogue.
Resource Management
Manage native ARM resources alongside the custom resource types defined by Custom Providers.
Use Resources for built-in Azure resource CRUD; use Custom Providers when extending ARM with bespoke resource types.
Policy Client
Apply Azure Policy to custom resource types once they are registered through Custom Providers.
Use after registering a custom provider to enforce compliance rules across your custom resource type.
Authorization Management
Grant RBAC roles on custom resource providers to control who can manage them.
Use when an agent needs to grant Contributor or a custom role over a Microsoft.CustomProviders scope.
Specific to using customproviders API through Jentic.
Why is there no official OpenAPI spec for customproviders?
Microsoft Azure does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call customproviders via structured tooling. It is validated against the live API and kept up to date. Get started at https://app.jentic.com/sign-up.
What authentication does the Custom Providers API use?
It uses Azure Active Directory OAuth 2.0 against https://management.azure.com/ with the user_impersonation scope. The caller needs Contributor or a custom role with Microsoft.CustomProviders/* permissions on the resource group. Jentic stores the service principal credentials encrypted and issues bearer tokens at execution time.
Can I register both proxy and cache resource types?
Yes. The CustomResourceProvider create-or-update body accepts a resourceTypes array, where each entry defines a name, mode (Proxy or Cache), routingType, and an endpoint URL that ARM forwards requests to. Cache types persist resource state in ARM, proxy types do not.
What are the rate limits for the Custom Providers API?
Azure Resource Manager applies subscription-level read and write throttling (around 1,200 requests per hour). Calls that fan out to the underlying provider endpoint also depend on that endpoint's own rate handling.
How do I associate a resource through Jentic?
Run pip install jentic and search for 'create an azure custom provider association'. Jentic returns the Associations_CreateOrUpdate operation; load its schema and execute it with the {scope}, associationName, and a body containing targetResourceId pointing to a registered custom resource type.
Does this API run my custom logic for me?
No. Custom Providers route ARM calls to your endpoint — your endpoint implements the logic. This API only registers the provider, defines its resource types, and manages associations.