swagger: "2.0"
schemes:
  - https
host: adminmanagement.local.azurestack.external
info:
  description: Scale unit node operation endpoints and objects.
  title: FabricAdminClient
  version: 2016-05-01
  x-apisguru-categories:
    - cloud
  x-logo:
    url: https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png
  x-origin:
    - format: swagger
      url: https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/azsadmin/resource-manager/fabric/Microsoft.Fabric.Admin/preview/2016-05-01/ScaleUnitNode.json
      version: "2.0"
  x-providerName: azure.com
  x-serviceName: azsadmin-ScaleUnitNode
  x-tags:
    - Azure
    - Microsoft
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  azure_auth:
    authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
    description: Authorization uses an Azure Active Directory OAuth2 flow.
    flow: implicit
    scopes:
      user_impersonation: impersonate your user account
    type: oauth2
security:
  - azure_auth:
      - user_impersonation
parameters:
  BareMetalNodeParameter:
    description: Description of a node.
    in: body
    name: bareMetalNode
    required: true
    schema:
      $ref: "#/definitions/BareMetalNodeDescription"
    x-ms-parameter-location: method
  ScaleUnitNodeParameter:
    description: Name of the scale unit node.
    in: path
    name: scaleUnitNode
    required: true
    type: string
    x-ms-parameter-location: method
paths:
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes":
    get:
      description: Returns a list of all scale unit nodes in a location.
      operationId: ScaleUnitNodes_List
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
        - description: OData filter parameter.
          in: query
          name: $filter
          type: string
          x-ms-parameter-location: method
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ScaleUnitNodeList"
        "404":
          description: NOT FOUND
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        List all scale unit node:
          parameters:
            api-version: 2016-05-01
            location: local
            resourceGroupName: System.local
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200":
              body:
                value:
                  - id: /subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/System.local/providers/Microsoft.Fabric.Admin/fabricLocations/local/scaleUnitNodes/N1S2
                    location: local
                    name: N1S2
                    properties:
                      canPowerOff: false
                      capacity:
                        cores: 56
                        memoryGB: 255.875
                      powerState: Running
                      scaleUnitName: S-Cluster
                      scaleUnitNodeStatus: Running
                      scaleUnitUri: /fabricLocations/local/scaleUnits/S-Cluster
                    tags: {}
                    type: Microsoft.Fabric.Admin/fabricLocations/scaleUnitNodes
            "404": {}
      x-ms-odata: "#/definitions/ScaleUnitNode"
      x-ms-pageable:
        nextLinkName: nextLink
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes/{scaleUnitNode}":
    get:
      description: Return the requested scale unit node.
      operationId: ScaleUnitNodes_Get
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ScaleUnitNodeParameter"
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
          schema:
            $ref: "#/definitions/ScaleUnitNode"
        "404":
          description: NOT FOUND
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        Return the requested scale unit node.:
          parameters:
            api-version: 2016-05-01
            location: local
            resourceGroupName: System.local
            scaleUnitNode: N1S2
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200":
              body:
                id: /subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/System.local/providers/Microsoft.Fabric.Admin/fabricLocations/local/scaleUnitNodes/N1S2
                location: local
                name: N1S2
                properties:
                  canPowerOff: false
                  capacity:
                    cores: 56
                    memoryGB: 255.875
                  powerState: Running
                  scaleUnitName: S-Cluster
                  scaleUnitNodeStatus: Running
                  scaleUnitUri: /fabricLocations/local/scaleUnits/S-Cluster
                tags: {}
                type: Microsoft.Fabric.Admin/fabricLocations/scaleUnitNodes
            "404": {}
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes/{scaleUnitNode}/PowerOff":
    post:
      description: Power off a scale unit node.
      operationId: ScaleUnitNodes_PowerOff
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ScaleUnitNodeParameter"
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
        "202":
          description: ACCEPTED
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        Power off a scale unit node.:
          parameters:
            api-version: 2016-05-01
            location: local
            resourceGroupName: System.local
            scaleUnitNode: N1S2
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200": {}
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes/{scaleUnitNode}/PowerOn":
    post:
      description: Power on a scale unit node.
      operationId: ScaleUnitNodes_PowerOn
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ScaleUnitNodeParameter"
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
        "202":
          description: ACCEPTED
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        Power on a scale unit node.:
          parameters:
            api-version: 2016-05-01
            location: local
            resourceGroupName: System.local
            scaleUnitNode: N1S2
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200": {}
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes/{scaleUnitNode}/Repair":
    post:
      description: Repairs a node of the cluster.
      operationId: ScaleUnitNodes_Repair
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ScaleUnitNodeParameter"
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
        - $ref: "#/parameters/BareMetalNodeParameter"
      responses:
        "200":
          description: OK
        "202":
          description: ACCEPTED
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        Repairs a node of the cluster.:
          parameters:
            api-version: 2016-05-01
            bareMetalNode:
              biosVersion: 0.0.1
              bmcIpv4Address: 192.168.1.1
              clusterName: T-Cluster
              computerName: Gibson
              macAddress: 00-14-22-01-23-45
              model: "64"
              serialNumber: "123456789"
              vendor: Commodore
            location: local
            resourceGroupName: System.local
            scaleUnitNode: N1S2
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200": {}
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes/{scaleUnitNode}/Shutdown":
    post:
      description: Shutdown a scale unit node.
      operationId: ScaleUnitNodes_Shutdown
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ScaleUnitNodeParameter"
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
        "202":
          description: ACCEPTED
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        Shutdown a scale unit node.:
          parameters:
            api-version: 2016-05-01
            location: local
            resourceGroupName: System.local
            scaleUnitNode: N1S2
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200": {}
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes/{scaleUnitNode}/StartMaintenanceMode":
    post:
      description: Start maintenance mode for a scale unit node.
      operationId: ScaleUnitNodes_StartMaintenanceMode
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ScaleUnitNodeParameter"
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
        "202":
          description: ACCEPTED
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        Start maintenance mode on a scale unit node.:
          parameters:
            api-version: 2016-05-01
            location: local
            resourceGroupName: System.local
            scaleUnitNode: N1S2
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200": {}
            "202": {}
      x-ms-long-running-operation: true
  "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Fabric.Admin/fabricLocations/{location}/scaleUnitNodes/{scaleUnitNode}/StopMaintenanceMode":
    post:
      description: Stop maintenance mode for a scale unit node.
      operationId: ScaleUnitNodes_StopMaintenanceMode
      parameters:
        - description: Subscription credentials that uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.
          in: path
          name: subscriptionId
          required: true
          type: string
        - description: Name of the resource group.
          in: path
          name: resourceGroupName
          required: true
          type: string
          x-ms-parameter-location: method
        - description: Location of the resource.
          in: path
          name: location
          required: true
          type: string
          x-ms-parameter-location: method
        - $ref: "#/parameters/ScaleUnitNodeParameter"
        - default: 2016-05-01
          description: Client API Version.
          in: query
          name: api-version
          required: true
          type: string
      responses:
        "200":
          description: OK
        "202":
          description: ACCEPTED
      tags:
        - ScaleUnitNodes
      x-ms-examples:
        Stop maintenance mode on a scale unit node.:
          parameters:
            api-version: 2016-05-01
            location: local
            resourceGroupName: System.local
            scaleUnitNode: N1S2
            subscriptionId: 20ff7fc3-e762-44dd-bd96-b71116dcdc23
          responses:
            "200": {}
            "202": {}
      x-ms-long-running-operation: true
