canonical: https://jentic.com/apis/azure.com/azure-network-management

# Microsoft Azure NetworkManagementClient

Jentic publishes the only available OpenAPI specification for NetworkManagementClient, keeping it validated and agent-ready. The Azure Network management API exposes 97 operations across the Microsoft.Network resource provider for managing virtual networks, subnets, network interfaces, public IP addresses, network security groups, load balancers, application gateways, route tables, ExpressRoute circuits, and VPN gateways. It supports the full lifecycle of Azure networking primitives - provisioning, configuration changes, peering setup, security rule updates, and traffic inspection - at subscription and resource group scope.

## For AI agents

Provision and manage Azure virtual networks, NSGs, load balancers, public IPs, application gateways, and ExpressRoute circuits via 97 ARM operations on the Microsoft.Network provider.

## Scope

Does not handle Azure Front Door, Traffic Manager, or DNS zone records - use for Microsoft.Network resource provisioning (VNets, NSGs, load balancers, ExpressRoute) only.

## Capabilities

- Provision virtual networks and subnets and attach network interfaces to virtual machines
- Configure network security groups with inbound and outbound rules to restrict traffic
- Allocate and assign static or dynamic public IP addresses to load balancers and NICs
- Create application gateways with backend pools, listeners, and HTTP routing rules
- Set up internal and external load balancers with health probes and load balancing rules
- Establish ExpressRoute circuits with peerings and authorisations for hybrid connectivity
- Inspect ARP and route tables on ExpressRoute circuits for connectivity troubleshooting

## Use cases

### Multi-Tier Application Networking

Build the network plane for a multi-tier web application - a virtual network with web, app, and database subnets, an application gateway in front of the web tier, network security groups locking traffic to expected ports, and a public IP for ingress. The 97 endpoints cover every primitive needed, from the VNet itself down to individual NSG rules. End-to-end provisioning of this topology takes around 10-20 ARM calls and completes in a few minutes.

Example prompt: Create a virtual network 'app-vnet' with three subnets, attach an NSG to each subnet allowing only the expected ports, and provision an application gateway with a public IP frontend

### Hybrid Connectivity with ExpressRoute

Connect an on-premises datacentre to Azure over ExpressRoute. The flow is: list available service providers and peering locations, create the ExpressRoute circuit, configure private and Microsoft peering, generate authorisations for partner organisations, and verify connectivity by inspecting the ARP and route tables. The API exposes circuit stats and peering state so an agent can confirm the link is up before VMs depend on it.

Example prompt: Create an ExpressRoute circuit with a 1 Gbps SKU at the London peering location, configure private peering with the supplied ASN and IP ranges, and confirm the circuit reports Provisioned status

### Network Security Hardening Audit

Audit and tighten network security across a subscription. List every network security group, inspect each rule, identify rules that allow inbound traffic from 0.0.0.0/0 on sensitive ports, and replace them with tighter CIDR-restricted rules. The flat list endpoints at subscription scope let an agent walk every NSG without enumerating resource groups individually, making this practical to run on a schedule.

Example prompt: List all NSGs in the subscription, identify rules allowing TCP/22 or TCP/3389 from Any source, and update each to restrict source to the corporate IP range

### AI Agent Cloud Networking Operator

An AI agent supporting a platform team can provision and inspect Azure networks through Jentic. The agent searches by intent ('create an azure virtual network'), Jentic returns the VirtualNetworks_CreateOrUpdate operation with its schema, and the agent executes the call with managed Azure credentials. The same flow handles NSG updates, public IP allocation, and load balancer reconfiguration without the agent learning the Microsoft.Network namespace.

Example prompt: Search Jentic for 'create an Azure virtual network', load the VirtualNetworks_CreateOrUpdate schema, and execute it with the supplied address space and subnet definitions

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Network/loadBalancers | List all load balancers in a subscription |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Network/networkInterfaces | List all network interfaces in a subscription |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Network/networkSecurityGroups | List all network security groups in a subscription |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Network/publicIPAddresses | List all public IP addresses in a subscription |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Network/applicationGateways | List all application gateways in a subscription |
| GET | /subscriptions/{subscriptionId}/providers/Microsoft.Network/expressRouteCircuits | List all ExpressRoute circuits in a subscription |
| POST | /subscriptions/{subscriptionId}/providers/Microsoft.Network/locations/{location}/CheckDnsNameAvailability | Check if a DNS name is available in a region |

