06/03/2025 | News release | Distributed by Public on 06/03/2025 22:19
If you're familiar with PowerCLI, you probably love how easy it makes common administrative tasks across the VMware ecosystem. What if we revealed something exciting? There's a whole other level of power under the hood. It gives you direct access to every single API endpoint.
Say hello to the PowerCLI SDK!
It's already bundled with your PowerCLI installation - no extra downloads or setup required.
PowerCLI offers high-level cmdlets. It also includes automatically generated SDK modules for many of our major products. These products range from vSphere to NSX, SRM, and VMware Cloud Foundation (VCF). These SDKs give you one-to-one access to the API through PowerShell, enabling you to build custom, low-level automation with precision.
To see what SDKs are available in your environment, just run:
Get-Module -ListAvailable -Name "VMware.SDK*"
You'll see output like this:
Module.Type Version Name ExportedCommands
---------------------
Script 13.3.0 VMware.Sdk.Nsx.Policy {Connect-NsxServer, …}
Script 13.3.0 VMware.Sdk.Srm {Connect-SrmSdkServer, …}
Script 13.3.0 VMware.Sdk.Vcf.SddcManager {Connect-VcfSddcManagerServer, …}
…
Let's walk through a real example using the VMware.Sdk.Vcf.SddcManager module. This module exposes the full API of VMware Cloud Foundation (VCF) via PowerShell.
Import-Module VMware.Sdk.Vcf.SddcManager
Just like Connect-VIServer, the SDK comes with its own connect cmdlet:
Connect-VcfSddcManagerServer -Server sddc-1001.vsphere.local
Once connected, you'll see connection details, including access tokens - no need to handle tokens manually in future calls.
Let's say you want to list all workload domains in your VCF environment.
The API endpoint for this is:
GET /v1/domains
Do not construct a cURL request or raw HTTP call. Instead, you can discover and invoke the correct cmdlet directly in PowerShell.
Use Get-VcfSddcManagerOperation to search for available API operations:
Get-VcfSddcManagerOperation -Path "*/v1/domains" -Method Get
This will point you to the cmdlet you need:
Invoke-VcfGetDomains
$domainsResponse = Invoke-VcfGetDomains
$domainsResponse.Elements
And just like that, you've retrieved structured data about your workload domains. There's no need to write API wrappers. You also do not need to manually handle authentication headers.
The SDK cmdlets also include full help support:
Get-Help Invoke-VcfGetDomains -Full
You'll find usage examples, parameters, and links to the online API reference. This makes it easier than ever to learn and build as you go.
SDK modules are now available for many VMware products, including:
And the best part? They're automatically included with the latest versions of PowerCLI.
The PowerCLI SDK is a power-user's dream. It gives you access to the full API surface of VMware products using familiar PowerShell syntax. You have full control when building advanced automation with the SDK. It also allows integration with your CI/CD pipelines without leaving your terminal.
Ready to take PowerCLI to the next level?
Explore the SDK modules in your environment and start building with the APIs like a pro.
Pro Tip: Combine high-level PowerCLI cmdlets with SDK operations for the best of both worlds.
Got feedback or feature requests?
Let us know what APIs you'd love to see covered next - VCF Feature Requests Portal is waiting for you.
Happy automating!