Home > Blogs > VMware Developer Blog > Tag Archives: api

Tag Archives: api

Getting Started with vSphere’s API Explorer

Every time I talk to users, there’s always one consistent theme: learning to use vSphere’s APIs is difficult. With the new release of vSphere 6.5, we’ve taken aim at improving that experience with the API Explorer. The API Explorer allows users to connect to the API endpoint and then browse and interact with available REST based APIs and their calls. This includes available parameters, expected responses, what response status codes may mean, and much more. If you’ve happened to use the Managed Object Browser, or MOB, think of that… but on steroids!

Accessing the API Explorer

Accessing the API Explorer is incredibly easy. It’s available on any API endpoint whether that be a vCenter server (appliance or Windows based) or external PSC appliance. Browse to: https://vcenter.fqdn/apiexplorer

API Explorer Main Screen

First Look

After having loaded the API Explorer’s interface, it’s time to start looking around and seeing what’s available. There are two items that should jump out immediately, the login option and the “Select API” dropdown.

If you want to really interact with the API itself, you should log in. The login prompt accepts SSO based credentials, similar to what would be used to log into the vSphere client itself.

The “Select API” dropdown box allows the selection of available API. The APIs available on the endpoint are dependent upon the role the endpoint has.
Example: an External PSC appliance won’t have the same APIs and calls available to it as does the vCenter Server appliance.

Common APIs:

  • Appliance – handles calls to the underlying VMware appliance
  • CIS – Common Infrastructure Services, handles calls involving tagging
  • Content – handles calls involves the Content Library
  • vAPI – vSphere API, handles calls regarding the API endpoint
  • vCenter – handles calls to involving the vCenter

Browsing the API Explorer

Let’s take a look around the API Explorer now that we have our bearings.

With the vcenter API selected, expand the “GET /vcenter/cluster” operation.

API Explorer - Cluster Operations

On the above screen, we can see the path to make the call and the method. However, the API Explorer also gives some other information such as the expected response class, parameters and potential response messages. Clicking on those items expands and collapses additional information. Here’s some examples:

API Explorer Example - Response Class

API Explorer Example – Response Class

API Explorer Example - Cluster Filter Parameters

API Explorer Example – Cluster Filter Parameters

API Explorer Example - Response Messages

API Explorer Example – Response Messages

My favorite part is right below those areas, the “Try It Out!” button. Clicking on that button performs the operation directly within the browser. It then provides a bunch of information such as an example cURL statement, the request’s URL, as well as the request’s body, status code, and headers.

API Explorer Example - Try It Out

Conclusion

The API Explorer is a great way to orient to and discover vSphere’s REST based APIs. Not only does it provide lots of information and additional context around the API calls, it even helps users start making those calls.

What’s New with Developer and Automation Interfaces for vSphere 6.5?

VMworld Europe 2016 wrapped up last week and there’s been a lot of new and exciting products and features announced. One of the more exciting things that have been announced have been around the automation and development space.

As seen from the keynote in Barcelona (see about 35 minutes in), VMware is taking the developer and automation specialists seriously. In the new vSphere 6.5 release we are providing simplified and modern API interfaces and giving customers their choice of access with language bindings and automation tools to a fresh new modern set of APIs.

What’s New

VMware vCenter has received some new extensions to its REST based API. In vSphere 6.0, this API set provides the ability to manage the Content Library and Tagging but now also includes the ability to manage and configure the vCenter Server Appliance (VCSA) based functionality and basic VM management.

REST API Documentation

VCSA API

The VCSA’s new and simplified REST based API will consistently be able to manage things like how to access the appliance, managing user accounts, checking on the health of the appliance or even the services of the appliance itself, networking configurations like firewall rules or proxy settings, being able to provide a file based backup or restore of appliance and even managing system settings like NTP or just checking the uptime or version.
 

Virtual Machine API

Additional functionality has been added for handling the management of VMs, using the range of interfaces (including REST) you will be able to read information, create, update and even delete VMs, as well as setting their power state and working with the hardware. Some example hardware tasks would be connecting the CD-ROM, updating the RAM allotment, adding a network adapter, removing a hard disk, and so forth.

All of this not just available via the developer and automation tooling but also simplified to make sure they are easily discoverable and the use of strong defaults means you only specify the information that is needed, a simple example of this means that to create a VM is now as easy as 12 lines of JSON and a single API call.

Discover the APIs with the new API Explorer

