ContainerServiceClient icon

ContainerServiceClient

The Container Service Client

COMMUNITYBEARER0 INSTALLS
OpenAPI Specificationv3.0
{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "description": "The Container Service Client.",
    "title": "ContainerServiceClient",
    "version": "2018-08-01-preview",
    "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/containerservices/resource-manager/Microsoft.ContainerService/preview/2018-08-01-preview/managedClusters.json",
        "version": "2.0"
      }
    ],
    "x-preferred": true,
    "x-providerName": "azure.com",
    "x-serviceName": "containerservices-managedClusters",
    "x-tags": [
      "Azure",
      "Microsoft"
    ]
  },
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "securityDefinitions": {
    "azure_auth": {
      "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
      "description": "Azure Active Directory OAuth2 Flow",
      "flow": "implicit",
      "scopes": {
        "user_impersonation": "impersonate your user account"
      },
      "type": "oauth2"
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ],
  "parameters": {
    "ApiVersionParameter": {
      "description": "Client Api Version.",
      "in": "query",
      "name": "api-version",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "client"
    },
    "SubscriptionIdParameter": {
      "description": "Subscription credentials which 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",
      "x-ms-parameter-location": "client"
    }
  },
  "paths": {
    "/providers/Microsoft.ContainerService/operations": {
      "get": {
        "description": "Gets a list of compute operations.",
        "operationId": "Operations_List",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/OperationListResult"
            }
          }
        },
        "tags": [
          "managedClusters"
        ],
        "x-ms-pageable": {}
      }
    },
    "/subscriptions/{subscriptionId}/providers/Microsoft.ContainerService/managedClusters": {
      "get": {
        "description": "Gets a list of managed clusters in the specified subscription. The operation returns properties of each managed cluster.",
        "operationId": "ManagedClusters_List",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedClusterListResult"
            }
          }
        },
        "summary": "Gets a list of managed clusters in the specified subscription.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "List Managed Clusters": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid1/providers/Microsoft.ContainerService/managedClusters",
                      "location": "location1",
                      "name": "clustername1",
                      "properties": {
                        "agentPoolProfiles": [
                          {
                            "count": 3,
                            "maxPods": 110,
                            "name": "nodepool1",
                            "osType": "Linux",
                            "vmSize": "Standard_DS1_v2"
                          }
                        ],
                        "dnsPrefix": "dnsprefix1",
                        "enableRBAC": false,
                        "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
                        "kubernetesVersion": "1.9.6",
                        "linuxProfile": {
                          "adminUsername": "azureuser",
                          "ssh": {
                            "publicKeys": [
                              {
                                "keyData": "keydata"
                              }
                            ]
                          }
                        },
                        "networkProfile": {
                          "dnsServiceIP": "10.0.0.10",
                          "dockerBridgeCidr": "172.17.0.1/16",
                          "networkPlugin": "kubenet",
                          "podCidr": "10.244.0.0/16",
                          "serviceCidr": "10.0.0.0/16"
                        },
                        "nodeResourceGroup": "MC_rg1_clustername1_location1",
                        "provisioningState": "Succeeded",
                        "servicePrincipalProfile": {
                          "clientId": "clientid"
                        }
                      },
                      "tags": {
                        "archv2": "",
                        "tier": "production"
                      },
                      "type": "Microsoft.ContainerService/ManagedClusters"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters": {
      "get": {
        "description": "Lists managed clusters in the specified subscription and resource group. The operation returns properties of each managed cluster.",
        "operationId": "ManagedClusters_ListByResourceGroup",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedClusterListResult"
            }
          }
        },
        "summary": "Lists managed clusters in the specified subscription and resource group.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Get Managed Clusters by Resource Group": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "resourceGroupName": "rg1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters",
                      "location": "location1",
                      "name": "clustername1",
                      "properties": {
                        "agentPoolProfiles": [
                          {
                            "count": 3,
                            "maxPods": 110,
                            "name": "nodepool1",
                            "osType": "Linux",
                            "vmSize": "Standard_DS1_v2"
                          }
                        ],
                        "dnsPrefix": "dnsprefix1",
                        "enableRBAC": false,
                        "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
                        "kubernetesVersion": "1.9.6",
                        "linuxProfile": {
                          "adminUsername": "azureuser",
                          "ssh": {
                            "publicKeys": [
                              {
                                "keyData": "keydata"
                              }
                            ]
                          }
                        },
                        "networkProfile": {
                          "dnsServiceIP": "10.0.0.10",
                          "dockerBridgeCidr": "172.17.0.1/16",
                          "networkPlugin": "kubenet",
                          "podCidr": "10.244.0.0/16",
                          "serviceCidr": "10.0.0.0/16"
                        },
                        "nodeResourceGroup": "MC_rg1_clustername1_location1",
                        "provisioningState": "Succeeded",
                        "servicePrincipalProfile": {
                          "clientId": "clientid"
                        }
                      },
                      "tags": {
                        "archv2": "",
                        "tier": "production"
                      },
                      "type": "Microsoft.ContainerService/ManagedClusters"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}": {
      "delete": {
        "description": "Deletes the managed cluster with a specified resource group and name.",
        "operationId": "ManagedClusters_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "202": {
            "description": "Accepted"
          },
          "204": {
            "description": "NoContent"
          }
        },
        "summary": "Deletes a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Delete Managed Cluster": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "202": {},
              "204": {}
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "get": {
        "description": "Gets the details of the managed cluster with a specified resource group and name.",
        "operationId": "ManagedClusters_Get",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          }
        },
        "summary": "Gets a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Get Managed Cluster": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
                  "location": "location1",
                  "name": "clustername1",
                  "properties": {
                    "agentPoolProfiles": [
                      {
                        "count": 3,
                        "maxPods": 110,
                        "name": "nodepool1",
                        "osType": "Linux",
                        "vmSize": "Standard_DS1_v2"
                      }
                    ],
                    "dnsPrefix": "dnsprefix1",
                    "enableRBAC": false,
                    "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
                    "kubernetesVersion": "1.9.6",
                    "linuxProfile": {
                      "adminUsername": "azureuser",
                      "ssh": {
                        "publicKeys": [
                          {
                            "keyData": "keydata"
                          }
                        ]
                      }
                    },
                    "networkProfile": {
                      "dnsServiceIP": "10.0.0.10",
                      "dockerBridgeCidr": "172.17.0.1/16",
                      "networkPlugin": "kubenet",
                      "podCidr": "10.244.0.0/16",
                      "serviceCidr": "10.0.0.0/16"
                    },
                    "nodeResourceGroup": "MC_rg1_clustername1_location1",
                    "provisioningState": "Succeeded",
                    "servicePrincipalProfile": {
                      "clientId": "clientid"
                    }
                  },
                  "tags": {
                    "archv2": "",
                    "tier": "production"
                  },
                  "type": "Microsoft.ContainerService/ManagedClusters"
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates a managed cluster with the specified tags.",
        "operationId": "ManagedClusters_UpdateTags",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the Update Managed Cluster Tags operation.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/TagsObject"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          }
        },
        "summary": "Updates tags on a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Update Managed Cluster Tags": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "parameters": {
                "tags": {
                  "archv3": "",
                  "tier": "testing"
                }
              },
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
                  "location": "location1",
                  "name": "clustername1",
                  "properties": {
                    "agentPoolProfiles": [
                      {
                        "count": 3,
                        "maxPods": 110,
                        "name": "nodepool1",
                        "osType": "Linux",
                        "vmSize": "Standard_DS1_v2"
                      }
                    ],
                    "dnsPrefix": "dnsprefix1",
                    "enableRBAC": false,
                    "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
                    "kubernetesVersion": "1.9.6",
                    "linuxProfile": {
                      "adminUsername": "azureuser",
                      "ssh": {
                        "publicKeys": [
                          {
                            "keyData": "keydata"
                          }
                        ]
                      }
                    },
                    "networkProfile": {
                      "dnsServiceIP": "10.0.0.10",
                      "dockerBridgeCidr": "172.17.0.1/16",
                      "networkPlugin": "kubenet",
                      "podCidr": "10.244.0.0/16",
                      "serviceCidr": "10.0.0.0/16"
                    },
                    "nodeResourceGroup": "MC_rg1_clustername1_location1",
                    "provisioningState": "Succeeded",
                    "servicePrincipalProfile": {
                      "clientId": "clientid"
                    }
                  },
                  "tags": {
                    "archv3": "",
                    "tier": "testing"
                  },
                  "type": "Microsoft.ContainerService/ManagedClusters"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      },
      "put": {
        "description": "Creates or updates a managed cluster with the specified configuration for agents and Kubernetes version.",
        "operationId": "ManagedClusters_CreateOrUpdate",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the Create or Update a Managed Cluster operation.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          },
          "201": {
            "description": "Created",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          }
        },
        "summary": "Creates or updates a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Create/Update Managed Cluster": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "parameters": {
                "location": "location1",
                "properties": {
                  "addonProfiles": {},
                  "agentPoolProfiles": [
                    {
                      "count": 3,
                      "name": "nodepool1",
                      "osType": "Linux",
                      "vmSize": "Standard_DS1_v2"
                    }
                  ],
                  "dnsPrefix": "dnsprefix1",
                  "enableRBAC": false,
                  "kubernetesVersion": "",
                  "linuxProfile": {
                    "adminUsername": "azureuser",
                    "ssh": {
                      "publicKeys": [
                        {
                          "keyData": "keydata"
                        }
                      ]
                    }
                  },
                  "servicePrincipalProfile": {
                    "clientId": "clientid",
                    "secret": "secret"
                  }
                },
                "tags": {
                  "archv2": "",
                  "tier": "production"
                }
              },
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
                  "location": "location1",
                  "name": "clustername1",
                  "properties": {
                    "agentPoolProfiles": [
                      {
                        "count": 3,
                        "maxPods": 110,
                        "name": "nodepool1",
                        "osType": "Linux",
                        "vmSize": "Standard_DS1_v2"
                      }
                    ],
                    "dnsPrefix": "dnsprefix1",
                    "enableRBAC": false,
                    "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
                    "kubernetesVersion": "1.9.6",
                    "linuxProfile": {
                      "adminUsername": "azureuser",
                      "ssh": {
                        "publicKeys": [
                          {
                            "keyData": "keydata"
                          }
                        ]
                      }
                    },
                    "networkProfile": {
                      "dnsServiceIP": "10.0.0.10",
                      "dockerBridgeCidr": "172.17.0.1/16",
                      "networkPlugin": "kubenet",
                      "podCidr": "10.244.0.0/16",
                      "serviceCidr": "10.0.0.0/16"
                    },
                    "nodeResourceGroup": "MC_rg1_clustername1_location1",
                    "provisioningState": "Succeeded",
                    "servicePrincipalProfile": {
                      "clientId": "clientid"
                    }
                  },
                  "tags": {
                    "archv2": "",
                    "tier": "production"
                  },
                  "type": "Microsoft.ContainerService/ManagedClusters"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
                  "location": "location1",
                  "name": "clustername1",
                  "properties": {
                    "agentPoolProfiles": [
                      {
                        "count": 3,
                        "maxPods": 110,
                        "name": "nodepool1",
                        "osType": "Linux",
                        "vmSize": "Standard_DS1_v2"
                      }
                    ],
                    "dnsPrefix": "dnsprefix1",
                    "enableRBAC": false,
                    "kubernetesVersion": "1.9.6",
                    "linuxProfile": {
                      "adminUsername": "azureuser",
                      "ssh": {
                        "publicKeys": [
                          {
                            "keyData": "keydata"
                          }
                        ]
                      }
                    },
                    "networkProfile": {
                      "dnsServiceIP": "10.0.0.10",
                      "dockerBridgeCidr": "172.17.0.1/16",
                      "networkPlugin": "kubenet",
                      "podCidr": "10.244.0.0/16",
                      "serviceCidr": "10.0.0.0/16"
                    },
                    "nodeResourceGroup": "MC_rg1_clustername1_location1",
                    "provisioningState": "Creating",
                    "servicePrincipalProfile": {
                      "clientId": "clientid"
                    }
                  },
                  "tags": {
                    "archv2": "",
                    "tier": "production"
                  },
                  "type": "Microsoft.ContainerService/ManagedClusters"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/accessProfiles/{roleName}/listCredential": {
      "post": {
        "description": "Gets the accessProfile for the specified role name of the managed cluster with a specified resource group and name.",
        "operationId": "ManagedClusters_GetAccessProfile",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the role for managed cluster accessProfile resource.",
            "in": "path",
            "name": "roleName",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedClusterAccessProfile"
            }
          }
        },
        "summary": "Gets an access profile of a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Get Managed Cluster": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "roleName": "clusterUser",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/accessProfiles/clusterUser",
                  "location": "location1",
                  "name": "clusterUser",
                  "properties": {
                    "kubeConfig": "kubeConfig1"
                  },
                  "type": "Microsoft.ContainerService/ManagedClusters/AccessProfiles"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterAdminCredential": {
      "post": {
        "description": "Gets cluster admin credential of the managed cluster with a specified resource group and name.",
        "operationId": "ManagedClusters_ListClusterAdminCredentials",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CredentialResults"
            }
          }
        },
        "summary": "Gets cluster admin credential of a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Get Managed Cluster": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "kubeconfigs": [
                    {
                      "name": "credentialName1",
                      "value": "credentialValue1"
                    }
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/listClusterUserCredential": {
      "post": {
        "description": "Gets cluster user credential of the managed cluster with a specified resource group and name.",
        "operationId": "ManagedClusters_ListClusterUserCredentials",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/CredentialResults"
            }
          }
        },
        "summary": "Gets cluster user credential of a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Get Managed Cluster": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "kubeconfigs": [
                    {
                      "name": "credentialName1",
                      "value": "credentialValue1"
                    }
                  ]
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetAADProfile": {
      "post": {
        "description": "Update the AAD Profile for a managed cluster.",
        "operationId": "ManagedClusters_ResetAADProfile",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the Reset AAD Profile operation for a Managed Cluster.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ManagedClusterAADProfile"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          },
          "202": {
            "description": "Accepted",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
            "schema": {
              "$ref": "#/definitions/CloudError"
            }
          }
        },
        "summary": "Reset AAD Profile of a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Reset Service Principal Profile": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "parameters": {
                "aadProfile": {
                  "clientAppID": "clientappid",
                  "serverAppID": "serverappid",
                  "serverAppSecret": "serverappsecret",
                  "tenantID": "tenantid"
                }
              },
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
                  "location": "location1",
                  "name": "clustername1",
                  "properties": {
                    "aadProfile": {
                      "clientAppID": "clientappid",
                      "serverAppID": "serverappid",
                      "tenantID": "tenantid"
                    },
                    "agentPoolProfiles": [
                      {
                        "count": 3,
                        "maxPods": 110,
                        "name": "nodepool1",
                        "osType": "Linux",
                        "storageProfile": "ManagedDisks",
                        "vmSize": "Standard_DS1_v2"
                      }
                    ],
                    "dnsPrefix": "dnsprefix1",
                    "enableRBAC": false,
                    "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
                    "kubernetesVersion": "1.9.6",
                    "linuxProfile": {
                      "adminUsername": "azureuser",
                      "ssh": {
                        "publicKeys": [
                          {
                            "keyData": "keydata"
                          }
                        ]
                      }
                    },
                    "networkProfile": {
                      "dnsServiceIP": "10.0.0.10",
                      "dockerBridgeCidr": "172.17.0.1/16",
                      "networkPlugin": "kubenet",
                      "podCidr": "10.244.0.0/16",
                      "serviceCidr": "10.0.0.0/16"
                    },
                    "nodeResourceGroup": "MC_rg1_clustername1_location1",
                    "provisioningState": "Succeeded",
                    "servicePrincipalProfile": {
                      "clientId": "clientid"
                    }
                  },
                  "tags": {
                    "archv2": "",
                    "tier": "production"
                  },
                  "type": "Microsoft.ContainerService/ManagedClusters"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/resetServicePrincipalProfile": {
      "post": {
        "description": "Update the service principal Profile for a managed cluster.",
        "operationId": "ManagedClusters_ResetServicePrincipalProfile",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters supplied to the Reset Service Principal Profile operation for a Managed Cluster.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ManagedClusterServicePrincipalProfile"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          },
          "202": {
            "description": "Accepted",
            "schema": {
              "$ref": "#/definitions/ManagedCluster"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed. If the cluster doesn't exist, 404 (Not found) is returned.",
            "schema": {
              "$ref": "#/definitions/CloudError"
            }
          }
        },
        "summary": "Reset Service Principal Profile of a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Reset Service Principal Profile": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "parameters": {
                "servicePrincipalProfile": {
                  "clientId": "clientid",
                  "secret": "secret"
                }
              },
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1",
                  "location": "location1",
                  "name": "clustername1",
                  "properties": {
                    "agentPoolProfiles": [
                      {
                        "count": 3,
                        "maxPods": 110,
                        "name": "nodepool1",
                        "osType": "Linux",
                        "storageProfile": "ManagedDisks",
                        "vmSize": "Standard_DS1_v2"
                      }
                    ],
                    "dnsPrefix": "dnsprefix1",
                    "enableRBAC": false,
                    "fqdn": "dnsprefix1-abcd1234.hcp.eastus.azmk8s.io",
                    "kubernetesVersion": "1.9.6",
                    "linuxProfile": {
                      "adminUsername": "azureuser",
                      "ssh": {
                        "publicKeys": [
                          {
                            "keyData": "keydata"
                          }
                        ]
                      }
                    },
                    "networkProfile": {
                      "dnsServiceIP": "10.0.0.10",
                      "dockerBridgeCidr": "172.17.0.1/16",
                      "networkPlugin": "kubenet",
                      "podCidr": "10.244.0.0/16",
                      "serviceCidr": "10.0.0.0/16"
                    },
                    "nodeResourceGroup": "MC_rg1_clustername1_location1",
                    "provisioningState": "Succeeded",
                    "servicePrincipalProfile": {
                      "clientId": "clientid"
                    }
                  },
                  "tags": {
                    "archv2": "",
                    "tier": "production"
                  },
                  "type": "Microsoft.ContainerService/ManagedClusters"
                }
              }
            }
          }
        },
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ContainerService/managedClusters/{resourceName}/upgradeProfiles/default": {
      "get": {
        "description": "Gets the details of the upgrade profile for a managed cluster with a specified resource group and name.",
        "operationId": "ManagedClusters_GetUpgradeProfile",
        "parameters": [
          {
            "$ref": "#/parameters/ApiVersionParameter"
          },
          {
            "$ref": "#/parameters/SubscriptionIdParameter"
          },
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string"
          },
          {
            "description": "The name of the managed cluster resource.",
            "in": "path",
            "name": "resourceName",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ManagedClusterUpgradeProfile"
            }
          }
        },
        "summary": "Gets upgrade profile for a managed cluster.",
        "tags": [
          "ManagedClusters"
        ],
        "x-ms-examples": {
          "Get Upgrade Profile for Managed Cluster": {
            "parameters": {
              "api-version": "2018-08-01-preview",
              "resourceGroupName": "rg1",
              "resourceName": "clustername1",
              "subscriptionId": "subid1"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid1/resourcegroups/rg1/providers/Microsoft.ContainerService/managedClusters/clustername1/upgradeprofiles/default",
                  "name": "default",
                  "properties": {
                    "agentPoolProfiles": [
                      {
                        "kubernetesVersion": "1.7.7",
                        "name": "agent",
                        "osType": "Linux",
                        "upgrades": [
                          "1.8.1"
                        ]
                      }
                    ],
                    "controlPlaneProfile": {
                      "kubernetesVersion": "1.7.7",
                      "name": "master",
                      "osType": "Linux",
                      "upgrades": [
                        "1.8.1"
                      ]
                    }
                  },
                  "type": "Microsoft.ContainerService/managedClusters/upgradeprofiles"
                }
              }
            }
          }
        }
      }
    }
  },
  "definitions": {
    "AccessProfile": {
      "description": "Profile for enabling a user to access a managed cluster.",
      "properties": {
        "kubeConfig": {
          "description": "Base64-encoded Kubernetes configuration file.",
          "format": "byte",
          "type": "string"
        }
      },
      "type": "object"
    },
    "AgentPoolType": {
      "description": "AgentPoolType represents types of an agent pool",
      "enum": [
        "VirtualMachineScaleSets",
        "AvailabilitySet"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "AgentPoolType"
      }
    },
    "CloudError": {
      "description": "An error response from the Container service.",
      "properties": {
        "error": {
          "$ref": "#/definitions/CloudErrorBody",
          "description": "Details about the error."
        }
      },
      "x-ms-external": true
    },
    "CloudErrorBody": {
      "description": "An error response from the Container service.",
      "properties": {
        "code": {
          "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically.",
          "type": "string"
        },
        "details": {
          "description": "A list of additional details about the error.",
          "items": {
            "$ref": "#/definitions/CloudErrorBody"
          },
          "type": "array"
        },
        "message": {
          "description": "A message describing the error, intended to be suitable for display in a user interface.",
          "type": "string"
        },
        "target": {
          "description": "The target of the particular error. For example, the name of the property in error.",
          "type": "string"
        }
      },
      "x-ms-external": true
    },
    "ContainerServiceDiagnosticsProfile": {
      "description": "Profile for diagnostics on the container service cluster.",
      "properties": {
        "vmDiagnostics": {
          "$ref": "#/definitions/ContainerServiceVMDiagnostics",
          "description": "Profile for diagnostics on the container service VMs."
        }
      },
      "required": [
        "vmDiagnostics"
      ]
    },
    "ContainerServiceLinuxProfile": {
      "description": "Profile for Linux VMs in the container service cluster.",
      "properties": {
        "adminUsername": {
          "description": "The administrator username to use for Linux VMs.",
          "pattern": "^[A-Za-z][-A-Za-z0-9_]*$",
          "type": "string"
        },
        "ssh": {
          "$ref": "#/definitions/ContainerServiceSshConfiguration",
          "description": "SSH configuration for Linux-based VMs running on Azure."
        }
      },
      "required": [
        "adminUsername",
        "ssh"
      ]
    },
    "ContainerServiceMasterProfile": {
      "description": "Profile for the container service master.",
      "properties": {
        "count": {
          "default": 1,
          "description": "Number of masters (VMs) in the container service cluster. Allowed values are 1, 3, and 5. The default value is 1.",
          "enum": [
            1,
            3,
            5
          ],
          "format": "int32",
          "type": "integer",
          "x-ms-enum": {
            "modelAsString": false,
            "name": "Count"
          }
        },
        "dnsPrefix": {
          "description": "DNS prefix to be used to create the FQDN for the master pool.",
          "type": "string"
        },
        "firstConsecutiveStaticIP": {
          "default": "10.240.255.5",
          "description": "FirstConsecutiveStaticIP used to specify the first static ip of masters.",
          "type": "string"
        },
        "fqdn": {
          "description": "FQDN for the master pool.",
          "readOnly": true,
          "type": "string"
        },
        "osDiskSizeGB": {
          "$ref": "#/definitions/ContainerServiceOSDisk",
          "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified."
        },
        "storageProfile": {
          "$ref": "#/definitions/ContainerServiceStorageProfile",
          "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice."
        },
        "vmSize": {
          "$ref": "#/definitions/ContainerServiceVMSize",
          "description": "Size of agent VMs."
        },
        "vnetSubnetID": {
          "$ref": "#/definitions/ContainerServiceVnetSubnetID",
          "description": "VNet SubnetID specifies the VNet's subnet identifier."
        }
      },
      "required": [
        "dnsPrefix",
        "vmSize"
      ]
    },
    "ContainerServiceNetworkProfile": {
      "description": "Profile of network configuration.",
      "properties": {
        "dnsServiceIP": {
          "default": "10.0.0.10",
          "description": "An IP address assigned to the Kubernetes DNS service. It must be within the Kubernetes service address range specified in serviceCidr.",
          "pattern": "^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$",
          "type": "string"
        },
        "dockerBridgeCidr": {
          "default": "172.17.0.1/16",
          "description": "A CIDR notation IP range assigned to the Docker bridge network. It must not overlap with any Subnet IP ranges or the Kubernetes service address range.",
          "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
          "type": "string"
        },
        "networkPlugin": {
          "default": "kubenet",
          "description": "Network plugin used for building Kubernetes network.",
          "enum": [
            "azure",
            "kubenet"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "NetworkPlugin"
          }
        },
        "networkPolicy": {
          "description": "Network policy used for building Kubernetes network.",
          "enum": [
            "calico"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "NetworkPolicy"
          }
        },
        "podCidr": {
          "default": "10.244.0.0/16",
          "description": "A CIDR notation IP range from which to assign pod IPs when kubenet is used.",
          "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
          "type": "string"
        },
        "serviceCidr": {
          "default": "10.0.0.0/16",
          "description": "A CIDR notation IP range from which to assign service cluster IPs. It must not overlap with any Subnet IP ranges.",
          "pattern": "^([0-9]{1,3}\\.){3}[0-9]{1,3}(\\/([0-9]|[1-2][0-9]|3[0-2]))?$",
          "type": "string"
        }
      }
    },
    "ContainerServiceOSDisk": {
      "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified.",
      "format": "int32",
      "maximum": 1023,
      "minimum": 0,
      "type": "integer"
    },
    "ContainerServiceSshConfiguration": {
      "description": "SSH configuration for Linux-based VMs running on Azure.",
      "properties": {
        "publicKeys": {
          "description": "The list of SSH public keys used to authenticate with Linux-based VMs. Only expect one key specified.",
          "items": {
            "$ref": "#/definitions/ContainerServiceSshPublicKey"
          },
          "type": "array"
        }
      },
      "required": [
        "publicKeys"
      ]
    },
    "ContainerServiceSshPublicKey": {
      "description": "Contains information about SSH certificate public key data.",
      "properties": {
        "keyData": {
          "description": "Certificate public key used to authenticate with VMs through SSH. The certificate must be in PEM format with or without headers.",
          "type": "string"
        }
      },
      "required": [
        "keyData"
      ]
    },
    "ContainerServiceStorageProfile": {
      "description": "Storage profile specifies what kind of storage used. Choose from StorageAccount and ManagedDisks. Leave it empty, we will choose for you based on the orchestrator choice.",
      "enum": [
        "StorageAccount",
        "ManagedDisks"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "ContainerServiceStorageProfileTypes"
      }
    },
    "ContainerServiceVMDiagnostics": {
      "description": "Profile for diagnostics on the container service VMs.",
      "properties": {
        "enabled": {
          "description": "Whether the VM diagnostic agent is provisioned on the VM.",
          "type": "boolean"
        },
        "storageUri": {
          "description": "The URI of the storage account where diagnostics are stored.",
          "readOnly": true,
          "type": "string"
        }
      },
      "required": [
        "enabled"
      ]
    },
    "ContainerServiceVMSize": {
      "description": "Size of agent VMs.",
      "enum": [
        "Standard_A1",
        "Standard_A10",
        "Standard_A11",
        "Standard_A1_v2",
        "Standard_A2",
        "Standard_A2_v2",
        "Standard_A2m_v2",
        "Standard_A3",
        "Standard_A4",
        "Standard_A4_v2",
        "Standard_A4m_v2",
        "Standard_A5",
        "Standard_A6",
        "Standard_A7",
        "Standard_A8",
        "Standard_A8_v2",
        "Standard_A8m_v2",
        "Standard_A9",
        "Standard_B2ms",
        "Standard_B2s",
        "Standard_B4ms",
        "Standard_B8ms",
        "Standard_D1",
        "Standard_D11",
        "Standard_D11_v2",
        "Standard_D11_v2_Promo",
        "Standard_D12",
        "Standard_D12_v2",
        "Standard_D12_v2_Promo",
        "Standard_D13",
        "Standard_D13_v2",
        "Standard_D13_v2_Promo",
        "Standard_D14",
        "Standard_D14_v2",
        "Standard_D14_v2_Promo",
        "Standard_D15_v2",
        "Standard_D16_v3",
        "Standard_D16s_v3",
        "Standard_D1_v2",
        "Standard_D2",
        "Standard_D2_v2",
        "Standard_D2_v2_Promo",
        "Standard_D2_v3",
        "Standard_D2s_v3",
        "Standard_D3",
        "Standard_D32_v3",
        "Standard_D32s_v3",
        "Standard_D3_v2",
        "Standard_D3_v2_Promo",
        "Standard_D4",
        "Standard_D4_v2",
        "Standard_D4_v2_Promo",
        "Standard_D4_v3",
        "Standard_D4s_v3",
        "Standard_D5_v2",
        "Standard_D5_v2_Promo",
        "Standard_D64_v3",
        "Standard_D64s_v3",
        "Standard_D8_v3",
        "Standard_D8s_v3",
        "Standard_DS1",
        "Standard_DS11",
        "Standard_DS11_v2",
        "Standard_DS11_v2_Promo",
        "Standard_DS12",
        "Standard_DS12_v2",
        "Standard_DS12_v2_Promo",
        "Standard_DS13",
        "Standard_DS13-2_v2",
        "Standard_DS13-4_v2",
        "Standard_DS13_v2",
        "Standard_DS13_v2_Promo",
        "Standard_DS14",
        "Standard_DS14-4_v2",
        "Standard_DS14-8_v2",
        "Standard_DS14_v2",
        "Standard_DS14_v2_Promo",
        "Standard_DS15_v2",
        "Standard_DS1_v2",
        "Standard_DS2",
        "Standard_DS2_v2",
        "Standard_DS2_v2_Promo",
        "Standard_DS3",
        "Standard_DS3_v2",
        "Standard_DS3_v2_Promo",
        "Standard_DS4",
        "Standard_DS4_v2",
        "Standard_DS4_v2_Promo",
        "Standard_DS5_v2",
        "Standard_DS5_v2_Promo",
        "Standard_E16_v3",
        "Standard_E16s_v3",
        "Standard_E2_v3",
        "Standard_E2s_v3",
        "Standard_E32-16s_v3",
        "Standard_E32-8s_v3",
        "Standard_E32_v3",
        "Standard_E32s_v3",
        "Standard_E4_v3",
        "Standard_E4s_v3",
        "Standard_E64-16s_v3",
        "Standard_E64-32s_v3",
        "Standard_E64_v3",
        "Standard_E64s_v3",
        "Standard_E8_v3",
        "Standard_E8s_v3",
        "Standard_F1",
        "Standard_F16",
        "Standard_F16s",
        "Standard_F16s_v2",
        "Standard_F1s",
        "Standard_F2",
        "Standard_F2s",
        "Standard_F2s_v2",
        "Standard_F32s_v2",
        "Standard_F4",
        "Standard_F4s",
        "Standard_F4s_v2",
        "Standard_F64s_v2",
        "Standard_F72s_v2",
        "Standard_F8",
        "Standard_F8s",
        "Standard_F8s_v2",
        "Standard_G1",
        "Standard_G2",
        "Standard_G3",
        "Standard_G4",
        "Standard_G5",
        "Standard_GS1",
        "Standard_GS2",
        "Standard_GS3",
        "Standard_GS4",
        "Standard_GS4-4",
        "Standard_GS4-8",
        "Standard_GS5",
        "Standard_GS5-16",
        "Standard_GS5-8",
        "Standard_H16",
        "Standard_H16m",
        "Standard_H16mr",
        "Standard_H16r",
        "Standard_H8",
        "Standard_H8m",
        "Standard_L16s",
        "Standard_L32s",
        "Standard_L4s",
        "Standard_L8s",
        "Standard_M128-32ms",
        "Standard_M128-64ms",
        "Standard_M128ms",
        "Standard_M128s",
        "Standard_M64-16ms",
        "Standard_M64-32ms",
        "Standard_M64ms",
        "Standard_M64s",
        "Standard_NC12",
        "Standard_NC12s_v2",
        "Standard_NC12s_v3",
        "Standard_NC24",
        "Standard_NC24r",
        "Standard_NC24rs_v2",
        "Standard_NC24rs_v3",
        "Standard_NC24s_v2",
        "Standard_NC24s_v3",
        "Standard_NC6",
        "Standard_NC6s_v2",
        "Standard_NC6s_v3",
        "Standard_ND12s",
        "Standard_ND24rs",
        "Standard_ND24s",
        "Standard_ND6s",
        "Standard_NV12",
        "Standard_NV24",
        "Standard_NV6"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "ContainerServiceVMSizeTypes"
      }
    },
    "ContainerServiceVnetSubnetID": {
      "description": "VNet SubnetID specifies the VNet's subnet identifier.",
      "type": "string"
    },
    "ContainerServiceWindowsProfile": {
      "description": "Profile for Windows VMs in the container service cluster.",
      "properties": {
        "adminPassword": {
          "description": "The administrator password to use for Windows VMs.",
          "pattern": "^(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%\\^&\\*\\(\\)])[a-zA-Z\\d!@#$%\\^&\\*\\(\\)]{12,123}$",
          "type": "string"
        },
        "adminUsername": {
          "description": "The administrator username to use for Windows VMs.",
          "pattern": "^[a-zA-Z0-9]+([._]?[a-zA-Z0-9]+)*$",
          "type": "string"
        }
      },
      "required": [
        "adminUsername",
        "adminPassword"
      ]
    },
    "CredentialResult": {
      "description": "The credential result response.",
      "properties": {
        "name": {
          "description": "The name of the credential.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "Base64-encoded Kubernetes configuration file.",
          "format": "byte",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "CredentialResults": {
      "description": "The list of credential result response.",
      "properties": {
        "kubeconfigs": {
          "items": {
            "$ref": "#/definitions/CredentialResult"
          },
          "readOnly": true,
          "type": "array"
        }
      }
    },
    "ManagedCluster": {
      "allOf": [
        {
          "$ref": "#/definitions/Resource"
        },
        {
          "properties": {
            "properties": {
              "$ref": "#/definitions/ManagedClusterProperties",
              "description": "Properties of a managed cluster.",
              "x-ms-client-flatten": true
            }
          }
        }
      ],
      "description": "Managed cluster."
    },
    "ManagedClusterAADProfile": {
      "description": "AADProfile specifies attributes for Azure Active Directory integration.",
      "properties": {
        "clientAppID": {
          "description": "The client AAD application ID.",
          "type": "string"
        },
        "serverAppID": {
          "description": "The server AAD application ID.",
          "type": "string"
        },
        "serverAppSecret": {
          "description": "The server AAD application secret.",
          "type": "string"
        },
        "tenantID": {
          "description": "The AAD tenant ID to use for authentication. If not specified, will use the tenant of the deployment subscription.",
          "type": "string"
        }
      },
      "required": [
        "clientAppID",
        "serverAppID"
      ]
    },
    "ManagedClusterAccessProfile": {
      "allOf": [
        {
          "$ref": "#/definitions/Resource"
        },
        {
          "properties": {
            "properties": {
              "$ref": "#/definitions/AccessProfile",
              "description": "AccessProfile of a managed cluster.",
              "x-ms-client-flatten": true
            }
          }
        }
      ],
      "description": "Managed cluster Access Profile.",
      "x-ms-azure-resource": false
    },
    "ManagedClusterAddonProfile": {
      "description": "A Kubernetes add-on profile for a managed cluster.",
      "properties": {
        "config": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Key-value pairs for configuring an add-on."
        },
        "enabled": {
          "description": "Whether the add-on is enabled or not.",
          "type": "boolean"
        }
      },
      "required": [
        "enabled"
      ]
    },
    "ManagedClusterAgentPoolProfile": {
      "description": "Profile for the container service agent pool.",
      "properties": {
        "count": {
          "default": 1,
          "description": "Number of agents (VMs) to host docker containers. Allowed values must be in the range of 1 to 100 (inclusive). The default value is 1. ",
          "format": "int32",
          "maximum": 100,
          "minimum": 1,
          "type": "integer"
        },
        "enableAutoScaling": {
          "description": "Whether to enable auto-scaler",
          "type": "boolean"
        },
        "maxCount": {
          "description": "Maximum number of nodes for auto-scaling",
          "format": "int32",
          "type": "integer"
        },
        "maxPods": {
          "description": "Maximum number of pods that can run on a node.",
          "format": "int32",
          "type": "integer"
        },
        "minCount": {
          "description": "Minimum number of nodes for auto-scaling",
          "format": "int32",
          "type": "integer"
        },
        "name": {
          "description": "Unique name of the agent pool profile in the context of the subscription and resource group.",
          "type": "string"
        },
        "osDiskSizeGB": {
          "$ref": "#/definitions/ContainerServiceOSDisk",
          "description": "OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified."
        },
        "osType": {
          "$ref": "#/definitions/OSType",
          "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux."
        },
        "type": {
          "$ref": "#/definitions/AgentPoolType",
          "description": "AgentPoolType represents types of an agent pool"
        },
        "vmSize": {
          "$ref": "#/definitions/ContainerServiceVMSize",
          "description": "Size of agent VMs."
        },
        "vnetSubnetID": {
          "$ref": "#/definitions/ContainerServiceVnetSubnetID",
          "description": "VNet SubnetID specifies the VNet's subnet identifier."
        }
      },
      "required": [
        "name",
        "vmSize",
        "count"
      ]
    },
    "ManagedClusterListResult": {
      "description": "The response from the List Managed Clusters operation.",
      "properties": {
        "nextLink": {
          "description": "The URL to get the next set of managed cluster results.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "The list of managed clusters.",
          "items": {
            "$ref": "#/definitions/ManagedCluster"
          },
          "type": "array"
        }
      }
    },
    "ManagedClusterPoolUpgradeProfile": {
      "description": "The list of available upgrade versions.",
      "properties": {
        "kubernetesVersion": {
          "description": "Kubernetes version (major, minor, patch).",
          "type": "string"
        },
        "name": {
          "description": "Pool name.",
          "type": "string"
        },
        "osType": {
          "$ref": "#/definitions/OSType",
          "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux.",
          "enum": [
            "Linux",
            "Windows"
          ],
          "x-ms-enum": {
            "modelAsString": true,
            "name": "ContainerServiceOSTypes"
          }
        },
        "upgrades": {
          "description": "List of orchestrator types and versions available for upgrade.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "required": [
        "kubernetesVersion",
        "osType"
      ]
    },
    "ManagedClusterProperties": {
      "description": "Properties of the managed cluster.",
      "properties": {
        "aadProfile": {
          "$ref": "#/definitions/ManagedClusterAADProfile",
          "description": "Profile of Azure Active Directory configuration."
        },
        "addonProfiles": {
          "additionalProperties": {
            "$ref": "#/definitions/ManagedClusterAddonProfile"
          },
          "description": "Profile of managed cluster add-on."
        },
        "agentPoolProfiles": {
          "description": "Properties of the agent pool.",
          "items": {
            "$ref": "#/definitions/ManagedClusterAgentPoolProfile"
          },
          "type": "array"
        },
        "dnsPrefix": {
          "description": "DNS prefix specified when creating the managed cluster.",
          "type": "string"
        },
        "enableRBAC": {
          "description": "Whether to enable Kubernetes Role-Based Access Control.",
          "type": "boolean"
        },
        "fqdn": {
          "description": "FQDN for the master pool.",
          "readOnly": true,
          "type": "string"
        },
        "kubernetesVersion": {
          "description": "Version of Kubernetes specified when creating the managed cluster.",
          "type": "string"
        },
        "linuxProfile": {
          "$ref": "#/definitions/ContainerServiceLinuxProfile",
          "description": "Profile for Linux VMs in the container service cluster."
        },
        "networkProfile": {
          "$ref": "#/definitions/ContainerServiceNetworkProfile",
          "description": "Profile of network configuration."
        },
        "nodeResourceGroup": {
          "description": "Name of the resource group containing agent pool nodes.",
          "readOnly": true,
          "type": "string"
        },
        "provisioningState": {
          "description": "The current deployment or provisioning state, which only appears in the response.",
          "readOnly": true,
          "type": "string"
        },
        "servicePrincipalProfile": {
          "$ref": "#/definitions/ManagedClusterServicePrincipalProfile",
          "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs."
        }
      }
    },
    "ManagedClusterServicePrincipalProfile": {
      "description": "Information about a service principal identity for the cluster to use for manipulating Azure APIs.",
      "properties": {
        "clientId": {
          "description": "The ID for the service principal.",
          "type": "string"
        },
        "secret": {
          "description": "The secret password associated with the service principal in plain text.",
          "type": "string"
        }
      },
      "required": [
        "clientId"
      ]
    },
    "ManagedClusterUpgradeProfile": {
      "description": "The list of available upgrades for compute pools.",
      "properties": {
        "id": {
          "description": "Id of upgrade profile.",
          "readOnly": true,
          "type": "string"
        },
        "name": {
          "description": "Name of upgrade profile.",
          "readOnly": true,
          "type": "string"
        },
        "properties": {
          "$ref": "#/definitions/ManagedClusterUpgradeProfileProperties",
          "description": "Properties of upgrade profile.",
          "x-ms-client-flatten": true
        },
        "type": {
          "description": "Type of upgrade profile.",
          "readOnly": true,
          "type": "string"
        }
      },
      "required": [
        "properties"
      ]
    },
    "ManagedClusterUpgradeProfileProperties": {
      "description": "Control plane and agent pool upgrade profiles.",
      "properties": {
        "agentPoolProfiles": {
          "description": "The list of available upgrade versions for agent pools.",
          "items": {
            "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile"
          },
          "type": "array"
        },
        "controlPlaneProfile": {
          "$ref": "#/definitions/ManagedClusterPoolUpgradeProfile",
          "description": "The list of available upgrade versions for the control plane."
        }
      },
      "required": [
        "controlPlaneProfile",
        "agentPoolProfiles"
      ]
    },
    "OSType": {
      "default": "Linux",
      "description": "OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux.",
      "enum": [
        "Linux",
        "Windows"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "OSType"
      }
    },
    "OperationListResult": {
      "description": "The List Compute Operation operation response.",
      "properties": {
        "value": {
          "description": "The list of compute operations",
          "items": {
            "$ref": "#/definitions/OperationValue"
          },
          "readOnly": true,
          "type": "array"
        }
      }
    },
    "OperationValue": {
      "description": "Describes the properties of a Compute Operation value.",
      "properties": {
        "display": {
          "$ref": "#/definitions/OperationValueDisplay",
          "description": "Describes the properties of a Compute Operation Value Display.",
          "x-ms-client-flatten": true
        },
        "name": {
          "description": "The name of the compute operation.",
          "readOnly": true,
          "type": "string"
        },
        "origin": {
          "description": "The origin of the compute operation.",
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "OperationValueDisplay": {
      "description": "Describes the properties of a Compute Operation Value Display.",
      "properties": {
        "description": {
          "description": "The description of the operation.",
          "readOnly": true,
          "type": "string"
        },
        "operation": {
          "description": "The display name of the compute operation.",
          "readOnly": true,
          "type": "string"
        },
        "provider": {
          "description": "The resource provider for the operation.",
          "readOnly": true,
          "type": "string"
        },
        "resource": {
          "description": "The display name of the resource the operation applies to.",
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "OrchestratorProfile": {
      "description": "Contains information about orchestrator.",
      "properties": {
        "orchestratorType": {
          "description": "Orchestrator type.",
          "type": "string"
        },
        "orchestratorVersion": {
          "description": "Orchestrator version (major, minor, patch).",
          "type": "string"
        }
      },
      "required": [
        "orchestratorType",
        "orchestratorVersion"
      ]
    },
    "Resource": {
      "description": "The Resource model definition.",
      "properties": {
        "id": {
          "description": "Resource Id",
          "readOnly": true,
          "type": "string"
        },
        "location": {
          "description": "Resource location",
          "type": "string",
          "x-ms-mutability": [
            "read",
            "create"
          ]
        },
        "name": {
          "description": "Resource name",
          "readOnly": true,
          "type": "string"
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Resource tags",
          "type": "object"
        },
        "type": {
          "description": "Resource type",
          "readOnly": true,
          "type": "string"
        }
      },
      "required": [
        "location"
      ],
      "x-ms-azure-resource": true
    },
    "TagsObject": {
      "description": "Tags object for patch operations.",
      "properties": {
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Resource tags.",
          "type": "object"
        }
      }
    }
  }
}