## Key resources

- **VirtualNetworks** — Provision virtual networks and configure subnets and address spaces
- **NetworkSecurityGroups** — Manage NSGs and their inbound and outbound security rules
- **LoadBalancers** — Create and configure internal and external load balancers
- **ApplicationGateways** — Manage Layer 7 application gateways with WAF, listeners, and backend pools
- **PublicIPAddresses** — Allocate and assign static and dynamic public IP addresses
- **ExpressRouteCircuits** — Provision ExpressRoute circuits, peerings, and authorisations
- **NetworkInterfaces** — Create network interfaces and attach them to virtual machines
- **RouteTables** — Define user-defined routes for custom traffic steering

## Why Jentic

- **Setup:** Wiring the NetworkManagementClient by hand means acquiring an Azure AD token from login.microsoftonline.com, routing every call to management.azure.com with the correct api-version, and learning your way across a large Microsoft.Network namespace of VNets, NSGs, load balancers, and ExpressRoute. Through Jentic you install once, import NetworkManagementClient from the API Directory, store the Azure AD credential once, and your agent calls it.
- **Permission scoping:** This API puts the subscription id in the URL path (/subscriptions/{subscriptionId}/providers/Microsoft.Network/...), so a rule can pin your agent to one subscription. You choose the operations it may call, so destructive ones like deleting a network security group or a load balancer are not included unless you add them, letting the agent list and read while writes stay out.
- **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 'create an Azure virtual network' or 'list network security groups', and Jentic returns the matching operation with its input schema so the agent calls the right endpoint without learning the whole Microsoft.Network namespace.

## Related APIs

- **Azure DNS Management** — Manage Azure DNS zones and records alongside virtual network resources.
- **Azure Private DNS Management** — Manage private DNS zones linked to virtual networks created by this API.
- **Azure Network Admin** — Higher-level admin operations across the Microsoft.Network namespace.
- **Azure Monitor** — Collect metrics and logs from the network resources provisioned here.

## FAQ

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

Microsoft Azure does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call NetworkManagementClient 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 the Azure Network Management API use?

It uses Azure Active Directory OAuth 2.0 against https://management.azure.com/ with the user_impersonation scope. The caller needs Network Contributor or a custom role with Microsoft.Network/* permissions. Jentic stores service principal credentials encrypted and issues short-lived bearer tokens at execution time.

### Can I create a virtual network and its subnets through this API?

Yes. PUT to /subscriptions/{id}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{name} with the address space and subnet definitions in the request body. The call returns 201 with an Azure-AsyncOperation header you poll until the VNet reports Succeeded.

### What are the rate limits for the Azure Network Management API?

Azure Resource Manager applies subscription-level throttling at roughly 1,200 reads per hour and 1,200 writes per hour. Long-running provisioning operations return 202 Accepted with an Azure-AsyncOperation URL to poll for completion.

### How do I provision an application gateway through Jentic?

Run pip install jentic and search for 'create an azure application gateway'. Jentic returns the ApplicationGateways_CreateOrUpdate operation; load its schema and execute it with the listener, backend pool, and routing rule definitions.

### Does this API cover Azure Front Door or Traffic Manager?

No. NetworkManagementClient covers Microsoft.Network primitives (VNets, NSGs, load balancers, application gateways, ExpressRoute). Azure Front Door lives under Microsoft.Network/frontDoors in a separate namespace and Traffic Manager under Microsoft.Network/trafficManagerProfiles.

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

Yes. Because you run Jentic One self-hosted, your own rules decide which operations and credentials the agent may use. Since this API carries the subscription id in the URL path (/subscriptions/{subscriptionId}/providers/Microsoft.Network/...), you can pin the agent to a single subscription, and you choose exactly which operations it may call. That lets you allow read and list calls on virtual networks, NSGs, and load balancers while keeping destructive writes like deleting a network security group or a load balancer out unless you explicitly add them.