What’s the best way to learn about these awesome new APIs? How about checking out the API Explorer that lives on the vCenter. It’s available on the vCenter server at the following URL: http://*vCenter URL*/apiexplorer Once connected, the API Explorer will display information about the numerous endpoints available in order to easily understand the API models. The API Explorer also allows users to expand each API call and check out the required fields, understand the request body, see the available filter information, as well as a list of response messages. One of my favorite capabilities, the ability to click a button and trying out the calls live!

vSphere API Explorer

Process Improvements

Process Improvements for Developer and Automation Interfaces
Due to how the above APIs are defined, we also have the ability to greatly improve our turnaround time on providing resources! This process allows us to provide a number of developer and automation based tool integrations out of the box.

The SDK with new improved, simplified samples will include Java, .NET, Python, Ruby, and Perl.

This also allows our automation tools to be provided on day 0 as well. The associated PowerCLI cmdlets, Datacenter CLI commands (new in 6.5), vRealize Orchestrator workflows, and so forth are all part of the process. Lastly, and probably the best part, the documentation is created as well. The documentation will be fully featured and much easier to understand!

Summary

vSphere 6.5 brings all the features and improvements from above and many more. One thing is certain though, the future is bright when it comes to VMware’s developer and automation interfaces. This blog post shows a summary of a lot of new features that each deserve their own blog posts, watch this blog over the next couple of months as there will be several more blog posts diving further into each of these areas!

Get your kitchen pass and visit VMware Labs – lots of great stuff cooking

Folks,

I had lunch with my good friend Amitabh Chakrabarty the other day and realized that it might be good to highlight some fun "Flings" they have published on the VMware Labs site. If you do not know Amitabh he is the mad scientist behind the creation of VMware Labs and no a "Fling" is not what you might be thinking. 

Amitabh 

A Fling is experimental code released by VMware Engineering for you to test out and play with. I'm not really sure how they got the name approved from the Naming Committee but glad they did.

Take a peek at some very cool "Flings"

o ESXPLOT

Tool that generates time series graphs for selected esxtop fields. Ideal for helping troubleshooting performance problems.

o VMware Guest Console (VGC)

Application to manage Guest OS installed on a VM. This would be very useful for anyone managing large numbers of Virtual Machines.

o VMware vCenter Mobile Access 

vCMA allows you to
monitor and manage VMware Infrastructure from your mobile phone with an
interface that is optimized for such devices. 

Visit the Official VMware Labs site http://labs.vmware.com you might be
able to find a very useful tool to help you manage vSphere.

Enjoy,

Pablo Roesch

So glad its friday – Photo of the Week

Folks,

Think it might be kind of fun to post a photo submitted by you.

Here is one that was submitted by lamw with some slight modifications.

Lets see if you recognize this screen shot. Have a great weekend.

 

Photo-of-the-week

2010 VMware SDK / API Predictions – by Pablo Roesch

Folks,

It is hard to believe the New Year is already in its second week. I have been a little quiet these past few weeks as it has been hard to recover from my holiday break. I might have spent too much time in an undisclosed remote beach in Central America.

 

Here are my Top 5 Predictions for 2010.

 

#1. VMware Developer Community Sample Code site will be easier to use. As you know uploading and sharing code on our community is not ideal. Nava has been writing a plug in to improve the way the code is displayed and shared. It’s still a work in progress and will be released into the wild soon.

 

#2. VMware Global Support Services will provide SDK Developer / Scripting Support for our end user customers. Right now SDK Developer Support is only available for TAP members, (Select Level and above) We have been working with our friends in GSS and hope to have some good news for our customers this year. It has been long overdue.

 

#3. William (Lamw) will be the winner of some hard cold cash if no one else submits a script in our Script-O-Mania contest. The Script-O-Mania contest was launched before the break and William was our first and only contestants. Odds of winning are on his side.

 

#4. Project Onyx will take over our minds and force its will on the SDK / API marketing team. Project Onyx was developed by our PowerCLI development team with the goal to make developing, scripting using our APIs a little bit easier. This is very much a grass roots project and has gained an immense amount of popularity from our administrators and developers out there.

 

#5. I will find an iPhone app that will not only help me find my way home when lost, but will also open my garage door.   This is more of a fun prediction. I lost my remote controlled garage door opener during VMworld Developer Day and I am waiting for someone to create a really useful application that will open my automatic garage door opener.