Nutanix VMs API

Manage virtual machines including creation, update, deletion, and power state operations through the intent-based API model.

Operations 8

POST /vms/list Nutanix List virtual machines #
POST /vms Nutanix Create a virtual machine #
GET /vms Nutanix List virtual machines #
GET /vms/{uuid} Nutanix Get a virtual machine #
PUT /vms/{uuid} Nutanix Update a virtual machine #
DELETE /vms/{uuid} Nutanix Delete a virtual machine #
GET /vms/{id} Nutanix Get a virtual machine #
POST /vms/{id}/set_power_state Nutanix Set VM power state #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/nutanix-vms-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

nutanix-vms-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Nutanix V Ms API
  contact:
    name: Nutanix Developer Support
    email: developer@nutanix.com
    url: https://www.nutanix.dev/
  termsOfService: https://www.nutanix.com/legal/terms-of-use
  version: '1.0'
  description: 'Operations tagged VMs across 2 of this provider''s published API definitions: nutanix-prism-central-v3-openapi.yml, nutanix-prism-element-v2-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{prismCentralIp}:9440/api/nutanix/v3
  description: Prism Central Server
  variables:
    prismCentralIp:
      default: localhost
      description: IP address or FQDN of the Prism Central instance.
- url: https://{clusterIp}:9440/PrismGateway/services/rest/v2.0
  description: Prism Element Server
  variables:
    clusterIp:
      default: localhost
      description: IP address or FQDN of the Nutanix cluster or CVM.
security:
- basicAuth: []
tags:
- name: VMs
  description: Manage virtual machines including creation, update, deletion, and power state operations through the intent-based API model.
paths:
  /vms/list:
    post:
      operationId: listVms
      summary: Nutanix List virtual machines
      description: Retrieves a list of VMs with optional filtering, sorting, and pagination. The v3 API standardizes on POST for list operations to support server-side filtering, grouping, and sorting via the request body.
      tags:
      - VMs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ListMetadata'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VmListResponse'
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
    servers:
    - url: https://{prismCentralIp}:9440/api/nutanix/v3
      description: Prism Central Server
      variables:
        prismCentralIp:
          default: localhost
          description: IP address or FQDN of the Prism Central instance.
  /vms:
    post:
      operationId: createVm
      summary: Nutanix Create a virtual machine
      description: Creates a new VM using the intent-based spec. The request includes the desired specification and metadata. The system returns a task that tracks the creation progress.
      tags:
      - VMs
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VmIntentInput'
      responses:
        '202':
          description: Accepted - VM creation task started
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VmIntentResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
    get:
      operationId: listVms
      summary: Nutanix List virtual machines
      description: Retrieves a list of all VMs on the local cluster with their configuration and current state.
      tags:
      - VMs
      parameters:
      - name: include_vm_disk_config
        in: query
        description: Include VM disk configuration details in the response.
        schema:
          type: boolean
          default: false
      - name: include_vm_nic_config
        in: query
        description: Include VM NIC configuration details in the response.
        schema:
          type: boolean
          default: false
      responses:
        '200':
          description: Success
        '401':
          description: Unauthorized
    servers:
    - url: https://{prismCentralIp}:9440/api/nutanix/v3
      description: Prism Central Server
      variables:
        prismCentralIp:
          default: localhost
          description: IP address or FQDN of the Prism Central instance.
  /vms/{uuid}:
    get:
      operationId: getVm
      summary: Nutanix Get a virtual machine
      description: Retrieves the current state and specification of a VM by its UUID.
      tags:
      - VMs
      parameters:
      - $ref: '#/components/parameters/Uuid'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VmIntentResponse'
        '401':
          description: Unauthorized
        '404':
          description: VM not found
    put:
      operationId: updateVm
      summary: Nutanix Update a virtual machine
      description: Updates the specification of an existing VM. The full intent spec must be provided including unchanged fields.
      tags:
      - VMs
      parameters:
      - $ref: '#/components/parameters/Uuid'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/VmIntentInput'
      responses:
        '202':
          description: Accepted - VM update task started
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/VmIntentResponse'
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '404':
          description: VM not found
    delete:
      operationId: deleteVm
      summary: Nutanix Delete a virtual machine
      description: Deletes a VM identified by its UUID.
      tags:
      - VMs
      parameters:
      - $ref: '#/components/parameters/Uuid'
      responses:
        '202':
          description: Accepted - VM deletion task started
        '401':
          description: Unauthorized
        '404':
          description: VM not found
    servers:
    - url: https://{prismCentralIp}:9440/api/nutanix/v3
      description: Prism Central Server
      variables:
        prismCentralIp:
          default: localhost
          description: IP address or FQDN of the Prism Central instance.
  /vms/{id}:
    get:
      operationId: getVm
      summary: Nutanix Get a virtual machine
      description: Retrieves detailed information about a specific VM by its ID.
      tags:
      - VMs
      parameters:
      - $ref: '#/components/parameters/EntityId'
      responses:
        '200':
          description: Success
        '401':
          description: Unauthorized
        '404':
          description: VM not found
    servers:
    - url: https://{clusterIp}:9440/PrismGateway/services/rest/v2.0
      description: Prism Element Server
      variables:
        clusterIp:
          default: localhost
          description: IP address or FQDN of the Nutanix cluster or CVM.
  /vms/{id}/set_power_state:
    post:
      operationId: setVmPowerState
      summary: Nutanix Set VM power state
      description: Changes the power state of a VM to ON, OFF, POWERCYCLE, RESET, PAUSE, SUSPEND, or ACPI_SHUTDOWN.
      tags:
      - VMs
      parameters:
      - $ref: '#/components/parameters/EntityId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - transition
              properties:
                transition:
                  type: string
                  enum:
                  - 'ON'
                  - 'OFF'
                  - POWERCYCLE
                  - RESET
                  - PAUSE
                  - SUSPEND
                  - ACPI_SHUTDOWN
                  description: The power state transition to perform.
      responses:
        '200':
          description: Success
        '401':
          description: Unauthorized
        '404':
          description: VM not found
    servers:
    - url: https://{clusterIp}:9440/PrismGateway/services/rest/v2.0
      description: Prism Element Server
      variables:
        clusterIp:
          default: localhost
          description: IP address or FQDN of the Nutanix cluster or CVM.
