NetApp Network API

Operations for managing network interfaces, ports, and IP configuration

OpenAPI Specification

netapp-network-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: NetApp ONTAP REST Aggregates Network API
  description: REST API for managing NetApp ONTAP storage systems. Provides programmatic access to cluster administration, storage provisioning, data protection, and networking configuration. The ONTAP REST API is available on all ONTAP 9.6 and later systems, with expanded coverage in each subsequent release. Resources include clusters, storage virtual machines (SVMs), aggregates, volumes, LUNs, snapshots, network interfaces, and more.
  version: 9.15.1
  contact:
    name: NetApp Developer Resources
    url: https://devnet.netapp.com/
  license:
    name: NetApp Terms of Use
    url: https://www.netapp.com/how-to-buy/sales-terms-and-conditions/
  termsOfService: https://www.netapp.com/how-to-buy/sales-terms-and-conditions/
  x-logo:
    url: https://www.netapp.com/media/na_logo_black_rgb_reg-mark_tcm19-21014.jpg
servers:
- url: https://{clusterMgmtIp}/api
  description: ONTAP cluster management endpoint
  variables:
    clusterMgmtIp:
      default: cluster-mgmt-ip
      description: IP address or hostname of the ONTAP cluster management LIF
security:
- basicAuth: []
- bearerAuth: []
tags:
- name: Network
  description: Operations for managing network interfaces, ports, and IP configuration
paths:
  /network/ip/interfaces:
    get:
      operationId: listNetworkInterfaces
      summary: Netapp List Network Interfaces
      description: Retrieves a list of network interfaces (LIFs) across the cluster. Network interfaces provide data access and management connectivity for SVMs and the cluster.
      tags:
      - Network
      parameters:
      - $ref: '#/components/parameters/fields'
      - $ref: '#/components/parameters/max_records'
      - $ref: '#/components/parameters/order_by'
      - name: svm.name
        in: query
        description: Filter by SVM name
        schema:
          type: string
      - name: name
        in: query
        description: Filter by interface name
        schema:
          type: string
      responses:
        '200':
          description: List of network interfaces retrieved successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  records:
                    type: array
                    items:
                      $ref: '#/components/schemas/NetworkInterface'
                  num_records:
                    type: integer
                  _links:
                    $ref: '#/components/schemas/CollectionLinks'
        default:
          $ref: '#/components/responses/ErrorResponse'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    CollectionLinks:
      type: object
      description: Pagination links for collection responses
      properties:
        self:
          type: object
          properties:
            href:
              type: string
              format: uri
          example: example_value
        next:
          type: object
          description: Link to the next page of results
          properties:
            href:
              type: string
              format: uri
          example: example_value
    NetworkInterface:
      type: object
      description: A network interface (LIF) providing data or management access
      properties:
        uuid:
          type: string
          format: uuid
          description: Network interface UUID
          readOnly: true
          example: '500123'
        name:
          type: string
          description: Interface name
          examples:
          - lif1
        ip:
          type: object
          description: IP address configuration
          properties:
            address:
              type: string
              description: IP address
              examples:
              - 192.168.1.100
            netmask:
              type: string
              description: Network mask
              examples:
              - 255.255.255.0
            family:
              type: string
              description: IP address family
              enum:
              - ipv4
              - ipv6
          example: example_value
        state:
          type: string
          description: Operational state of the interface
          readOnly: true
          enum:
          - up
          - down
          example: up
        enabled:
          type: boolean
          description: Whether the interface is administratively enabled
          example: true
        scope:
          type: string
          description: Interface scope
          enum:
          - svm
          - cluster
          example: svm
        service_policy:
          type: object
          description: Service policy governing the interface
          properties:
            name:
              type: string
              description: Service policy name
              examples:
              - default-data-files
          example: example_value
        svm:
          $ref: '#/components/schemas/SvmReference'
        location:
          type: object
          description: Current location of the interface
          properties:
            home_node:
              $ref: '#/components/schemas/ClusterNodeReference'
            home_port:
              type: object
              properties:
                name:
                  type: string
                  description: Port name
                  examples:
                  - e0d
                node:
                  $ref: '#/components/schemas/ClusterNodeReference'
            node:
              $ref: '#/components/schemas/ClusterNodeReference'
            port:
              type: object
              properties:
                name:
                  type: string
                node:
                  $ref: '#/components/schemas/ClusterNodeReference'
            is_home:
              type: boolean
              description: Whether the interface is on its home port
          example: example_value
        _links:
          $ref: '#/components/schemas/SelfLink'
    SelfLink:
      type: object
      description: HAL self link
      properties:
        self:
          type: object
          properties:
            href:
              type: string
              format: uri
              description: URL of this resource
          example: example_value
    ClusterNodeReference:
      type: object
      description: Reference to a cluster node
      properties:
        uuid:
          type: string
          format: uuid
          example: '500123'
        name:
          type: string
          example: Example Title
        _links:
          $ref: '#/components/schemas/SelfLink'
    ErrorResponse:
      type: object
      description: ONTAP REST API error response
      properties:
        error:
          type: object
          properties:
            message:
              type: string
              description: Human-readable error message
            code:
              type: string
              description: Error code
            target:
              type: string
              description: The field or resource that caused the error
          example: example_value
    SvmReference:
      type: object
      description: Reference to an SVM
      properties:
        uuid:
          type: string
          format: uuid
          example: '500123'
        name:
          type: string
          example: Example Title
        _links:
          $ref: '#/components/schemas/SelfLink'
  responses:
    ErrorResponse:
      description: Error response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
  parameters:
    order_by:
      name: order_by
      in: query
      required: false
      description: Comma-separated list of fields to sort by. Add 'desc' after a field name to sort in descending order (e.g., name desc).
      schema:
        type: string
    fields:
      name: fields
      in: query
      required: false
      description: Comma-separated list of fields to return. Use * for all fields. Nested fields can be specified using dot notation (e.g., space.size).
      schema:
        type: string
    max_records:
      name: max_records
      in: query
      required: false
      description: Maximum number of records to return per page
      schema:
        type: integer
        minimum: 1
        maximum: 10000
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP basic authentication using ONTAP user credentials. Provide the cluster or SVM administrator username and password.
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth 2.0 bearer token authentication. Supported in ONTAP 9.8 and later.