Nutanix Storage Containers API

Manage storage containers that provide logical storage partitions within the Nutanix distributed storage fabric.

OpenAPI Specification

nutanix-storage-containers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Nutanix Prism Central API v3 Alerts Storage Containers API
  description: RESTful API for managing Nutanix clusters, VMs, storage, networking, and other infrastructure components through Prism Central. The v3 API uses an intent-based model where resources are defined by their desired state, and the system works to achieve that state. All list operations use POST with server-side filtering, grouping, and sorting. Authentication is via HTTP Basic Auth with Prism Central credentials.
  version: 3.1.0
  contact:
    name: Nutanix Developer Support
    email: developer@nutanix.com
    url: https://www.nutanix.dev/
  termsOfService: https://www.nutanix.com/legal/terms-of-use
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.
security:
- basicAuth: []
tags:
- name: Storage Containers
  description: Manage storage containers that provide logical storage partitions within the Nutanix distributed storage fabric.
paths:
  /storage_containers:
    get:
      operationId: listStorageContainers
      summary: Nutanix List storage containers
      description: Retrieves a list of all storage containers in the cluster with their configuration and usage statistics.
      tags:
      - Storage Containers
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                properties:
                  entities:
                    type: array
                    items:
                      $ref: '#/components/schemas/StorageContainer'
                  metadata:
                    $ref: '#/components/schemas/PaginationMetadata'
        '401':
          description: Unauthorized
    post:
      operationId: createStorageContainer
      summary: Nutanix Create a storage container
      description: Creates a new storage container with the specified configuration including name, storage pool, and data services settings.
      tags:
      - Storage Containers
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StorageContainerInput'
      responses:
        '201':
          description: Created
        '400':
          description: Bad request
        '401':
          description: Unauthorized
  /storage_containers/{id}:
    get:
      operationId: getStorageContainer
      summary: Nutanix Get a storage container
      description: Retrieves details about a specific storage container by its ID.
      tags:
      - Storage Containers
      parameters:
      - $ref: '#/components/parameters/EntityId'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/StorageContainer'
        '401':
          description: Unauthorized
        '404':
          description: Storage container not found
    put:
      operationId: updateStorageContainer
      summary: Nutanix Update a storage container
      description: Updates the configuration of an existing storage container.
      tags:
      - Storage Containers
      parameters:
      - $ref: '#/components/parameters/EntityId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/StorageContainerInput'
      responses:
        '200':
          description: Success
        '401':
          description: Unauthorized
        '404':
          description: Storage container not found
    delete:
      operationId: deleteStorageContainer
      summary: Nutanix Delete a storage container
      description: Deletes a storage container identified by its ID.
      tags:
      - Storage Containers
      parameters:
      - $ref: '#/components/parameters/EntityId'
      responses:
        '204':
          description: Deleted
        '401':
          description: Unauthorized
        '404':
          description: Storage container not found
components:
  parameters:
    EntityId:
      name: id
      in: path
      required: true
      description: The ID of the entity.
      schema:
        type: string
  schemas:
    PaginationMetadata:
      type: object
      description: Pagination metadata for list responses.
      properties:
        grand_total_entities:
          type: integer
          description: Total number of entities.
        total_entities:
          type: integer
          description: Number of entities in the current response.
        count:
          type: integer
          description: Count of entities returned.
        start_index:
          type: integer
          description: Starting index of the returned entities.
        end_index:
          type: integer
          description: Ending index of the returned entities.
    StorageContainer:
      type: object
      description: A storage container in the Nutanix cluster.
      properties:
        storage_container_uuid:
          type: string
          description: The UUID of the storage container.
        id:
          type: string
          description: The ID of the storage container.
        name:
          type: string
          description: The name of the storage container.
        max_capacity:
          type: integer
          description: Maximum capacity in bytes.
        usage_bytes:
          type: integer
          description: Current usage in bytes.
        replication_factor:
          type: integer
          description: Data replication factor.
        compression_enabled:
          type: boolean
          description: Whether inline compression is enabled.
        dedupe_enabled:
          type: boolean
          description: Whether deduplication is enabled.
    StorageContainerInput:
      type: object
      description: Input for creating or updating a storage container.
      required:
      - name
      properties:
        name:
          type: string
          description: The name of the storage container.
        storage_pool_uuid:
          type: string
          description: UUID of the storage pool to use.
        replication_factor:
          type: integer
          description: Data replication factor.
          minimum: 2
          maximum: 3
        compression_enabled:
          type: boolean
          description: Whether to enable inline compression.
        dedupe_enabled:
          type: boolean
          description: Whether to enable deduplication.
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Authentication using Prism Central username and password credentials.
externalDocs:
  description: Nutanix Prism Central v3 API Documentation
  url: https://www.nutanix.dev/api_references/prism-central-v3/