canonical: https://jentic.com/apis/googleapis.com/vmwareengine

# Google VMware Engine API

The Google VMware Engine API programmatically manages dedicated VMware private clouds running natively on Google Cloud. It exposes private clouds, clusters, ESXi node types, networks, network peerings, HCX activation keys, DNS bindings, management DNS zones, NSX and vCenter credentials, and subnets so platform teams can script cluster provisioning, capacity changes, and network integration. It targets organizations running VMware workloads who need cloud control without changing the underlying hypervisor.

## For AI agents

Provision and manage VMware private clouds, clusters, and networks in Google Cloud so an agent can scale capacity, peer networks, and rotate credentials without console clicks.

## Scope

Does not handle in-guest VM management, vSphere-level operations, or workload migration off VMware - use for managing VMware Engine private clouds, clusters, and networking in Google Cloud only.

## Capabilities

- Provision and delete VMware private clouds with chosen node types and cluster sizes
- Add or remove ESXi clusters within a private cloud to scale capacity
- List supported node types and locations for capacity planning
- Create network peerings between VMware Engine and VPCs or on-prem environments
- Generate HCX activation keys to enable workload mobility into the private cloud
- Rotate NSX and vCenter administrator credentials safely
- Manage DNS bindings and management DNS zones that the private cloud depends on

## Use cases

### Automated VMware Private Cloud Provisioning

Platform teams provision VMware Engine private clouds from infrastructure-as-code by scripting the create-private-cloud, create-cluster, and create-network-peering calls in a defined order. The API exposes per-cluster node-type selection so capacity decisions are explicit, and long-running operations expose enough state for the IaC layer to wait safely before the next step. This replaces the manual console workflow that typically takes a platform engineer most of a day per environment.

Example prompt: Create a private cloud named prod-vmw with one cluster of three standard-72 nodes in us-central1-a

### Capacity Scaling for VMware Workloads

Operations teams scale VMware Engine capacity in response to demand by adding or removing clusters and resizing node counts within a cluster. The VMware Engine API exposes cluster-level operations and node-type listings so the scaling job can choose hardware that matches the workload profile. Long-running operations are observable so the orchestration code can wait for ACTIVE state before declaring success.

Example prompt: Add a fourth cluster of six nodes to the prod-vmw private cloud and wait for ACTIVE state

### Network Integration and Peering

Networking teams integrate VMware Engine private clouds with VPCs, on-prem datacenters, and other private clouds by managing network peerings and DNS bindings via the API. The peering endpoints expose state so the orchestration code can validate connectivity before workloads attempt to communicate. DNS binding endpoints let the team script private DNS resolution into the management network.

Example prompt: Create a network peering between the prod-vmw private cloud and a Shared VPC, then verify the peering is ACTIVE

### AI Agent VMware Operator

An AI agent integrated through Jentic responds to platform prompts like 'add capacity to the prod-vmw private cloud' by listing clusters, computing the deficit, and calling create or resize cluster operations. Because the API uses OAuth 2.0 with the cloud-platform scope, Jentic isolates the token in your Jentic One instance and exposes only a scoped reference to the agent.

Example prompt: Search Jentic for add a vmware cluster, load the schema, and call it on the named private cloud

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | /v1/{+name}/locations | List supported VMware Engine locations |
| POST | /v1/{+name}:grant | Grant access to a VMware Engine resource |
| POST | /v1/{+name}:repair | Repair a VMware Engine resource |
| GET | /v1/{+name}/operations | List long-running operations for a private cloud |

## Key resources

- **PrivateClouds** — Provision, list, update, and delete VMware Engine private clouds
- **Clusters** — Manage ESXi clusters within a private cloud, including node-type selection and resize
- **NetworkPeerings** — Create peerings between private clouds, VPCs, and on-prem networks
- **HcxActivationKeys** — Generate keys that enable HCX-based workload mobility into a private cloud
- **NodeTypes** — List the ESXi node types available per location for capacity planning
- **DnsBindings and ManagementDnsZoneBindings** — Configure private DNS resolution for the private cloud management plane

## Why Jentic

- **Setup:** Wiring the VMware Engine API by hand means setting up a Google service account, granting the cloud-platform scope, building the private-cloud and location resource names, and polling long-running provisioning operations yourself. Through Jentic you install once, import the VMware Engine API from the API Directory, store the service-account credential once, and your agent calls it.
- **Permission scoping:** VMware Engine carries the private-cloud and location resource name in the URL path (/v1/{name}:repair), so a rule can pin your agent to one private cloud or location: it can act on that resource and nothing else. You choose the operations it may call, so a repair or grant is not included unless you add it.
- **Credential handling:** Your VMware Engine service-account 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 a vmware private cloud' or 'add a cluster', and Jentic returns the matching VMware Engine v1 operation with its input schema, including node-type and location selectors, so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **VM Migration API** — Migrate VMware workloads off VMware to native Compute Engine; VMware Engine keeps them on VMware
- **Compute Engine API** — Manage native Compute Engine VMs alongside the VMware Engine private cloud
- **Cloud IAM API** — Grant the roles required to manage VMware Engine resources
- **Cloud DNS API** — Manage public and private DNS zones that VMware Engine private clouds depend on

## FAQ

### What authentication does the VMware Engine API use?

The VMware Engine API uses OAuth 2.0 with the https://www.googleapis.com/auth/cloud-platform scope. Through Jentic, the OAuth token is stored encrypted in your Jentic One instance and only a scoped reference is exposed to the agent at execution time.

### Can I scale a VMware Engine private cloud with the VMware Engine API?

Yes. Use the cluster create, update, and delete operations to add capacity, resize node counts, or remove clusters. Each call returns a long-running operation; poll GET /v1/{+name}/operations on the parent until done is true and the cluster reaches ACTIVE state.

### What are the rate limits for the VMware Engine API?

Default project quotas allow 600 requests per minute on control-plane operations and a smaller concurrent limit on long-running mutations like create-private-cloud and create-cluster. Higher quotas can be requested in the Google Cloud Console for production fleets.

### How do I create a network peering through Jentic with the VMware Engine API?

Install Jentic with pip install jentic, search for create vmware network peering, load the schema for the network peerings create operation, then call it with the parent private cloud, vmware-engine network, and the peer network. Verify the peering reaches ACTIVE state before sending traffic.

### Does the VMware Engine API expose HCX for workload mobility?

Yes. Generate an HCX activation key with the hcxActivationKeys create operation under a private cloud, then use it on-prem to register VMware workloads with HCX. Activation keys are scoped to a single private cloud and have a one-time use lifecycle.

### Why does my private cloud creation fail with quota errors?

VMware Engine enforces per-region node-type quotas in addition to standard request quotas. Confirm node-type availability in the target region with the node-types list endpoint, and request a quota increase in the Google Cloud Console if the requested cluster size exceeds your current allocation.

### Can I limit what my agent is allowed to do with the VMware Engine API?

Yes. Jentic One runs self-hosted, so your own rules decide which VMware Engine operations and credentials the agent may use. Because each call carries the private-cloud and location resource name in the URL path, a rule can pin the agent to one private cloud or location so it acts on that resource and nothing else. You also choose the exact operations it may call, so sensitive actions like repair or grant are not available unless you add them.