components:
  schemas:
    ListMetadata:
      type: object
      description: Request body for list operations supporting server-side filtering, sorting, and pagination.
      properties:
        kind:
          type: string
          description: The entity kind to list.
        offset:
          type: integer
          description: Offset from the start of the entity list.
          minimum: 0
        length:
          type: integer
          description: The number of records to retrieve.
          minimum: 1
          maximum: 500
        filter:
          type: string
          description: The filter criteria in FIQL format.
        sort_order:
          type: string
          description: The sort order.
          enum:
          - ASCENDING
          - DESCENDING
        sort_attribute:
          type: string
          description: The attribute to sort results by.
    VmSpec:
      type: object
      description: VM specification describing the desired state.
      properties:
        name:
          type: string
          description: The name of the VM.
        description:
          type: string
          description: A description of the VM.
        resources:
          type: object
          description: VM resource configuration.
          properties:
            num_sockets:
              type: integer
              description: Number of vCPU sockets.
              minimum: 1
            num_vcpus_per_socket:
              type: integer
              description: Number of vCPUs per socket.
              minimum: 1
            memory_size_mib:
              type: integer
              description: Memory size in MiB.
              minimum: 1
            power_state:
              type: string
              description: The desired power state of the VM.
              enum:
              - 'ON'
              - 'OFF'
            disk_list:
              type: array
              items:
                type: object
                properties:
                  device_properties:
                    type: object
                    properties:
                      device_type:
                        type: string
                        enum:
                        - DISK
                        - CDROM
                      disk_address:
                        type: object
                        properties:
                          adapter_type:
                            type: string
                            enum:
                            - SCSI
                            - IDE
                            - PCI
                            - SATA
                            - SPAPR
                          device_index:
                            type: integer
                  disk_size_mib:
                    type: integer
                    description: Size of the disk in MiB.
              description: List of disks attached to the VM.
            nic_list:
              type: array
              items:
                type: object
                properties:
                  subnet_reference:
                    $ref: '#/components/schemas/Reference'
                  ip_endpoint_list:
                    type: array
                    items:
                      type: object
                      properties:
                        ip:
                          type: string
                          description: IP address.
                        type:
                          type: string
                          enum:
                          - ASSIGNED
                          - LEARNED
              description: List of NICs attached to the VM.
        cluster_reference:
          $ref: '#/components/schemas/Reference'
    VmIntentResponse:
      type: object
      description: Response containing VM intent status and spec.
      properties:
        status:
          type: object
          description: The current status of the VM.
        spec:
          $ref: '#/components/schemas/VmSpec'
        metadata:
          $ref: '#/components/schemas/EntityMetadata'
    Reference:
      type: object
      description: A reference to another entity.
      required:
      - kind
      - uuid
      properties:
        kind:
          type: string
          description: The kind of entity being referenced.
        uuid:
          type: string
          format: uuid
          description: The UUID of the referenced entity.
        name:
          type: string
          description: The name of the referenced entity.
    EntityMetadata:
      type: object
      description: Metadata for an entity.
      properties:
        kind:
          type: string
          description: The kind of entity.
        uuid:
          type: string
          format: uuid
          description: The UUID of the entity.
        spec_version:
          type: integer
          description: Version number of the spec.
        categories:
          type: object
          additionalProperties:
            type: string
          description: Categories assigned to the entity as key-value pairs.
        owner_reference:
          $ref: '#/components/schemas/Reference'
        project_reference:
          $ref: '#/components/schemas/Reference'
    VmListResponse:
      type: object
      description: Response for listing VMs.
      properties:
        api_version:
          type: string
          description: API version.
        metadata:
          $ref: '#/components/schemas/ListMetadata'
        entities:
          type: array
          items:
            $ref: '#/components/schemas/VmIntentResponse'
          description: List of VM intent responses.
    VmIntentInput:
      type: object
      description: Input for creating or updating a VM with the intent model.
      required:
      - spec
      - metadata
      properties:
        spec:
          $ref: '#/components/schemas/VmSpec'
        metadata:
          $ref: '#/components/schemas/EntityMetadata'
  parameters:
    Uuid:
      name: uuid
      in: path
      required: true
      description: The UUID of the entity.
      schema:
        type: string
        format: uuid
    EntityId:
      name: id
      in: path
      required: true
      description: The ID of the entity.
      schema:
        type: string
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Authentication using Prism Central username and password credentials.
x-refined-from:
- nutanix-prism-central-v3-openapi.yml
- nutanix-prism-element-v2-openapi.yml