VMware Content Library API

Content library management for templates, ISOs, and OVF packages shared across vCenter instances

Documentation

Specifications

Code Examples

Schemas & Data

Other Resources

OpenAPI Specification

vmware-content-library-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: VMware vSphere Automation REST Clusters Content Library API
  description: RESTful API for managing VMware vSphere virtualization platform resources including virtual machines, hosts, datastores, clusters, networks, and related infrastructure. The vSphere Automation API provides modern REST endpoints for vCenter Server operations using JSON payloads and session-based or OAuth authentication. This API supersedes the legacy SOAP-based vSphere Web Services API for most automation use cases.
  version: '8.0'
  contact:
    name: Broadcom Developer Support
    url: https://developer.broadcom.com/
  license:
    name: Proprietary
    url: https://www.broadcom.com/company/legal/terms-of-use
  termsOfService: https://www.broadcom.com/company/legal/terms-of-use
servers:
- url: https://{vcenter}/api
  description: vCenter Server REST API endpoint
  variables:
    vcenter:
      default: vcenter.example.com
      description: Hostname or IP address of your vCenter Server instance
security:
- sessionAuth: []
- basicAuth: []
tags:
- name: Content Library
  description: Content library management for templates, ISOs, and OVF packages shared across vCenter instances
paths:
  /content/library:
    get:
      operationId: listContentLibraries
      summary: Vmware List Content Libraries
      description: Returns a list of all content library identifiers in the vCenter inventory.
      tags:
      - Content Library
      responses:
        '200':
          description: List of content library identifiers
          content:
            application/json:
              schema:
                type: array
                items:
                  type: string
              examples:
                Listcontentlibraries200Example:
                  summary: Default listContentLibraries 200 response
                  x-microcks-default: true
                  value:
                  - example_value
        '401':
          description: Not authenticated
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    post:
      operationId: createContentLibrary
      summary: Vmware Create a Content Library
      description: Creates a new local or subscribed content library for storing templates, ISOs, and OVF packages.
      tags:
      - Content Library
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/LibraryCreateSpec'
            examples:
              CreatecontentlibraryRequestExample:
                summary: Default createContentLibrary request
                x-microcks-default: true
                value:
                  name: Example Title
                  description: A sample description.
                  type: LOCAL
                  storage_backings:
                  - type: DATASTORE
                    datastore_id: '500123'
      responses:
        '201':
          description: Content library created
          content:
            application/json:
              schema:
                type: string
                description: Identifier of the new content library
              examples:
                Createcontentlibrary201Example:
                  summary: Default createContentLibrary 201 response
                  x-microcks-default: true
                  value: example_value
        '400':
          description: Invalid specification
        '401':
          description: Not authenticated
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /content/library/{library_id}:
    get:
      operationId: getContentLibrary
      summary: Vmware Get Content Library Details
      description: Returns detailed information about the specified content library.
      tags:
      - Content Library
      parameters:
      - name: library_id
        in: path
        required: true
        description: Identifier of the content library
        schema:
          type: string
        example: '500123'
      responses:
        '200':
          description: Content library details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LibraryInfo'
              examples:
                Getcontentlibrary200Example:
                  summary: Default getContentLibrary 200 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    name: Example Title
                    description: A sample description.
                    type: LOCAL
                    creation_time: '2026-01-15T10:30:00Z'
                    last_modified_time: '2026-01-15T10:30:00Z'
                    last_sync_time: '2026-01-15T10:30:00Z'
                    storage_backings:
                    - type: example_value
                      datastore_id: '500123'
                    version: example_value
        '401':
          description: Not authenticated
        '404':
          description: Content library not found
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    delete:
      operationId: deleteContentLibrary
      summary: Vmware Delete a Content Library
      description: Deletes the specified content library and all of its items.
      tags:
      - Content Library
      parameters:
      - name: library_id
        in: path
        required: true
        description: Identifier of the content library
        schema:
          type: string
        example: '500123'
      responses:
        '204':
          description: Content library deleted
        '401':
          description: Not authenticated
        '404':
          description: Content library not found
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    LibraryInfo:
      type: object
      description: Content library details
      properties:
        id:
          type: string
          description: Unique identifier of the content library
          example: abc123
        name:
          type: string
          description: Name of the content library
          example: Example Title
        description:
          type: string
          example: A sample description.
        type:
          type: string
          enum:
          - LOCAL
          - SUBSCRIBED
          example: LOCAL
        creation_time:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
        last_modified_time:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
        last_sync_time:
          type: string
          format: date-time
          example: '2026-01-15T10:30:00Z'
        storage_backings:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
              datastore_id:
                type: string
          example: []
        version:
          type: string
          example: example_value
    LibraryCreateSpec:
      type: object
      description: Specification for creating a content library
      required:
      - name
      - type
      - storage_backings
      properties:
        name:
          type: string
          description: Name for the new content library
          example: Example Title
        description:
          type: string
          description: Description of the content library
          example: A sample description.
        type:
          type: string
          description: Library type
          enum:
          - LOCAL
          - SUBSCRIBED
          example: LOCAL
        storage_backings:
          type: array
          description: Storage backings for the library content
          items:
            type: object
            properties:
              type:
                type: string
                enum:
                - DATASTORE
                - OTHER
              datastore_id:
                type: string
                description: Datastore identifier for DATASTORE type
          example: []
  securitySchemes:
    sessionAuth:
      type: apiKey
      in: header
      name: vmware-api-session-id
      description: Session token obtained from POST /session. Include this header in all subsequent API requests.
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic authentication using vCenter Server credentials. Used primarily for creating sessions.
externalDocs:
  description: vSphere Automation API Reference on Broadcom Developer Portal
  url: https://developer.broadcom.com/xapis/vsphere-automation-api/latest/