definitions:
  BareMetalNodeDescription:
    description: Description of a bare metal node used for ScaleOut operation on a cluster.
    properties:
      biosVersion:
        description: Bios version of the physical machine.
        type: string
      bmcIpv4Address:
        description: BMC address of the physical machine.
        type: string
        x-ms-client-name: BMCIPv4Address
      clusterName:
        description: Name of the cluster.
        type: string
      computerName:
        description: Name of the computer.
        type: string
      macAddress:
        description: Name of the MAC address of the bare metal node.
        type: string
      model:
        description: Model of the physical machine.
        type: string
      serialNumber:
        description: Serial number of the physical machine.
        type: string
      vendor:
        description: Vendor of the physical machine.
        type: string
    type: object
  ScaleUnitNode:
    allOf:
      - description: Base resource object.
        properties:
          id:
            description: URI of the resource.
            readOnly: true
            type: string
          location:
            description: The region where the resource is located.
            type: string
          name:
            description: Name of the resource.
            readOnly: true
            type: string
          tags:
            additionalProperties:
              type: string
            description: List of key-value pairs.
            type: object
          type:
            description: Type of resource.
            readOnly: true
            type: string
        type: object
        x-ms-azure-resource: true
    description: The physical server in a cluster.
    properties:
      properties:
        $ref: "#/definitions/ScaleUnitNodeModel"
        description: Holds all properties related to a scale unit node.
        x-ms-client-flatten: true
    type: object
  ScaleUnitNodeList:
    description: A pageable list of scale unit nodes.
    properties:
      nextLink:
        description: The URI to the next page.
        type: string
      value:
        description: List of scale unit nodes.
        items:
          $ref: "#/definitions/ScaleUnitNode"
        type: array
    type: object
  ScaleUnitNodeModel:
    description: Holds all properties related to a scale unit node.
    properties:
      biosVersion:
        description: BIOS version of the physical machine.
        type: string
      bmcAddress:
        description: BMC address of the physical machine.
        type: string
      canPowerOff:
        description: Value indicating whether the node can be powered off.
        type: boolean
      capacity:
        description: The capacity information for a physical machine.
        properties:
          cores:
            description: The number of CPU cores for the physical machine.
            format: int64
            type: integer
          memoryGB:
            description: The memory for the physical machine.
            format: float
            type: number
        type: object
      model:
        description: Model of the physical machine.
        type: string
      powerState:
        description: PowerState of the physical machine.
        enum:
          - Stopped
          - Starting
          - Running
          - Stopping
        type: string
        x-ms-enum:
          modelAsString: true
          name: PowerState
      scaleUnitName:
        description: Cluster name of the physical machine.
        type: string
      scaleUnitNodeStatus:
        description: Status of the physical machine.
        enum:
          - Running
          - Maintenance
          - Stopped
        type: string
        x-ms-enum:
          modelAsString: true
          name: ScaleUnitNodeStatus
      scaleUnitUri:
        description: URI of the corresponding cluster.
        type: string
      serialNumber:
        description: Serial number of the physical machine.
        type: string
      vendor:
        description: Vendor of the physical machine.
        type: string
    type: object
