SeaBreezeManagementClient icon

SeaBreezeManagementClient

APIs to deploy and manage resources to SeaBreeze

COMMUNITYBEARER0 INSTALLS
OpenAPI Specificationv3.0
{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "description": "APIs to deploy and manage resources to SeaBreeze.",
    "title": "SeaBreezeManagementClient",
    "version": "2018-09-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/servicefabricmesh/resource-manager/Microsoft.ServiceFabricMesh/preview/2018-09-01-preview/servicefabricmesh.json",
        "version": "2.0"
      }
    ],
    "x-preferred": true,
    "x-providerName": "azure.com",
    "x-serviceName": "servicefabricmesh",
    "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": {
    "ApplicationResourceDescriptionRequiredBodyParam": {
      "description": "Description for creating a Application resource.",
      "in": "body",
      "name": "applicationResourceDescription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/ApplicationResourceDescription"
      },
      "x-ms-parameter-location": "method"
    },
    "ApplicationResourceNameRequiredPathParam": {
      "description": "The identity of the application.",
      "in": "path",
      "name": "applicationResourceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "CodePackageNameRequiredPathParam": {
      "description": "The name of code package of the service.",
      "in": "path",
      "name": "codePackageName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "GatewayResourceDescriptionRequiredBodyParam": {
      "description": "Description for creating a Gateway resource.",
      "in": "body",
      "name": "gatewayResourceDescription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/GatewayResourceDescription"
      },
      "x-ms-parameter-location": "method"
    },
    "GatewayResourceNameRequiredPathParam": {
      "description": "The identity of the gateway.",
      "in": "path",
      "name": "gatewayResourceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "NetworkResourceDescriptionRequiredBodyParam": {
      "description": "Description for creating a Network resource.",
      "in": "body",
      "name": "networkResourceDescription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/NetworkResourceDescription"
      },
      "x-ms-parameter-location": "method"
    },
    "NetworkResourceNameRequiredPathParam": {
      "description": "The identity of the network.",
      "in": "path",
      "name": "networkResourceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "ReplicaNameRequiredPathParam": {
      "description": "Service Fabric replica name.",
      "in": "path",
      "name": "replicaName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "ResourceGroupNameRequiredPathParam": {
      "description": "Azure resource group name",
      "in": "path",
      "name": "resourceGroupName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "SecretResourceDescriptionRequiredBodyParam": {
      "description": "Description for creating a secret resource.",
      "in": "body",
      "name": "secretResourceDescription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/SecretResourceDescription"
      },
      "x-ms-parameter-location": "method"
    },
    "SecretResourceNameRequiredPathParam": {
      "description": "The name of the secret resource.",
      "in": "path",
      "name": "secretResourceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "SecretValueResourceDescriptionRequiredBodyParam": {
      "description": "Description for creating a value of a secret resource.",
      "in": "body",
      "name": "secretValueResourceDescription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/SecretValueResourceDescription"
      },
      "x-ms-parameter-location": "method"
    },
    "SecretValueResourceNameRequiredPathParam": {
      "description": "The name of the secret resource value which is typically the version identifier for the value.",
      "in": "path",
      "name": "secretValueResourceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "ServiceResourceNameRequiredPathParam": {
      "description": "The identity of the service.",
      "in": "path",
      "name": "serviceResourceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "TailOptionalQueryParam": {
      "description": "Number of lines to show from the end of the logs. Default is 100.",
      "in": "query",
      "name": "tail",
      "required": false,
      "type": "integer",
      "x-ms-parameter-location": "method"
    },
    "VolumeResourceDescriptionRequiredBodyParam": {
      "description": "Description for creating a Volume resource.",
      "in": "body",
      "name": "volumeResourceDescription",
      "required": true,
      "schema": {
        "$ref": "#/definitions/VolumeResourceDescription"
      },
      "x-ms-parameter-location": "method"
    },
    "VolumeResourceNameRequiredPathParam": {
      "description": "The identity of the volume.",
      "in": "path",
      "name": "volumeResourceName",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method",
      "x-ms-skip-url-encoding": true
    },
    "api-versionRequiredQueryParam": {
      "default": "2018-09-01-preview",
      "description": "The version of the API. This parameter is required and its value must be `2018-09-01-preview`.",
      "enum": [
        "2018-09-01-preview"
      ],
      "in": "query",
      "name": "api-version",
      "required": true,
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "2018-09-01-preview",
        "values": [
          {
            "description": "The `2018-09-01-preview` version of the API.",
            "value": "2018-09-01-preview"
          }
        ]
      }
    },
    "subscriptionIdRequiredPathParam": {
      "description": "The customer subscription identifier",
      "in": "path",
      "name": "subscriptionId",
      "required": true,
      "type": "string"
    }
  },
  "paths": {
    "/providers/Microsoft.ServiceFabricMesh/operations": {
      "get": {
        "description": "Lists all the available operations provided by Service Fabric SeaBreeze resource provider.",
        "operationId": "Operations_List",
        "parameters": [
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK. The request has succeeded.",
            "schema": {
              "$ref": "#/definitions/OperationListResult"
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Lists all of the available operations.",
        "tags": [
          "Operations"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/applications": {
      "get": {
        "description": "Gets the information about all application resources in a given resource group. The information include the description and other properties of the application.",
        "operationId": "Application_ListBySubscription",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ApplicationResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the application resources in a given subscription.",
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "ListApplicationsBySubscriptionId": {
            "description": "This example shows how to list all application resources for a specified subscription.",
            "operationId": "Application_ListBySubscriptionId",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/applications/sampleApplication",
                      "location": "EastUS",
                      "name": "sampleApplication",
                      "properties": {
                        "description": "Service Fabric Mesh sample application.",
                        "healthState": "Ok",
                        "provisioningState": "Succeeded",
                        "serviceNames": [
                          "helloWorldService"
                        ],
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/applications"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/gateways": {
      "get": {
        "description": "Gets the information about all gateway resources in a given resource group. The information include the description and other properties of the gateway.",
        "operationId": "Gateway_ListBySubscription",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/GatewayResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the gateway resources in a given subscription.",
        "tags": [
          "Gateways"
        ],
        "x-ms-examples": {
          "ListGatewaysBySubscriptionId": {
            "description": "This example shows how to list all gateway resources for a specified subscription.",
            "operationId": "Gateway_ListBySubscriptionId",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/gateways/sampleGateway",
                      "location": "EastUS",
                      "name": "sampleGateway",
                      "properties": {
                        "description": "Service Fabric Mesh sample gateway.",
                        "destinationNetwork": {
                          "name": "helloWorldNetwork"
                        },
                        "http": [
                          {
                            "hosts": [
                              {
                                "name": "contoso.com",
                                "routes": [
                                  {
                                    "destination": {
                                      "applicationName": "httpHelloWorldApp",
                                      "endpointName": "indexHttpEndpoint",
                                      "serviceName": "indexService"
                                    },
                                    "match": {
                                      "headers": [
                                        {
                                          "name": "accept",
                                          "type": "exact",
                                          "value": "application/json"
                                        }
                                      ],
                                      "path": {
                                        "rewrite": "/",
                                        "type": "prefix",
                                        "value": "/index"
                                      }
                                    },
                                    "name": "index"
                                  }
                                ]
                              }
                            ],
                            "name": "contosoWebsite",
                            "port": 8081
                          }
                        ],
                        "ipAddress": "192.168.1.1",
                        "provisioningState": "Succeeded",
                        "sourceNetwork": {
                          "name": "Open"
                        },
                        "status": "Ready",
                        "tcp": [
                          {
                            "destination": {
                              "applicationName": "helloWorldApp",
                              "endpointName": "helloWorldListener",
                              "serviceName": "helloWorldService"
                            },
                            "name": "web",
                            "port": 80
                          }
                        ]
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/gateways"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/networks": {
      "get": {
        "description": "Gets the information about all network resources in a given resource group. The information include the description and other properties of the network.",
        "operationId": "Network_ListBySubscription",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/NetworkResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the network resources in a given subscription.",
        "tags": [
          "Networks"
        ],
        "x-ms-examples": {
          "ListNetworksBySubscriptionId": {
            "description": "This example shows how to list all network resources for a specified subscription.",
            "operationId": "Network_ListBySubscriptionId",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork",
                      "location": "EastUS",
                      "name": "sampleNetwork",
                      "properties": {
                        "description": "Service Fabric Mesh sample network.",
                        "kind": "Local",
                        "networkAddressPrefix": "2.0.0.0/16",
                        "provisioningState": "Succeeded",
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/networks"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/secrets": {
      "get": {
        "description": "Gets the information about all secret resources in a given resource group. The information include the description and other properties of the secret.",
        "operationId": "Secret_ListBySubscription",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the secret resources in a given subscription.",
        "tags": [
          "Secrets"
        ],
        "x-ms-examples": {
          "ListSecretsBySubscriptionId": {
            "description": "This example shows how to list all secret resources for a specified subscription.",
            "operationId": "Secret_ListBySubscriptionId",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString",
                      "location": "EastUS",
                      "name": "dbConnectionString",
                      "properties": {
                        "contentType": "text/plain",
                        "description": "Mongo DB connection string for backend database!",
                        "kind": "inlinedValue",
                        "provisioningState": "Succeeded",
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/secrets"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/providers/Microsoft.ServiceFabricMesh/volumes": {
      "get": {
        "description": "Gets the information about all volume resources in a given resource group. The information include the description and other properties of the volume.",
        "operationId": "Volume_ListBySubscription",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/VolumeResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the volume resources in a given subscription.",
        "tags": [
          "Volumes"
        ],
        "x-ms-examples": {
          "ListVolumesBySubscriptionId": {
            "description": "This example shows how to list all volume resources for a specified subscription.",
            "operationId": "Volume_ListBySubscriptionId",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/volumes/sampleVolume",
                      "location": "EastUS",
                      "name": "sampleVolume",
                      "properties": {
                        "azureFileParameters": {
                          "accountName": "sbzdemoaccount",
                          "shareName": "sharel"
                        },
                        "description": "Service Fabric Mesh sample volume.",
                        "provider": "SFAzureFile",
                        "provisioningState": "Succeeded",
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/volumes"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/applications": {
      "get": {
        "description": "Gets the information about all application resources in a given resource group. The information include the description and other properties of the Application.",
        "operationId": "Application_ListByResourceGroup",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ApplicationResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the application resources in a given resource group.",
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "ListApplicationsByResourceGroup": {
            "description": "This example shows how to list all application resources within a specified resource group.",
            "operationId": "Application_ListByResourceGroup",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/applications/sampleApplication",
                      "location": "EastUS",
                      "name": "sampleApplication",
                      "properties": {
                        "description": "Service Fabric Mesh sample application.",
                        "healthState": "Ok",
                        "provisioningState": "Succeeded",
                        "serviceNames": [
                          "helloWorldService"
                        ],
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/applications"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/applications/{applicationResourceName}": {
      "delete": {
        "description": "Deletes the application resource identified by the name.",
        "operationId": "Application_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted"
          },
          "204": {
            "description": "No Content - the specified application was not found."
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Deletes the application resource.",
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "DeleteApplication": {
            "description": "This example shows how to delete an existing application resource. If the application resource exists and is deleted successfully, an empty response with 200 status code is returned. If the application resource does not exit, an empty response with 204 status code is returned.",
            "operationId": "Application_Delete",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "applicationResourceName": "sampleApplication",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Gets the information about the application resource with the given name. The information include the description and other properties of the application.",
        "operationId": "Application_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ApplicationResourceDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the application resource with the given name.",
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "GetApplication": {
            "description": "This example shows how to get a application resource. If the application resource exists, its description is returned along with an OK (200) status code. If the application resource does not exist, an error is returned with an appropriate status code.",
            "operationId": "Application_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "applicationResourceName": "sampleApplication",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/applications/sampleApplication",
                  "location": "EastUS",
                  "name": "sampleApplication",
                  "properties": {
                    "description": "Service Fabric Mesh sample application.",
                    "healthState": "Ok",
                    "provisioningState": "Succeeded",
                    "serviceNames": [
                      "helloWorldService"
                    ],
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/applications"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates an application resource with the specified name, description and properties. If an application resource with the same name exists, then it is updated with the specified description and properties.",
        "operationId": "Application_Create",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceDescriptionRequiredBodyParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ApplicationResourceDescription"
            }
          },
          "201": {
            "description": "Created",
            "schema": {
              "$ref": "#/definitions/ApplicationResourceDescription"
            }
          },
          "202": {
            "description": "Accepted"
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Creates or updates an application resource.",
        "tags": [
          "Applications"
        ],
        "x-ms-examples": {
          "CreateOrUpdateApplication": {
            "description": "This example shows how to create or update a application resource.",
            "operationId": "Application_Create",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "applicationResourceDescription": {
                "location": "EastUS",
                "properties": {
                  "description": "Service Fabric Mesh sample application.",
                  "services": [
                    {
                      "name": "helloWorldService",
                      "properties": {
                        "codePackages": [
                          {
                            "endpoints": [
                              {
                                "name": "helloWorldListener",
                                "port": 80
                              }
                            ],
                            "image": "seabreeze/sbz-helloworld:1.0-alpine",
                            "name": "helloWorldCode",
                            "resources": {
                              "requests": {
                                "cpu": 1,
                                "memoryInGB": 1
                              }
                            }
                          }
                        ],
                        "description": "SeaBreeze Hello World Service.",
                        "networkRefs": [
                          {
                            "endpointRefs": [
                              {
                                "name": "helloWorldListener"
                              }
                            ],
                            "name": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork"
                          }
                        ],
                        "osType": "Linux",
                        "replicaCount": 1
                      }
                    }
                  ]
                },
                "tags": {}
              },
              "applicationResourceName": "sampleApplication",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/applications/sampleApplication",
                  "location": "EastUS",
                  "name": "sampleApplication",
                  "properties": {
                    "description": "Service Fabric Mesh sample application.",
                    "healthState": "Ok",
                    "provisioningState": "Succeeded",
                    "serviceNames": [
                      "helloWorldService"
                    ],
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/applications"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/applications/sampleApplication",
                  "location": "EastUS",
                  "name": "sampleApplication",
                  "properties": {
                    "description": "Service Fabric Mesh sample application.",
                    "healthState": "Unknown",
                    "provisioningState": "Updating",
                    "serviceNames": [
                      "helloWorldService"
                    ],
                    "status": "Creating"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/applications"
                }
              },
              "202": {}
            }
          }
        },
        "x-sf-codegen": {
          "Powershell": {
            "skipGeneration": "true"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/applications/{applicationResourceName}/services": {
      "get": {
        "description": "Gets the information about all services of an application resource. The information include the description and other properties of the Service.",
        "operationId": "Service_List",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ServiceResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Lists all the service resources.",
        "tags": [
          "Services"
        ],
        "x-ms-examples": {
          "ListServices": {
            "description": "This example shows how to list all services of a given application.",
            "operationId": "Service_List",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "applicationResourceName": "sampleApplication",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/applications/sampleApplication/services/helloWorldService",
                      "name": "helloWorldService",
                      "properties": {
                        "codePackages": [
                          {
                            "endpoints": [
                              {
                                "name": "helloWorldListener",
                                "port": 80
                              }
                            ],
                            "image": "seabreeze/sbz-helloworld:1.0-alpine",
                            "name": "helloWorldCode",
                            "resources": {
                              "requests": {
                                "cpu": 1,
                                "memoryInGB": 1
                              }
                            }
                          }
                        ],
                        "description": "SeaBreeze Hello World Service.",
                        "healthState": "Ok",
                        "networkRefs": [
                          {
                            "endpointRefs": [
                              {
                                "name": "helloWorldListener"
                              }
                            ],
                            "name": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork"
                          }
                        ],
                        "osType": "Linux",
                        "replicaCount": 1,
                        "status": "Ready"
                      },
                      "type": "Microsoft.ServiceFabricMesh/services"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/applications/{applicationResourceName}/services/{serviceResourceName}": {
      "get": {
        "description": "Gets the information about the service resource with the given name. The information include the description and other properties of the service.",
        "operationId": "Service_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ServiceResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ServiceResourceDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the service resource with the given name.",
        "tags": [
          "Services"
        ],
        "x-ms-examples": {
          "GetService": {
            "description": "This example shows how to get a service resource for a given application. If the service resource exists, its description is returned along with an OK (200) status code. If the service resource does not exist, an error is returned with an appropriate status code.",
            "operationId": "Service_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "applicationResourceName": "sampleApplication",
              "resourceGroupName": "sbz_demo",
              "serviceResourceName": "helloWorldService",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/applications/sampleApplication/services/helloWorldService",
                  "name": "helloWorldService",
                  "properties": {
                    "codePackages": [
                      {
                        "endpoints": [
                          {
                            "name": "helloWorldListener",
                            "port": 80
                          }
                        ],
                        "image": "seabreeze/sbz-helloworld:1.0-alpine",
                        "name": "helloWorldCode",
                        "resources": {
                          "requests": {
                            "cpu": 1,
                            "memoryInGB": 1
                          }
                        }
                      }
                    ],
                    "description": "SeaBreeze Hello World Service.",
                    "healthState": "Ok",
                    "networkRefs": [
                      {
                        "endpointRefs": [
                          {
                            "name": "helloWorldListener"
                          }
                        ],
                        "name": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork"
                      }
                    ],
                    "osType": "Linux",
                    "replicaCount": 1,
                    "status": "Ready"
                  },
                  "type": "Microsoft.ServiceFabricMesh/services"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/applications/{applicationResourceName}/services/{serviceResourceName}/replicas": {
      "get": {
        "description": "Gets the information about all replicas of a given service of an application. The information includes the runtime properties of the replica instance.",
        "operationId": "ServiceReplica_List",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ServiceResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ServiceReplicaDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets replicas of a given service.",
        "tags": [
          "ServiceReplicas"
        ],
        "x-ms-examples": {
          "ReplicasGetAll": {
            "description": "This example shows how to list replicas of a service resources for a given application.",
            "operationId": "ServiceReplica_List",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "applicationResourceName": "sampleApplication",
              "resourceGroupName": "sbz_demo",
              "serviceResourceName": "helloWorldService",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "codePackages": [
                        {
                          "endpoints": [
                            {
                              "name": "helloWorldListener",
                              "port": 80
                            }
                          ],
                          "image": "seabreeze/sbz-helloworld:1.0-alpine",
                          "instanceView": {
                            "currentState": {
                              "exitCode": "0",
                              "state": "Running"
                            },
                            "events": [
                              {
                                "count": 3,
                                "firstTimestamp": "2018-04-05T22:37:20.9016844",
                                "lastTimestamp": "2018-04-06T06:36:06.0887046",
                                "message": "Container created and started.",
                                "name": "Created",
                                "type": "Normal"
                              },
                              {
                                "count": 1,
                                "firstTimestamp": "2018-04-06T06:34:00.6622454",
                                "lastTimestamp": "2018-04-06T06:34:00.6622454",
                                "message": "Container was stopped.",
                                "name": "Stopped",
                                "type": "Normal"
                              }
                            ],
                            "previousState": {
                              "exitCode": "0",
                              "state": "NotSpecified"
                            },
                            "restartCount": 1
                          },
                          "name": "helloWorldCode",
                          "resources": {
                            "requests": {
                              "cpu": 1,
                              "memoryInGB": 1
                            }
                          }
                        }
                      ],
                      "networkRefs": [
                        {
                          "endpointRefs": [
                            {
                              "name": "helloWorldListener"
                            }
                          ],
                          "name": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork"
                        }
                      ],
                      "osType": "Linux",
                      "replicaName": "0"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/applications/{applicationResourceName}/services/{serviceResourceName}/replicas/{replicaName}": {
      "get": {
        "description": "Gets the information about the service replica with the given name. The information include the description and other properties of the service replica.",
        "operationId": "ServiceReplica_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ServiceResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ReplicaNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/ServiceReplicaDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the given replica of the service of an application.",
        "tags": [
          "ServiceReplicas"
        ],
        "x-ms-examples": {
          "ReplicaGet": {
            "description": "This example shows how to get information about given replica of a service. If the replica exists, its description is returned along with an OK (200) status code. If the replica does not exist, an error is returned with an appropriate status code.",
            "operationId": "ServiceReplica_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "applicationResourceName": "helloWorldApp",
              "replicaName": "0",
              "resourceGroupName": "sbz_demo",
              "serviceResourceName": "helloWorldService",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "codePackages": [
                    {
                      "endpoints": [
                        {
                          "name": "helloWorldListener",
                          "port": 80
                        }
                      ],
                      "image": "seabreeze/sbz-helloworld:1.0-alpine",
                      "instanceView": {
                        "currentState": {
                          "exitCode": "0",
                          "state": "Running"
                        },
                        "events": [
                          {
                            "count": 3,
                            "firstTimestamp": "2018-04-05T22:37:20.9016844",
                            "lastTimestamp": "2018-04-06T06:36:06.0887046",
                            "message": "Container created and started.",
                            "name": "Created",
                            "type": "Normal"
                          },
                          {
                            "count": 1,
                            "firstTimestamp": "2018-04-06T06:34:00.6622454",
                            "lastTimestamp": "2018-04-06T06:34:00.6622454",
                            "message": "Container was stopped.",
                            "name": "Stopped",
                            "type": "Normal"
                          }
                        ],
                        "previousState": {
                          "exitCode": "0",
                          "state": "NotSpecified"
                        },
                        "restartCount": 1
                      },
                      "name": "helloWorldCode",
                      "resources": {
                        "requests": {
                          "cpu": 1,
                          "memoryInGB": 1
                        }
                      }
                    }
                  ],
                  "networkRefs": [
                    {
                      "endpointRefs": [
                        {
                          "name": "helloWorldListener"
                        }
                      ],
                      "name": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork"
                    }
                  ],
                  "osType": "Linux",
                  "replicaName": "0"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/applications/{applicationResourceName}/services/{serviceResourceName}/replicas/{replicaName}/codePackages/{codePackageName}/logs": {
      "get": {
        "description": "Gets the logs for the container of the specified code package of the service replica.",
        "operationId": "CodePackage_GetContainerLogs",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ApplicationResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ServiceResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/ReplicaNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/CodePackageNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/TailOptionalQueryParam"
          }
        ],
        "responses": {
          "200": {
            "description": "Successful response",
            "schema": {
              "$ref": "#/definitions/ContainerLogs"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the logs from the container.",
        "tags": [
          "CodePackages"
        ],
        "x-ms-examples": {
          "GetContainerLogs": {
            "description": "This example shows how to get logs from the container of service replica. If the container exists, the logs are returned with an OK (200) status code, otherwise an error is returned with an appropriate status code.",
            "operationId": "CodePackage_GetContainerLogs",
            "parameters": {
              "api-version": "6.4-preview",
              "applicationResourceName": "sbzDocApp",
              "codePackageName": "sbzDocCode",
              "replicaName": "0",
              "resourceGroupName": "sbz_demo",
              "serviceResourceName": "sbzDocService",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "content": " * Running on http://0.0.0.0:8080/ (Press CTRL+C to quit)\n * Downloading style https://assets-cdn.github.com/assets/frameworks-8f281eb0a8d2308ceb36e714ba3c3aec.css\n * Downloading style https://assets-cdn.github.com/assets/github-a698da0d53574b056d3c79ac732d4a70.css\n * Downloading style https://assets-cdn.github.com/assets/site-83dc1f7ebc9c7461fe1eab799b56c4c4.css\n * Cached all downloads in /root/.grip/cache-4.5.2\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET / HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/frameworks-8f281eb0a8d2308ceb36e714ba3c3aec.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/site-83dc1f7ebc9c7461fe1eab799b56c4c4.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/asset/github-a698da0d53574b056d3c79ac732d4a70.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:02] \"GET /__/grip/static/octicons/octicons.css HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:03] \"GET /__/grip/static/octicons/octicons.woff2?ef21c39f0ca9b1b5116e5eb7ac5eabe6 HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:03] \"GET /__/grip/static/favicon.ico HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:05] \"GET /seabreeze-index.md HTTP/1.1\" 200 -\n167.220.0.83 - - [06/Apr/2018 07:16:09] \"GET /seabreeze-api-application_get.md HTTP/1.1\" 200 -\n"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/gateways": {
      "get": {
        "description": "Gets the information about all gateway resources in a given resource group. The information include the description and other properties of the Gateway.",
        "operationId": "Gateway_ListByResourceGroup",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/GatewayResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the gateway resources in a given resource group.",
        "tags": [
          "Gateways"
        ],
        "x-ms-examples": {
          "ListGatewaysByResourceGroup": {
            "description": "This example shows how to list all gateway resources within a specified resource group.",
            "operationId": "Gateway_ListByResourceGroup",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/gateways/sampleGateway",
                      "location": "EastUS",
                      "name": "sampleGateway",
                      "properties": {
                        "description": "Service Fabric Mesh sample gateway.",
                        "destinationNetwork": {
                          "name": "helloWorldNetwork"
                        },
                        "http": [
                          {
                            "hosts": [
                              {
                                "name": "contoso.com",
                                "routes": [
                                  {
                                    "destination": {
                                      "applicationName": "httpHelloWorldApp",
                                      "endpointName": "indexHttpEndpoint",
                                      "serviceName": "indexService"
                                    },
                                    "match": {
                                      "headers": [
                                        {
                                          "name": "accept",
                                          "type": "exact",
                                          "value": "application/json"
                                        }
                                      ],
                                      "path": {
                                        "rewrite": "/",
                                        "type": "prefix",
                                        "value": "/index"
                                      }
                                    },
                                    "name": "index"
                                  }
                                ]
                              }
                            ],
                            "name": "contosoWebsite",
                            "port": 8081
                          }
                        ],
                        "ipAddress": "192.168.1.1",
                        "provisioningState": "Succeeded",
                        "sourceNetwork": {
                          "name": "Open"
                        },
                        "status": "Ready",
                        "tcp": [
                          {
                            "destination": {
                              "applicationName": "helloWorldApp",
                              "endpointName": "helloWorldListener",
                              "serviceName": "helloWorldService"
                            },
                            "name": "web",
                            "port": 80
                          }
                        ]
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/gateways"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/gateways/{gatewayResourceName}": {
      "delete": {
        "description": "Deletes the gateway resource identified by the name.",
        "operationId": "Gateway_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/GatewayResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted"
          },
          "204": {
            "description": "No Content - the specified gateway was not found."
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Deletes the gateway resource.",
        "tags": [
          "Gateways"
        ],
        "x-ms-examples": {
          "DeleteGateway": {
            "description": "This example shows how to delete an existing gateway resource. If the gateway resource exists and is deleted successfully, an empty response with 200 status code is returned. If the gateway resource does not exist, an empty response with 204 status code is returned.",
            "operationId": "Gateway_Delete",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "gatewayResourceName": "sampleGateway",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Gets the information about the gateway resource with the given name. The information include the description and other properties of the gateway.",
        "operationId": "Gateway_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/GatewayResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/GatewayResourceDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the gateway resource with the given name.",
        "tags": [
          "Gateways"
        ],
        "x-ms-examples": {
          "GetGateway": {
            "description": "This example shows how to get a gateway resource. If the gateway resource exists, its description is returned along with an OK (200) status code. If the gateway resource does not exist, an error is returned with an appropriate status code.",
            "operationId": "Gateway_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "gatewayResourceName": "sampleGateway",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/gateways/sampleGateway",
                  "location": "EastUS",
                  "name": "sampleGateway",
                  "properties": {
                    "description": "Service Fabric Mesh sample gateway.",
                    "destinationNetwork": {
                      "name": "helloWorldNetwork"
                    },
                    "http": [
                      {
                        "hosts": [
                          {
                            "name": "contoso.com",
                            "routes": [
                              {
                                "destination": {
                                  "applicationName": "httpHelloWorldApp",
                                  "endpointName": "indexHttpEndpoint",
                                  "serviceName": "indexService"
                                },
                                "match": {
                                  "headers": [
                                    {
                                      "name": "accept",
                                      "type": "exact",
                                      "value": "application/json"
                                    }
                                  ],
                                  "path": {
                                    "rewrite": "/",
                                    "type": "prefix",
                                    "value": "/index"
                                  }
                                },
                                "name": "index"
                              }
                            ]
                          }
                        ],
                        "name": "contosoWebsite",
                        "port": 8081
                      }
                    ],
                    "ipAddress": "192.168.1.1",
                    "provisioningState": "Succeeded",
                    "sourceNetwork": {
                      "name": "Open"
                    },
                    "status": "Ready",
                    "tcp": [
                      {
                        "destination": {
                          "applicationName": "helloWorldApp",
                          "endpointName": "helloWorldListener",
                          "serviceName": "helloWorldService"
                        },
                        "name": "web",
                        "port": 80
                      }
                    ]
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/gateways"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates a gateway resource with the specified name, description and properties. If a gateway resource with the same name exists, then it is updated with the specified description and properties. Use gateway resources to create a gateway for public connectivity for services within your application.",
        "operationId": "Gateway_Create",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/GatewayResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/GatewayResourceDescriptionRequiredBodyParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/GatewayResourceDescription"
            }
          },
          "201": {
            "description": "Created",
            "schema": {
              "$ref": "#/definitions/GatewayResourceDescription"
            }
          },
          "202": {
            "description": "Accepted"
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Creates or updates a gateway resource.",
        "tags": [
          "Gateways"
        ],
        "x-ms-examples": {
          "CreateOrUpdateGateway": {
            "description": "This example shows how to create or update a gateway resource.",
            "operationId": "Gateway_Create",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "gatewayResourceDescription": {
                "location": "EastUS",
                "properties": {
                  "description": "Service Fabric Mesh sample gateway.",
                  "destinationNetwork": {
                    "name": "helloWorldNetwork"
                  },
                  "http": [
                    {
                      "hosts": [
                        {
                          "name": "contoso.com",
                          "routes": [
                            {
                              "destination": {
                                "applicationName": "httpHelloWorldApp",
                                "endpointName": "indexHttpEndpoint",
                                "serviceName": "indexService"
                              },
                              "match": {
                                "headers": [
                                  {
                                    "name": "accept",
                                    "type": "exact",
                                    "value": "application/json"
                                  }
                                ],
                                "path": {
                                  "rewrite": "/",
                                  "type": "prefix",
                                  "value": "/index"
                                }
                              },
                              "name": "index"
                            }
                          ]
                        }
                      ],
                      "name": "contosoWebsite",
                      "port": 8081
                    }
                  ],
                  "sourceNetwork": {
                    "name": "Open"
                  },
                  "tcp": [
                    {
                      "destination": {
                        "applicationName": "helloWorldApp",
                        "endpointName": "helloWorldListener",
                        "serviceName": "helloWorldService"
                      },
                      "name": "web",
                      "port": 80
                    }
                  ]
                },
                "tags": {}
              },
              "gatewayResourceName": "sampleGateway",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/gateways/sampleGateway",
                  "location": "EastUS",
                  "name": "sampleGateway",
                  "properties": {
                    "description": "Service Fabric Mesh sample gateway.",
                    "destinationNetwork": {
                      "name": "helloWorldNetwork"
                    },
                    "http": [
                      {
                        "hosts": [
                          {
                            "name": "contoso.com",
                            "routes": [
                              {
                                "destination": {
                                  "applicationName": "httpHelloWorldApp",
                                  "endpointName": "indexHttpEndpoint",
                                  "serviceName": "indexService"
                                },
                                "match": {
                                  "headers": [
                                    {
                                      "name": "accept",
                                      "type": "exact",
                                      "value": "application/json"
                                    }
                                  ],
                                  "path": {
                                    "rewrite": "/",
                                    "type": "prefix",
                                    "value": "/index"
                                  }
                                },
                                "name": "index"
                              }
                            ]
                          }
                        ],
                        "name": "contosoWebsite",
                        "port": 8081
                      }
                    ],
                    "ipAddress": "192.168.1.1",
                    "provisioningState": "Succeeded",
                    "sourceNetwork": {
                      "name": "Open"
                    },
                    "status": "Ready",
                    "tcp": [
                      {
                        "destination": {
                          "applicationName": "helloWorldApp",
                          "endpointName": "helloWorldListener",
                          "serviceName": "helloWorldService"
                        },
                        "name": "web",
                        "port": 80
                      }
                    ]
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/gateways"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/gateways/sampleGateway",
                  "location": "EastUS",
                  "name": "sampleGateway",
                  "properties": {
                    "description": "Service Fabric Mesh sample gateway.",
                    "destinationNetwork": {
                      "name": "helloWorldNetwork"
                    },
                    "http": [
                      {
                        "hosts": [
                          {
                            "name": "contoso.com",
                            "routes": [
                              {
                                "destination": {
                                  "applicationName": "httpHelloWorldApp",
                                  "endpointName": "indexHttpEndpoint",
                                  "serviceName": "indexService"
                                },
                                "match": {
                                  "headers": [
                                    {
                                      "name": "accept",
                                      "type": "exact",
                                      "value": "application/json"
                                    }
                                  ],
                                  "path": {
                                    "rewrite": "/",
                                    "type": "prefix",
                                    "value": "/index"
                                  }
                                },
                                "name": "index"
                              }
                            ]
                          }
                        ],
                        "name": "contosoWebsite",
                        "port": 8081
                      }
                    ],
                    "provisioningState": "Updating",
                    "sourceNetwork": {
                      "name": "Open"
                    },
                    "status": "Creating",
                    "tcp": [
                      {
                        "destination": {
                          "applicationName": "helloWorldApp",
                          "endpointName": "helloWorldListener",
                          "serviceName": "helloWorldService"
                        },
                        "name": "web",
                        "port": 80
                      }
                    ]
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/gateways"
                }
              },
              "202": {}
            }
          }
        },
        "x-sf-codegen": {
          "Powershell": {
            "skipGeneration": "true"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/networks": {
      "get": {
        "description": "Gets the information about all network resources in a given resource group. The information include the description and other properties of the Network.",
        "operationId": "Network_ListByResourceGroup",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/NetworkResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the network resources in a given resource group.",
        "tags": [
          "Networks"
        ],
        "x-ms-examples": {
          "ListNetworksByResourceGroup": {
            "description": "This example shows how to list all network resources within a specified resource group.",
            "operationId": "Network_ListByResourceGroup",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork",
                      "location": "EastUS",
                      "name": "sampleNetwork",
                      "properties": {
                        "description": "Service Fabric Mesh sample network.",
                        "kind": "Local",
                        "networkAddressPrefix": "2.0.0.0/16",
                        "provisioningState": "Succeeded",
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/networks"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/networks/{networkResourceName}": {
      "delete": {
        "description": "Deletes the network resource identified by the name.",
        "operationId": "Network_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/NetworkResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted"
          },
          "204": {
            "description": "No Content - the specified network was not found."
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Deletes the network resource.",
        "tags": [
          "Networks"
        ],
        "x-ms-examples": {
          "DeleteNetwork": {
            "description": "This example shows how to delete an existing network resource. If the network resource exists and is deleted successfully, an empty response with 200 status code is returned. If the network resource does not exist, an empty response with 204 status code is returned.",
            "operationId": "Network_Delete",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "networkResourceName": "sampleNetwork",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Gets the information about the network resource with the given name. The information include the description and other properties of the network.",
        "operationId": "Network_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/NetworkResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/NetworkResourceDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the network resource with the given name.",
        "tags": [
          "Networks"
        ],
        "x-ms-examples": {
          "GetNetwork": {
            "description": "This example shows how to get a network resource. If the network resource exists, its description is returned along with an OK (200) status code. If the network resource does not exist, an error is returned with an appropriate status code.",
            "operationId": "Network_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "networkResourceName": "sampleNetwork",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork",
                  "location": "EastUS",
                  "name": "sampleNetwork",
                  "properties": {
                    "description": "Service Fabric Mesh sample network.",
                    "kind": "Local",
                    "networkAddressPrefix": "2.0.0.0/16",
                    "provisioningState": "Succeeded",
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/networks"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates a network resource with the specified name, description and properties. If a network resource with the same name exists, then it is updated with the specified description and properties.",
        "operationId": "Network_Create",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/NetworkResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/NetworkResourceDescriptionRequiredBodyParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/NetworkResourceDescription"
            }
          },
          "201": {
            "description": "Created",
            "schema": {
              "$ref": "#/definitions/NetworkResourceDescription"
            }
          },
          "202": {
            "description": "Accepted"
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Creates or updates a network resource.",
        "tags": [
          "Networks"
        ],
        "x-ms-examples": {
          "CreateOrUpdateNetwork": {
            "description": "This example shows how to create or update a network resource.",
            "operationId": "Network_Create",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "networkResourceDescription": {
                "location": "EastUS",
                "properties": {
                  "description": "Service Fabric Mesh sample network.",
                  "kind": "Local",
                  "networkAddressPrefix": "2.0.0.0/16"
                },
                "tags": {}
              },
              "networkResourceName": "sampleNetwork",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork",
                  "location": "EastUS",
                  "name": "sampleNetwork",
                  "properties": {
                    "description": "Service Fabric Mesh sample network.",
                    "kind": "Local",
                    "networkAddressPrefix": "2.0.0.0/16",
                    "provisioningState": "Succeeded",
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/networks"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/networks/sampleNetwork",
                  "location": "EastUS",
                  "name": "sampleNetwork",
                  "properties": {
                    "description": "Service Fabric Mesh sample network.",
                    "kind": "Local",
                    "networkAddressPrefix": "2.0.0.0/16",
                    "provisioningState": "Updating",
                    "status": "Creating"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/networks"
                }
              },
              "202": {}
            }
          }
        },
        "x-sf-codegen": {
          "Powershell": {
            "skipGeneration": "true"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/secrets": {
      "get": {
        "description": "Gets the information about all secret resources in a given resource group. The information include the description and other properties of the Secret.",
        "operationId": "Secret_ListByResourceGroup",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the secret resources in a given resource group.",
        "tags": [
          "Secrets"
        ],
        "x-ms-examples": {
          "ListSecretsByResourceGroup": {
            "description": "This example shows how to list all secret resources within a specified resource group.",
            "operationId": "Secret_ListByResourceGroup",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString",
                      "location": "EastUS",
                      "name": "dbConnectionString",
                      "properties": {
                        "contentType": "text/plain",
                        "description": "Mongo DB connection string for backend database!",
                        "kind": "inlinedValue",
                        "provisioningState": "Succeeded",
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/secrets"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/secrets/{secretResourceName}": {
      "delete": {
        "description": "Deletes the secret resource identified by the name.",
        "operationId": "Secret_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted"
          },
          "204": {
            "description": "No Content - the specified secret was not found."
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Deletes the secret resource.",
        "tags": [
          "Secrets"
        ],
        "x-ms-examples": {
          "DeleteSecret": {
            "description": "This example shows how to delete an existing secret resource. If the secret resource exists and is deleted successfully, an empty response with 200 status code is returned. If the secret resource does not exit, an empty response with 204 status code is returned.",
            "operationId": "Secret_Delete",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceName": "dbConnectionString",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Gets the information about the secret resource with the given name. The information include the description and other properties of the secret.",
        "operationId": "Secret_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretResourceDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the secret resource with the given name.",
        "tags": [
          "Secrets"
        ],
        "x-ms-examples": {
          "GetSecret": {
            "description": "This example shows how to get a secret resource. If the secret resource exists, its description is returned along with an OK (200) status code. If the secret resource does not exist, an error is returned with an appropriate status code.",
            "operationId": "Secret_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceName": "dbConnectionString",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString",
                  "location": "EastUS",
                  "name": "dbConnectionString",
                  "properties": {
                    "contentType": "text/plain",
                    "description": "Mongo DB connection string for backend database!",
                    "kind": "inlinedValue",
                    "provisioningState": "Succeeded",
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/secrets"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates a secret resource with the specified name, description and properties. If a secret resource with the same name exists, then it is updated with the specified description and properties.",
        "operationId": "Secret_Create",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceDescriptionRequiredBodyParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretResourceDescription"
            }
          },
          "201": {
            "description": "Created",
            "schema": {
              "$ref": "#/definitions/SecretResourceDescription"
            }
          },
          "202": {
            "description": "Accepted"
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Creates or updates a secret resource.",
        "tags": [
          "Secrets"
        ],
        "x-ms-examples": {
          "CreateOrUpdateSecret": {
            "description": "This example shows how to create or update a secret resource.",
            "operationId": "Secret_Create",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceDescription": {
                "location": "EastUS",
                "properties": {
                  "contentType": "text/plain",
                  "description": "Mongo DB connection string for backend database!",
                  "kind": "inlinedValue"
                },
                "tags": {}
              },
              "secretResourceName": "dbConnectionString",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString",
                  "location": "EastUS",
                  "name": "dbConnectionString",
                  "properties": {
                    "contentType": "text/plain",
                    "description": "Mongo DB connection string for backend database!",
                    "kind": "inlinedValue",
                    "provisioningState": "Succeeded",
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/secrets"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString",
                  "location": "EastUS",
                  "name": "dbConnectionString",
                  "properties": {
                    "contentType": "text/plain",
                    "description": "Mongo DB connection string for backend database!",
                    "kind": "inlinedValue",
                    "provisioningState": "Updating",
                    "status": "Creating"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/secrets"
                }
              },
              "202": {}
            }
          }
        },
        "x-sf-codegen": {
          "Powershell": {
            "skipGeneration": "true"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/secrets/{secretResourceName}/values": {
      "get": {
        "description": "Gets information about all secret value resources of the specified secret resource. The information includes the names of the secret value resources, but not the actual values.",
        "operationId": "SecretValue_List",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretValueResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "List names of all values of the specified secret resource.",
        "tags": [
          "SecretValues"
        ],
        "x-ms-examples": {
          "ListSecretValues": {
            "description": "This example shows how to list names of all values of a secret resource, not including their respective values.",
            "operationId": "SecretValue_List",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceName": "dbConnectionString",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString/values/v1",
                      "location": "EastUS",
                      "name": "v1",
                      "properties": {
                        "provisioningState": "Succeeded",
                        "value": null
                      },
                      "type": "secrets/values"
                    },
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString/values/v2",
                      "location": "EastUS",
                      "name": "v2",
                      "properties": {
                        "provisioningState": "Succeeded",
                        "value": null
                      },
                      "type": "secrets/values"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/secrets/{secretResourceName}/values/{secretValueResourceName}": {
      "delete": {
        "description": "Deletes the secret value resource identified by the name. The name of the resource is typically the version associated with that value. Deletion will fail if the specified value is in use.",
        "operationId": "SecretValue_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted"
          },
          "204": {
            "description": "No Content - the specified named secret value was not found."
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Deletes the specified  value of the named secret resource.",
        "tags": [
          "SecretValues"
        ],
        "x-ms-examples": {
          "DeleteSecretValue": {
            "description": "This example shows how to delete a secret value. If the specified named value exists and is deleted successfully, an empty response with 200 status code is returned. If the specified named value does not exist, an empty response with 204 status code is returned.",
            "operationId": "SecretValue_Delete",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceName": "dbConnectionString",
              "secretValueResourceName": "v1",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Get the information about the specified named secret value resources. The information does not include the actual value of the secret.",
        "operationId": "SecretValue_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretValueResourceDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the specified secret value resource.",
        "tags": [
          "SecretValues"
        ],
        "x-ms-examples": {
          "GetSecretValue": {
            "description": "This example shows how to get the specified secret value resource. If the specified named value exists, its information is returned along with status code 200. The information does not include the value. To get the unecnrypted value use SecretValue_ListValue operation. If the specified named value does not exist, an error is returned with an appropriate status code.",
            "operationId": "SecretValue_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceName": "dbConnectionString",
              "secretValueResourceName": "v1",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString/values/v1",
                  "location": "EastUS",
                  "name": "v1",
                  "properties": {
                    "provisioningState": "Succeeded",
                    "value": null
                  },
                  "type": "secrets/values"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates a new value of the specified secret resource. The name of the value is typically the version identifier. Once created the value cannot be changed.",
        "operationId": "SecretValue_Create",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretValueResourceDescriptionRequiredBodyParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretValueResourceDescription"
            }
          },
          "201": {
            "description": "Created",
            "schema": {
              "$ref": "#/definitions/SecretValueResourceDescription"
            }
          },
          "202": {
            "description": "Accepted"
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Adds the specified value as a new version of the specified secret resource.",
        "tags": [
          "SecretValues"
        ],
        "x-ms-examples": {
          "CreateSecretValue": {
            "description": "This example shows how to add a new value of a secret resource; the secret value is provided as plaintext.",
            "operationId": "SecretValue_Create",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceName": "dbConnectionString",
              "secretValueResourceDescription": {
                "name": "v1",
                "properties": {
                  "value": "mongodb://contoso123:0Fc3IolnL12312asdfawejunASDF@asdfYXX2t8a97kghVcUzcDv98hawelufhawefafnoQRGwNj2nMPL1Y9qsIr9Srdw==@contoso123.documents.azure.com:10255/mydatabase?ssl=true"
                }
              },
              "secretValueResourceName": "v1",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString/values/v1",
                  "location": "EastUS",
                  "name": "v1",
                  "properties": {
                    "provisioningState": "Succeeded",
                    "value": null
                  },
                  "type": "secrets/values"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/secrets/dbConnectionString/values/v1",
                  "location": "EastUS",
                  "name": "v1",
                  "properties": {
                    "provisioningState": "Updating",
                    "value": null
                  },
                  "type": "secrets/values"
                }
              },
              "202": {}
            }
          }
        },
        "x-sf-codegen": {
          "Powershell": {
            "skipGeneration": "true"
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/secrets/{secretResourceName}/values/{secretValueResourceName}/list_value": {
      "post": {
        "description": "Lists the decrypted value of the specified named value of the secret resource. This is a privileged operation.",
        "operationId": "SecretValue_ListValue",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/SecretValueResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SecretValue"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Lists the specified value of the secret resource.",
        "tags": [
          "SecretValues"
        ],
        "x-ms-examples": {
          "ListSecretValue": {
            "description": "This example shows how to get the unencrypted value of the secret. If the specified named value resource exists, its unencrypted value is returned along with status code 200. If the specified named value does not exist, an error is returned with an appropriate status code.",
            "operationId": "SecretValue_ListValue",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "secretResourceName": "dbConnectionString",
              "secretValueResourceName": "v1",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": "mongodb://contoso123:0Fc3IolnL12312asdfawejunASDF@asdfYXX2t8a97kghVcUzcDv98hawelufhawefafnoQRGwNj2nMPL1Y9qsIr9Srdw==@contoso123.documents.azure.com:10255/mydatabase?ssl=true"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/volumes": {
      "get": {
        "description": "Gets the information about all volume resources in a given resource group. The information include the description and other properties of the Volume.",
        "operationId": "Volume_ListByResourceGroup",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/VolumeResourceDescriptionList"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets all the volume resources in a given resource group.",
        "tags": [
          "Volumes"
        ],
        "x-ms-examples": {
          "ListVolumesByResourceGroup": {
            "description": "This example shows how to list all volume resources within a specified resource group.",
            "operationId": "Volume_ListByResourceGroup",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000"
            },
            "responses": {
              "200": {
                "body": {
                  "value": [
                    {
                      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/volumes/sampleVolume",
                      "location": "EastUS",
                      "name": "sampleVolume",
                      "properties": {
                        "azureFileParameters": {
                          "accountName": "sbzdemoaccount",
                          "shareName": "sharel"
                        },
                        "description": "Service Fabric Mesh sample volume.",
                        "provider": "SFAzureFile",
                        "provisioningState": "Succeeded",
                        "status": "Ready"
                      },
                      "tags": {},
                      "type": "Microsoft.ServiceFabricMesh/volumes"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ServiceFabricMesh/volumes/{volumeResourceName}": {
      "delete": {
        "description": "Deletes the volume resource identified by the name.",
        "operationId": "Volume_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/VolumeResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          },
          "202": {
            "description": "Accepted"
          },
          "204": {
            "description": "No Content - the specified volume was not found."
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Deletes the volume resource.",
        "tags": [
          "Volumes"
        ],
        "x-ms-examples": {
          "DeleteVolume": {
            "description": "This example shows how to delete an existing volume resource. If the volume resource exists and is deleted successfully, an empty response with 200 status code is returned. If the volume resource does not exit, an empty response with 204 status code is returned.",
            "operationId": "Volume_Delete",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000",
              "volumeResourceName": "sampleVolume"
            },
            "responses": {
              "200": {},
              "202": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Gets the information about the volume resource with the given name. The information include the description and other properties of the volume.",
        "operationId": "Volume_Get",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/VolumeResourceNameRequiredPathParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/VolumeResourceDescription"
            }
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Gets the volume resource with the given name.",
        "tags": [
          "Volumes"
        ],
        "x-ms-examples": {
          "GetVolume": {
            "description": "This example shows how to get a volume resource. If the volume resource exists, its description is returned along with an OK (200) status code. If the volume resource does not exist, an error is returned with an appropriate status code.",
            "operationId": "Volume_Get",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000",
              "volumeResourceName": "sampleVolume"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/volumes/sampleVolume",
                  "location": "EastUS",
                  "name": "sampleVolume",
                  "properties": {
                    "azureFileParameters": {
                      "accountName": "sbzdemoaccount",
                      "shareName": "sharel"
                    },
                    "description": "Service Fabric Mesh sample volume.",
                    "provider": "SFAzureFile",
                    "provisioningState": "Succeeded",
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/volumes"
                }
              }
            }
          }
        }
      },
      "put": {
        "description": "Creates a volume resource with the specified name, description and properties. If a volume resource with the same name exists, then it is updated with the specified description and properties.",
        "operationId": "Volume_Create",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdRequiredPathParam"
          },
          {
            "$ref": "#/parameters/api-versionRequiredQueryParam"
          },
          {
            "$ref": "#/parameters/ResourceGroupNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/VolumeResourceNameRequiredPathParam"
          },
          {
            "$ref": "#/parameters/VolumeResourceDescriptionRequiredBodyParam"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/VolumeResourceDescription"
            }
          },
          "201": {
            "description": "Created",
            "schema": {
              "$ref": "#/definitions/VolumeResourceDescription"
            }
          },
          "202": {
            "description": "Accepted"
          },
          "default": {
            "description": "Error",
            "schema": {
              "$ref": "#/definitions/ErrorModel"
            }
          }
        },
        "summary": "Creates or updates a volume resource.",
        "tags": [
          "Volumes"
        ],
        "x-ms-examples": {
          "CreateOrUpdateVolume": {
            "description": "This example shows how to create or update a volume resource.",
            "operationId": "Volume_Create",
            "parameters": {
              "api-version": "2018-09-01-privatepreview",
              "resourceGroupName": "sbz_demo",
              "subscriptionId": "00000000-0000-0000-0000-000000000000",
              "volumeResourceDescription": {
                "location": "EastUS",
                "properties": {
                  "azureFileParameters": {
                    "accountKey": "provide-account-key-here",
                    "accountName": "sbzdemoaccount",
                    "shareName": "sharel"
                  },
                  "description": "Service Fabric Mesh sample volume.",
                  "provider": "SFAzureFile"
                },
                "tags": {}
              },
              "volumeResourceName": "sampleVolume"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/volumes/sampleVolume",
                  "location": "EastUS",
                  "name": "sampleVolume",
                  "properties": {
                    "azureFileParameters": {
                      "accountName": "sbzdemoaccount",
                      "shareName": "sharel"
                    },
                    "description": "Service Fabric Mesh sample volume.",
                    "provider": "SFAzureFile",
                    "provisioningState": "Succeeded",
                    "status": "Ready"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/volumes"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/sbz_demo/providers/Microsoft.ServiceFabricMesh/volumes/sampleVolume",
                  "location": "EastUS",
                  "name": "sampleVolume",
                  "properties": {
                    "azureFileParameters": {
                      "accountName": "sbzdemoaccount",
                      "shareName": "sharel"
                    },
                    "description": "Service Fabric Mesh sample volume.",
                    "provider": "SFAzureFile",
                    "provisioningState": "Updating",
                    "status": "Creating"
                  },
                  "tags": {},
                  "type": "Microsoft.ServiceFabricMesh/volumes"
                }
              },
              "202": {}
            }
          }
        },
        "x-sf-codegen": {
          "Powershell": {
            "skipGeneration": "true"
          }
        }
      }
    }
  },
  "definitions": {
    "AddRemoveReplicaScalingMechanism": {
      "allOf": [
        {
          "$ref": "#/definitions/AutoScalingMechanism"
        },
        {
          "type": "object"
        }
      ],
      "description": "Describes the horizontal auto scaling mechanism that adds or removes replicas (containers or container groups).",
      "properties": {
        "maxCount": {
          "description": "Maximum number of containers (scale up won't be performed above this number).",
          "type": "integer"
        },
        "minCount": {
          "description": "Minimum number of containers (scale down won't be performed below this number).",
          "type": "integer"
        },
        "scaleIncrement": {
          "description": "Each time auto scaling is performed, this number of containers will be added or removed.",
          "type": "integer"
        }
      },
      "required": [
        "minCount",
        "maxCount",
        "scaleIncrement"
      ],
      "x-ms-discriminator-value": "AddRemoveReplica"
    },
    "ApplicationProperties": {
      "description": "Describes properties of a application resource.",
      "properties": {
        "debugParams": {
          "description": "Internal - used by Visual Studio to setup the debugging session on the local development environment.",
          "type": "string"
        },
        "description": {
          "description": "User readable description of the application.",
          "type": "string"
        },
        "diagnostics": {
          "$ref": "#/definitions/DiagnosticsDescription",
          "description": "Describes the diagnostics definition and usage for an application resource."
        },
        "healthState": {
          "$ref": "#/definitions/HealthState",
          "description": "Describes the health state of an application resource.",
          "readOnly": true
        },
        "serviceNames": {
          "description": "Names of the services in the application.",
          "items": {
            "type": "string"
          },
          "readOnly": true,
          "type": "array"
        },
        "services": {
          "description": "Describes the services in the application. This property is used to create or modify services of the application. On get only the name of the service is returned. The service description can be obtained by querying for the service resource.",
          "items": {
            "$ref": "#/definitions/ServiceResourceDescription"
          },
          "type": "array"
        },
        "status": {
          "$ref": "#/definitions/ResourceStatus",
          "description": "Status of the application.",
          "readOnly": true
        },
        "statusDetails": {
          "description": "Gives additional information about the current status of the application.",
          "readOnly": true,
          "type": "string"
        },
        "unhealthyEvaluation": {
          "description": "When the application's health state is not 'Ok', this additional details from service fabric Health Manager for the user to know why the application is marked unhealthy.",
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "ApplicationResourceDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/TrackedResource"
        }
      ],
      "description": "This type describes an application resource.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/ApplicationResourceProperties",
          "description": "This type describes properties of an application resource.",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "properties"
      ]
    },
    "ApplicationResourceDescriptionList": {
      "description": "A pageable list of application resources.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/ApplicationResourceDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ApplicationResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/ProvisionedResourceProperties"
        },
        {
          "$ref": "#/definitions/ApplicationProperties"
        }
      ],
      "description": "This type describes properties of an application resource."
    },
    "ApplicationScopedVolume": {
      "allOf": [
        {
          "$ref": "#/definitions/VolumeReference"
        }
      ],
      "description": "Describes a volume whose lifetime is scoped to the application's lifetime.",
      "properties": {
        "creationParameters": {
          "$ref": "#/definitions/ApplicationScopedVolumeCreationParameters",
          "description": "Describes parameters for creating application-scoped volumes."
        }
      },
      "required": [
        "creationParameters"
      ]
    },
    "ApplicationScopedVolumeCreationParameters": {
      "description": "Describes parameters for creating application-scoped volumes.",
      "discriminator": "kind",
      "properties": {
        "description": {
          "description": "User readable description of the volume.",
          "type": "string"
        },
        "kind": {
          "$ref": "#/definitions/ApplicationScopedVolumeKind",
          "description": "Specifies the application-scoped volume kind."
        }
      },
      "required": [
        "kind"
      ],
      "type": "object"
    },
    "ApplicationScopedVolumeCreationParametersServiceFabricVolumeDisk": {
      "allOf": [
        {
          "$ref": "#/definitions/ApplicationScopedVolumeCreationParameters"
        }
      ],
      "description": "Describes parameters for creating application-scoped volumes provided by Service Fabric Volume Disks",
      "properties": {
        "sizeDisk": {
          "description": "Volume size",
          "enum": [
            "Small",
            "Medium",
            "Large"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "SizeTypes"
          }
        }
      },
      "required": [
        "sizeDisk"
      ],
      "x-ms-discriminator-value": "ServiceFabricVolumeDisk"
    },
    "ApplicationScopedVolumeKind": {
      "description": "Specifies the application-scoped volume kind.",
      "enum": [
        "ServiceFabricVolumeDisk"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "ApplicationScopedVolumeKind",
        "values": [
          {
            "description": "Provides Service Fabric High Availability Volume Disk",
            "value": "ServiceFabricVolumeDisk"
          }
        ]
      }
    },
    "AutoScalingMechanism": {
      "description": "Describes the mechanism for performing auto scaling operation. Derived classes will describe the actual mechanism.",
      "discriminator": "kind",
      "properties": {
        "kind": {
          "$ref": "#/definitions/AutoScalingMechanismKind",
          "description": "The type of auto scaling mechanism."
        }
      },
      "required": [
        "kind"
      ],
      "type": "object"
    },
    "AutoScalingMechanismKind": {
      "description": "Enumerates the mechanisms for auto scaling.",
      "enum": [
        "AddRemoveReplica"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "AutoScalingMechanismKind",
        "values": [
          {
            "description": "Indicates that scaling should be performed by adding or removing replicas.",
            "value": "AddRemoveReplica"
          }
        ]
      }
    },
    "AutoScalingMetric": {
      "description": "Describes the metric that is used for triggering auto scaling operation. Derived classes will describe resources or metrics.",
      "discriminator": "kind",
      "properties": {
        "kind": {
          "$ref": "#/definitions/AutoScalingMetricKind",
          "description": "The type of auto scaling metric"
        }
      },
      "required": [
        "kind"
      ],
      "type": "object"
    },
    "AutoScalingMetricKind": {
      "description": "Enumerates the metrics that are used for triggering auto scaling.",
      "enum": [
        "Resource"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "AutoScalingMetricKind",
        "values": [
          {
            "description": "Indicates that the metric is one of resources, like cpu or memory.",
            "value": "Resource"
          }
        ]
      }
    },
    "AutoScalingPolicy": {
      "description": "Describes the auto scaling policy",
      "properties": {
        "mechanism": {
          "$ref": "#/definitions/AutoScalingMechanism",
          "description": "The mechanism that is used to scale when auto scaling operation is invoked."
        },
        "name": {
          "description": "The name of the auto scaling policy.",
          "type": "string"
        },
        "trigger": {
          "$ref": "#/definitions/AutoScalingTrigger",
          "description": "Determines when auto scaling operation will be invoked."
        }
      },
      "required": [
        "name",
        "trigger",
        "mechanism"
      ],
      "type": "object"
    },
    "AutoScalingResourceMetric": {
      "allOf": [
        {
          "$ref": "#/definitions/AutoScalingMetric"
        },
        {
          "type": "object"
        }
      ],
      "description": "Describes the resource that is used for triggering auto scaling.",
      "properties": {
        "name": {
          "$ref": "#/definitions/AutoScalingResourceMetricName",
          "description": "Name of the resource."
        }
      },
      "required": [
        "name"
      ],
      "x-ms-discriminator-value": "Resource"
    },
    "AutoScalingResourceMetricName": {
      "description": "Enumerates the resources that are used for triggering auto scaling.",
      "enum": [
        "cpu",
        "memoryInGB"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "AutoScalingResourceMetricName",
        "values": [
          {
            "description": "Indicates that the resource is CPU cores.",
            "value": "cpu"
          },
          {
            "description": "Indicates that the resource is memory in GB.",
            "value": "memoryInGB"
          }
        ]
      }
    },
    "AutoScalingTrigger": {
      "description": "Describes the trigger for performing auto scaling operation.",
      "discriminator": "kind",
      "properties": {
        "kind": {
          "$ref": "#/definitions/AutoScalingTriggerKind",
          "description": "The type of auto scaling trigger"
        }
      },
      "required": [
        "kind"
      ],
      "type": "object"
    },
    "AutoScalingTriggerKind": {
      "description": "Enumerates the triggers for auto scaling.",
      "enum": [
        "AverageLoad"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "AutoScalingTriggerKind",
        "values": [
          {
            "description": "Indicates that scaling should be performed based on average load of all replicas in the service.",
            "value": "AverageLoad"
          }
        ]
      }
    },
    "AvailableOperationDisplay": {
      "description": "An operation available at the listed Azure resource provider.",
      "properties": {
        "description": {
          "description": "Description of the available operation.",
          "type": "string"
        },
        "operation": {
          "description": "Name of the available operation.",
          "type": "string"
        },
        "provider": {
          "description": "Name of the operation provider.",
          "type": "string"
        },
        "resource": {
          "description": "Name of the resource on which the operation is available.",
          "type": "string"
        }
      }
    },
    "AverageLoadScalingTrigger": {
      "allOf": [
        {
          "$ref": "#/definitions/AutoScalingTrigger"
        },
        {
          "type": "object"
        }
      ],
      "description": "Describes the average load trigger used for auto scaling.",
      "properties": {
        "lowerLoadThreshold": {
          "description": "Lower load threshold (if average load is below this threshold, service will scale down).",
          "format": "double",
          "type": "number"
        },
        "metric": {
          "$ref": "#/definitions/AutoScalingMetric",
          "description": "Description of the metric that is used for scaling."
        },
        "scaleIntervalInSeconds": {
          "description": "Scale interval that indicates how often will this trigger be checked.",
          "minimum": 60,
          "type": "integer"
        },
        "upperLoadThreshold": {
          "description": "Upper load threshold (if average load is above this threshold, service will scale up).",
          "format": "double",
          "type": "number"
        }
      },
      "required": [
        "metric",
        "lowerLoadThreshold",
        "upperLoadThreshold",
        "scaleIntervalInSeconds"
      ],
      "x-ms-discriminator-value": "AverageLoad"
    },
    "AzureInternalMonitoringPipelineSinkDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/DiagnosticsSinkProperties"
        }
      ],
      "description": "Diagnostics settings for Geneva.",
      "properties": {
        "accountName": {
          "description": "Azure Internal monitoring pipeline account.",
          "type": "string"
        },
        "autoKeyConfigUrl": {
          "description": "Azure Internal monitoring pipeline autokey associated with the certificate.",
          "type": "string"
        },
        "fluentdConfigUrl": {
          "description": "Azure Internal monitoring agent fluentd configuration."
        },
        "maConfigUrl": {
          "description": "Azure Internal monitoring agent configuration.",
          "type": "string"
        },
        "namespace": {
          "description": "Azure Internal monitoring pipeline account namespace.",
          "type": "string"
        }
      },
      "x-ms-discriminator-value": "AzureInternalMonitoringPipeline"
    },
    "ContainerCodePackageProperties": {
      "description": "Describes a container and its runtime properties.",
      "properties": {
        "commands": {
          "description": "Command array to execute within the container in exec form.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "diagnostics": {
          "$ref": "#/definitions/DiagnosticsRef",
          "description": "Reference to sinks in DiagnosticsDescription."
        },
        "endpoints": {
          "description": "The endpoints exposed by this container.",
          "items": {
            "$ref": "#/definitions/EndpointProperties"
          },
          "type": "array"
        },
        "entrypoint": {
          "description": "Override for the default entry point in the container.",
          "type": "string"
        },
        "environmentVariables": {
          "description": "The environment variables to set in this container",
          "items": {
            "$ref": "#/definitions/EnvironmentVariable"
          },
          "type": "array"
        },
        "image": {
          "description": "The Container image to use.",
          "type": "string"
        },
        "imageRegistryCredential": {
          "$ref": "#/definitions/ImageRegistryCredential",
          "description": "Image registry credential."
        },
        "instanceView": {
          "$ref": "#/definitions/ContainerInstanceView",
          "description": "Runtime information of a container instance.",
          "readOnly": true
        },
        "labels": {
          "description": "The labels to set in this container.",
          "items": {
            "$ref": "#/definitions/ContainerLabel"
          },
          "type": "array"
        },
        "name": {
          "description": "The name of the code package.",
          "type": "string"
        },
        "reliableCollectionsRefs": {
          "description": "A list of ReliableCollection resources used by this particular code package. Please refer to ReliableCollectionsRef for more details.",
          "items": {
            "$ref": "#/definitions/ReliableCollectionsRef"
          },
          "type": "array"
        },
        "resources": {
          "$ref": "#/definitions/ResourceRequirements",
          "description": "The resources required by this container."
        },
        "settings": {
          "description": "The settings to set in this container. The setting file path can be fetched from environment variable \"Fabric_SettingPath\". The path for Windows container is \"C:\\\\secrets\". The path for Linux container is \"/var/secrets\".",
          "items": {
            "$ref": "#/definitions/Setting"
          },
          "type": "array"
        },
        "volumeRefs": {
          "description": "Volumes to be attached to the container. The lifetime of these volumes is independent of the application's lifetime.",
          "items": {
            "$ref": "#/definitions/VolumeReference"
          },
          "type": "array"
        },
        "volumes": {
          "description": "Volumes to be attached to the container. The lifetime of these volumes is scoped to the application's lifetime.",
          "items": {
            "$ref": "#/definitions/ApplicationScopedVolume"
          },
          "type": "array"
        }
      },
      "required": [
        "name",
        "image",
        "resources"
      ]
    },
    "ContainerEvent": {
      "description": "A container event.",
      "properties": {
        "count": {
          "description": "The count of the event.",
          "type": "integer"
        },
        "firstTimestamp": {
          "description": "Date/time of the first event.",
          "type": "string"
        },
        "lastTimestamp": {
          "description": "Date/time of the last event.",
          "type": "string"
        },
        "message": {
          "description": "The event message",
          "type": "string"
        },
        "name": {
          "description": "The name of the container event.",
          "type": "string"
        },
        "type": {
          "description": "The event type.",
          "type": "string"
        }
      }
    },
    "ContainerInstanceView": {
      "description": "Runtime information of a container instance.",
      "properties": {
        "currentState": {
          "$ref": "#/definitions/ContainerState",
          "description": "Current container instance state."
        },
        "events": {
          "description": "The events of this container instance.",
          "items": {
            "$ref": "#/definitions/ContainerEvent"
          },
          "type": "array"
        },
        "previousState": {
          "$ref": "#/definitions/ContainerState",
          "description": "Previous container instance state."
        },
        "restartCount": {
          "description": "The number of times the container has been restarted.",
          "type": "integer"
        }
      }
    },
    "ContainerLabel": {
      "description": "Describes a container label.",
      "properties": {
        "name": {
          "description": "The name of the container label.",
          "type": "string"
        },
        "value": {
          "description": "The value of the container label.",
          "type": "string"
        }
      },
      "required": [
        "name",
        "value"
      ]
    },
    "ContainerLogs": {
      "description": "Container logs.",
      "properties": {
        "content": {
          "description": "Container logs.",
          "type": "string"
        }
      }
    },
    "ContainerState": {
      "description": "The container state.",
      "properties": {
        "detailStatus": {
          "description": "Human-readable status of this state.",
          "type": "string"
        },
        "exitCode": {
          "description": "The container exit code.",
          "type": "string"
        },
        "finishTime": {
          "description": "Date/time when the container state finished.",
          "format": "date-time",
          "type": "string"
        },
        "startTime": {
          "description": "Date/time when the container state started.",
          "format": "date-time",
          "type": "string"
        },
        "state": {
          "description": "The state of this container",
          "type": "string"
        }
      }
    },
    "DiagnosticsDescription": {
      "description": "Describes the diagnostics options available",
      "properties": {
        "defaultSinkRefs": {
          "description": "The sinks to be used if diagnostics is enabled. Sink choices can be overridden at the service and code package level.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "enabled": {
          "description": "Status of whether or not sinks are enabled.",
          "type": "boolean"
        },
        "sinks": {
          "description": "List of supported sinks that can be referenced.",
          "items": {
            "$ref": "#/definitions/DiagnosticsSinkProperties"
          },
          "type": "array"
        }
      }
    },
    "DiagnosticsRef": {
      "description": "Reference to sinks in DiagnosticsDescription.",
      "properties": {
        "enabled": {
          "description": "Status of whether or not sinks are enabled.",
          "type": "boolean"
        },
        "sinkRefs": {
          "description": "List of sinks to be used if enabled. References the list of sinks in DiagnosticsDescription.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      }
    },
    "DiagnosticsSinkKind": {
      "description": "The kind of DiagnosticsSink.",
      "enum": [
        "Invalid",
        "AzureInternalMonitoringPipeline"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "DiagnosticsSinkKind",
        "values": [
          {
            "description": "Indicates an invalid sink kind. All Service Fabric enumerations have the invalid type.",
            "value": "Invalid"
          },
          {
            "description": "Diagnostics settings for Geneva.",
            "value": "AzureInternalMonitoringPipeline"
          }
        ]
      }
    },
    "DiagnosticsSinkProperties": {
      "description": "Properties of a DiagnosticsSink.",
      "discriminator": "kind",
      "properties": {
        "description": {
          "description": "A description of the sink.",
          "type": "string"
        },
        "kind": {
          "$ref": "#/definitions/DiagnosticsSinkKind",
          "description": "The kind of DiagnosticsSink."
        },
        "name": {
          "description": "Name of the sink. This value is referenced by DiagnosticsReferenceDescription",
          "type": "string"
        }
      },
      "required": [
        "kind"
      ]
    },
    "EndpointProperties": {
      "description": "Describes a container endpoint.",
      "properties": {
        "name": {
          "description": "The name of the endpoint.",
          "type": "string"
        },
        "port": {
          "description": "Port used by the container.",
          "type": "integer"
        }
      },
      "required": [
        "name"
      ]
    },
    "EndpointRef": {
      "description": "Describes a reference to a service endpoint.",
      "properties": {
        "name": {
          "description": "Name of the endpoint.",
          "type": "string"
        }
      }
    },
    "EnvironmentVariable": {
      "description": "Describes an environment variable for the container.",
      "properties": {
        "name": {
          "description": "The name of the environment variable.",
          "type": "string"
        },
        "value": {
          "description": "The value of the environment variable.",
          "type": "string"
        }
      }
    },
    "ErrorDetailsModel": {
      "description": "Error model details information",
      "properties": {
        "code": {
          "type": "string"
        },
        "message": {
          "description": "Error message.",
          "type": "string"
        }
      },
      "required": [
        "code",
        "message"
      ]
    },
    "ErrorErrorModel": {
      "description": "Error model information",
      "properties": {
        "code": {
          "type": "string"
        },
        "details": {
          "description": "List of error message details.",
          "items": {
            "$ref": "#/definitions/ErrorDetailsModel"
          },
          "type": "array"
        },
        "innerError": {
          "type": "string"
        },
        "message": {
          "description": "Error message.",
          "type": "string"
        }
      },
      "required": [
        "code"
      ]
    },
    "ErrorModel": {
      "description": "The error details.",
      "properties": {
        "error": {
          "$ref": "#/definitions/ErrorErrorModel",
          "description": "Error model information"
        }
      },
      "required": [
        "error"
      ]
    },
    "GatewayDestination": {
      "description": "Describes destination endpoint for routing traffic.",
      "properties": {
        "applicationName": {
          "description": "Name of the service fabric Mesh application.",
          "type": "string"
        },
        "endpointName": {
          "description": "name of the endpoint in the service.",
          "type": "string"
        },
        "serviceName": {
          "description": "service that contains the endpoint.",
          "type": "string"
        }
      },
      "required": [
        "applicationName",
        "endpointName",
        "serviceName"
      ],
      "type": "object"
    },
    "GatewayProperties": {
      "description": "Describes properties of a gateway resource.",
      "properties": {
        "description": {
          "description": "User readable description of the gateway.",
          "type": "string"
        },
        "destinationNetwork": {
          "$ref": "#/definitions/NetworkRef",
          "description": "Network that the Application is using."
        },
        "http": {
          "description": "Configuration for http connectivity for this gateway.",
          "items": {
            "$ref": "#/definitions/HttpConfig"
          },
          "type": "array"
        },
        "ipAddress": {
          "description": "IP address of the gateway. This is populated in the response and is ignored for incoming requests.",
          "readOnly": true,
          "type": "string"
        },
        "sourceNetwork": {
          "$ref": "#/definitions/NetworkRef",
          "description": "Network the gateway should listen on for requests."
        },
        "status": {
          "$ref": "#/definitions/ResourceStatus",
          "description": "Status of the resource.",
          "readOnly": true
        },
        "statusDetails": {
          "description": "Gives additional information about the current status of the gateway.",
          "readOnly": true,
          "type": "string"
        },
        "tcp": {
          "description": "Configuration for tcp connectivity for this gateway.",
          "items": {
            "$ref": "#/definitions/TcpConfig"
          },
          "type": "array"
        }
      },
      "required": [
        "destinationNetwork",
        "sourceNetwork"
      ]
    },
    "GatewayResourceDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/TrackedResource"
        }
      ],
      "description": "This type describes a gateway resource.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/GatewayResourceProperties",
          "description": "This type describes properties of a gateway resource.",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "properties"
      ]
    },
    "GatewayResourceDescriptionList": {
      "description": "A pageable list of gateway resources.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/GatewayResourceDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "GatewayResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/ProvisionedResourceProperties"
        },
        {
          "$ref": "#/definitions/GatewayProperties"
        }
      ],
      "description": "This type describes properties of a gateway resource."
    },
    "HealthState": {
      "description": "The health state of a Service Fabric entity such as Cluster, Node, Application, Service, Partition, Replica etc.",
      "enum": [
        "Invalid",
        "Ok",
        "Warning",
        "Error",
        "Unknown"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "HealthState",
        "values": [
          {
            "description": "Indicates an invalid health state. All Service Fabric enumerations have the invalid type. The value is zero.",
            "value": "Invalid"
          },
          {
            "description": "Indicates the health state is okay. The value is 1.",
            "value": "Ok"
          },
          {
            "description": "Indicates the health state is at a warning level. The value is 2.",
            "value": "Warning"
          },
          {
            "description": "Indicates the health state is at an error level. Error health state should be investigated, as they can impact the correct functionality of the cluster. The value is 3.",
            "value": "Error"
          },
          {
            "description": "Indicates an unknown health status. The value is 65535.",
            "value": "Unknown"
          }
        ]
      }
    },
    "HttpConfig": {
      "description": "Describes the http configuration for external connectivity for this network.",
      "properties": {
        "hosts": {
          "description": "description for routing.",
          "items": {
            "$ref": "#/definitions/HttpHostConfig"
          },
          "type": "array"
        },
        "name": {
          "description": "http gateway config name.",
          "type": "string"
        },
        "port": {
          "description": "Specifies the port at which the service endpoint below needs to be exposed.",
          "type": "integer"
        }
      },
      "required": [
        "hosts",
        "name",
        "port"
      ],
      "type": "object"
    },
    "HttpHostConfig": {
      "description": "Describes the hostname properties for http routing.",
      "properties": {
        "name": {
          "description": "http hostname config name.",
          "type": "string"
        },
        "routes": {
          "description": "Route information to use for routing. Routes are processed in the order they are specified. Specify routes that are more specific before routes that can handle general cases.",
          "items": {
            "$ref": "#/definitions/HttpRouteConfig"
          },
          "type": "array"
        }
      },
      "required": [
        "name",
        "routes"
      ],
      "type": "object"
    },
    "HttpRouteConfig": {
      "description": "Describes the hostname properties for http routing.",
      "properties": {
        "destination": {
          "$ref": "#/definitions/GatewayDestination",
          "description": "Describes destination endpoint for routing traffic."
        },
        "match": {
          "$ref": "#/definitions/HttpRouteMatchRule",
          "description": "Describes a rule for http route matching."
        },
        "name": {
          "description": "http route name.",
          "type": "string"
        }
      },
      "required": [
        "destination",
        "match",
        "name"
      ],
      "type": "object"
    },
    "HttpRouteMatchHeader": {
      "description": "Describes header information for http route matching.",
      "properties": {
        "name": {
          "description": "Name of header to match in request.",
          "type": "string"
        },
        "type": {
          "description": "how to match header value",
          "enum": [
            "exact"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "HeaderMatchType"
          }
        },
        "value": {
          "description": "Value of header to match in request.",
          "type": "string"
        }
      },
      "required": [
        "name"
      ],
      "type": "object"
    },
    "HttpRouteMatchPath": {
      "description": "Path to match for routing.",
      "properties": {
        "rewrite": {
          "description": "replacement string for matched part of the Uri.",
          "type": "string"
        },
        "type": {
          "description": "how to match value in the Uri",
          "enum": [
            "prefix"
          ],
          "type": "string",
          "x-ms-enum": {
            "modelAsString": true,
            "name": "PathMatchType"
          }
        },
        "value": {
          "description": "Uri path to match for request.",
          "type": "string"
        }
      },
      "required": [
        "type",
        "value"
      ],
      "type": "object"
    },
    "HttpRouteMatchRule": {
      "description": "Describes a rule for http route matching.",
      "properties": {
        "headers": {
          "description": "headers and their values to match in request.",
          "items": {
            "$ref": "#/definitions/HttpRouteMatchHeader"
          },
          "type": "array"
        },
        "path": {
          "$ref": "#/definitions/HttpRouteMatchPath",
          "description": "Path to match for routing."
        }
      },
      "required": [
        "path"
      ],
      "type": "object"
    },
    "ImageRegistryCredential": {
      "description": "Image registry credential.",
      "properties": {
        "password": {
          "description": "The password for the private registry. The password is required for create or update operations, however it is not returned in the get or list operations.",
          "type": "string"
        },
        "server": {
          "description": "Docker image registry server, without protocol such as `http` and `https`.",
          "type": "string"
        },
        "username": {
          "description": "The username for the private registry.",
          "type": "string"
        }
      },
      "required": [
        "server",
        "username"
      ]
    },
    "InlinedValueSecretResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/SecretResourceProperties"
        }
      ],
      "description": "Describes the properties of a secret resource whose value is provided explicitly as plaintext. The secret resource may have multiple values, each being uniquely versioned. The secret value of each version is stored encrypted, and delivered as plaintext into the context of applications referencing it.",
      "x-ms-discriminator-value": "inlinedValue"
    },
    "LocalNetworkResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/NetworkResourceProperties"
        }
      ],
      "description": "Information about a Service Fabric container network local to a single Service Fabric cluster.",
      "properties": {
        "networkAddressPrefix": {
          "$ref": "#/definitions/NetworkAddressPrefix",
          "description": "Address space for the local container network."
        }
      },
      "x-ms-discriminator-value": "Local"
    },
    "ManagedProxyResource": {
      "description": "The resource model definition for Azure Resource Manager proxy resource. It will have everything other than required location and tags. This proxy resource is explicitly created or updated by including it in the parent resource.",
      "properties": {
        "id": {
          "description": "Fully qualified identifier for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}",
          "readOnly": true,
          "type": "string",
          "x-ms-mutability": [
            "read"
          ]
        },
        "name": {
          "description": "The name of the resource",
          "type": "string",
          "x-ms-mutability": [
            "read",
            "create",
            "update"
          ]
        },
        "type": {
          "description": "The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts.",
          "readOnly": true,
          "type": "string",
          "x-ms-mutability": [
            "read"
          ]
        }
      },
      "x-ms-azure-resource": true
    },
    "NetworkAddressPrefix": {
      "description": "Address space for a container network. This is expressed in CIDR notation.",
      "type": "string"
    },
    "NetworkKind": {
      "description": "The type of a Service Fabric container network.",
      "enum": [
        "Local"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "NetworkKind",
        "values": [
          {
            "description": "Indicates a container network local to a single Service Fabric cluster. The value is 1.",
            "value": "Local"
          }
        ]
      }
    },
    "NetworkRef": {
      "description": "Describes a network reference in a service.",
      "properties": {
        "endpointRefs": {
          "description": "A list of endpoints that are exposed on this network.",
          "items": {
            "$ref": "#/definitions/EndpointRef"
          },
          "type": "array"
        },
        "name": {
          "description": "Name of the network",
          "type": "string"
        }
      }
    },
    "NetworkResourceDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/TrackedResource"
        }
      ],
      "description": "This type describes a network resource.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/NetworkResourceProperties",
          "description": "Describes properties of a network resource."
        }
      },
      "required": [
        "properties"
      ]
    },
    "NetworkResourceDescriptionList": {
      "description": "A pageable list of network resources.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/NetworkResourceDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "NetworkResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/NetworkResourcePropertiesBase"
        }
      ],
      "description": "Describes properties of a network resource.",
      "properties": {
        "description": {
          "description": "User readable description of the network.",
          "type": "string"
        },
        "status": {
          "$ref": "#/definitions/ResourceStatus",
          "description": "Status of the network.",
          "readOnly": true
        },
        "statusDetails": {
          "description": "Gives additional information about the current status of the network.",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "NetworkResourcePropertiesBase": {
      "allOf": [
        {
          "$ref": "#/definitions/ProvisionedResourceProperties"
        }
      ],
      "description": "This type describes the properties of a network resource, including its kind.",
      "discriminator": "kind",
      "properties": {
        "kind": {
          "$ref": "#/definitions/NetworkKind",
          "description": "The type of a Service Fabric container network."
        }
      },
      "required": [
        "kind"
      ],
      "type": "object"
    },
    "OperatingSystemType": {
      "description": "The operation system required by the code in service.",
      "enum": [
        "Linux",
        "Windows"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "OperatingSystemType",
        "values": [
          {
            "description": "The required operating system is Linux.",
            "value": "Linux"
          },
          {
            "description": "The required operating system is Windows.",
            "value": "Windows"
          }
        ]
      }
    },
    "OperationListResult": {
      "description": "Describes the result of the request to list Service Fabric operations.",
      "properties": {
        "nextLink": {
          "description": "URL to get the next set of operation list results if there are any.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "List of Service Fabric operations supported by the Microsoft.ServiceFabric resource provider.",
          "items": {
            "$ref": "#/definitions/OperationResult"
          },
          "type": "array"
        }
      }
    },
    "OperationResult": {
      "description": "List of operations available at the listed Azure resource provider.",
      "properties": {
        "display": {
          "$ref": "#/definitions/AvailableOperationDisplay",
          "description": "The object that represents the operation."
        },
        "name": {
          "description": "The name of the operation.",
          "type": "string"
        },
        "nextLink": {
          "description": "The URL to use for getting the next set of results.",
          "type": "string"
        },
        "origin": {
          "description": "Origin result",
          "type": "string"
        }
      }
    },
    "ProvisionedResourceProperties": {
      "description": "Describes common properties of a provisioned resource.",
      "properties": {
        "provisioningState": {
          "description": "State of the resource.",
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "ProxyResource": {
      "allOf": [
        {
          "$ref": "#/definitions/Resource"
        }
      ],
      "description": "The resource model definition for Azure Resource Manager proxy resource. It will have everything other than required location and tags."
    },
    "ReliableCollectionsRef": {
      "description": "Specifying this parameter adds support for reliable collections",
      "properties": {
        "doNotPersistState": {
          "description": "False (the default) if ReliableCollections state is persisted to disk as usual. True if you do not want to persist state, in which case replication is still enabled and you can use ReliableCollections as distributed cache.",
          "type": "boolean"
        },
        "name": {
          "description": "Name of ReliableCollection resource. Right now it's not used and you can use any string.",
          "type": "string"
        }
      },
      "required": [
        "name"
      ]
    },
    "Resource": {
      "description": "The resource model definition for Azure Resource Manager resource.",
      "properties": {
        "id": {
          "description": "Fully qualified identifier for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}",
          "readOnly": true,
          "type": "string",
          "x-ms-mutability": [
            "read"
          ]
        },
        "name": {
          "description": "The name of the resource",
          "readOnly": true,
          "type": "string",
          "x-ms-mutability": [
            "read"
          ]
        },
        "type": {
          "description": "The type of the resource. Ex- Microsoft.Compute/virtualMachines or Microsoft.Storage/storageAccounts.",
          "readOnly": true,
          "type": "string",
          "x-ms-mutability": [
            "read"
          ]
        }
      },
      "x-ms-azure-resource": true
    },
    "ResourceLimits": {
      "description": "This type describes the resource limits for a given container. It describes the most amount of resources a container is allowed to use before being restarted.",
      "properties": {
        "cpu": {
          "description": "CPU limits in cores. At present, only full cores are supported.",
          "format": "double",
          "type": "number"
        },
        "memoryInGB": {
          "description": "The memory limit in GB.",
          "format": "double",
          "type": "number"
        }
      }
    },
    "ResourceRequests": {
      "description": "This type describes the requested resources for a given container. It describes the least amount of resources required for the container. A container can consume more than requested resources up to the specified limits before being restarted. Currently, the requested resources are treated as limits.",
      "properties": {
        "cpu": {
          "description": "Requested number of CPU cores. At present, only full cores are supported.",
          "format": "double",
          "type": "number"
        },
        "memoryInGB": {
          "description": "The memory request in GB for this container.",
          "format": "double",
          "type": "number"
        }
      },
      "required": [
        "memoryInGB",
        "cpu"
      ]
    },
    "ResourceRequirements": {
      "description": "This type describes the resource requirements for a container or a service.",
      "properties": {
        "limits": {
          "$ref": "#/definitions/ResourceLimits",
          "description": "Describes the maximum limits on the resources for a given container."
        },
        "requests": {
          "$ref": "#/definitions/ResourceRequests",
          "description": "Describes the requested resources for a given container."
        }
      },
      "required": [
        "requests"
      ]
    },
    "ResourceStatus": {
      "description": "Status of the resource.",
      "enum": [
        "Unknown",
        "Ready",
        "Upgrading",
        "Creating",
        "Deleting",
        "Failed"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "ResourceStatus",
        "values": [
          {
            "description": "Indicates the resource status is unknown. The value is zero.",
            "value": "Unknown"
          },
          {
            "description": "Indicates the resource is ready. The value is 1.",
            "value": "Ready"
          },
          {
            "description": "Indicates the resource is upgrading. The value is 2.",
            "value": "Upgrading"
          },
          {
            "description": "Indicates the resource is being created. The value is 3.",
            "value": "Creating"
          },
          {
            "description": "Indicates the resource is being deleted. The value is 4.",
            "value": "Deleting"
          },
          {
            "description": "Indicates the resource is not functional due to persistent failures. See statusDetails property for more details. The value is 5.",
            "value": "Failed"
          }
        ]
      }
    },
    "SecretKind": {
      "description": "Describes the kind of secret.",
      "enum": [
        "inlinedValue"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "SecretKind",
        "values": [
          {
            "description": "A simple secret resource whose plaintext value is provided by the user.",
            "value": "inlinedValue"
          }
        ]
      }
    },
    "SecretResourceDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/TrackedResource"
        }
      ],
      "description": "This type describes a secret resource.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/SecretResourceProperties",
          "description": "Describes the properties of a secret resource."
        }
      },
      "required": [
        "properties"
      ]
    },
    "SecretResourceDescriptionList": {
      "description": "A pageable list of secret resources.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/SecretResourceDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "SecretResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/SecretResourcePropertiesBase"
        }
      ],
      "description": "Describes the properties of a secret resource.",
      "properties": {
        "contentType": {
          "description": "The type of the content stored in the secret value. The value of this property is opaque to Service Fabric. Once set, the value of this property cannot be changed.",
          "type": "string"
        },
        "description": {
          "description": "User readable description of the secret.",
          "type": "string"
        },
        "status": {
          "$ref": "#/definitions/ResourceStatus",
          "description": "Status of the resource.",
          "readOnly": true
        },
        "statusDetails": {
          "description": "Gives additional information about the current status of the secret.",
          "readOnly": true,
          "type": "string"
        }
      },
      "type": "object"
    },
    "SecretResourcePropertiesBase": {
      "allOf": [
        {
          "$ref": "#/definitions/ProvisionedResourceProperties"
        }
      ],
      "description": "This type describes the properties of a secret resource, including its kind.",
      "discriminator": "kind",
      "properties": {
        "kind": {
          "$ref": "#/definitions/SecretKind",
          "description": "Describes the kind of secret."
        }
      },
      "required": [
        "kind"
      ],
      "type": "object"
    },
    "SecretValue": {
      "description": "This type represents the unencrypted value of the secret.",
      "properties": {
        "value": {
          "description": "The actual value of the secret.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SecretValueProperties": {
      "description": "This type describes properties of secret value resource.",
      "properties": {
        "value": {
          "description": "The actual value of the secret.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SecretValueResourceDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/TrackedResource"
        }
      ],
      "description": "This type describes a value of a secret resource. The name of this resource is the version identifier corresponding to this secret value.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/SecretValueResourceProperties",
          "description": "This type describes properties of a secret value resource.",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "properties"
      ]
    },
    "SecretValueResourceDescriptionList": {
      "description": "A pageable list of values of a secret resource. The information does not include only the name of the value and not the actual unencrypted value.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/SecretValueResourceDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "SecretValueResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/ProvisionedResourceProperties"
        },
        {
          "$ref": "#/definitions/SecretValueProperties"
        }
      ],
      "description": "This type describes properties of a secret value resource."
    },
    "ServiceProperties": {
      "description": "Describes properties of a service resource.",
      "properties": {
        "autoScalingPolicies": {
          "description": "Auto scaling policies",
          "items": {
            "$ref": "#/definitions/AutoScalingPolicy"
          },
          "type": "array"
        },
        "description": {
          "description": "User readable description of the service.",
          "type": "string"
        },
        "healthState": {
          "$ref": "#/definitions/HealthState",
          "description": "Describes the health state of an application resource.",
          "readOnly": true
        },
        "replicaCount": {
          "description": "The number of replicas of the service to create. Defaults to 1 if not specified.",
          "type": "integer"
        },
        "status": {
          "$ref": "#/definitions/ResourceStatus",
          "description": "Status of the service.",
          "readOnly": true
        },
        "statusDetails": {
          "description": "Gives additional information about the current status of the service.",
          "readOnly": true,
          "type": "string"
        },
        "unhealthyEvaluation": {
          "description": "When the service's health state is not 'Ok', this additional details from service fabric Health Manager for the user to know why the service is marked unhealthy.",
          "readOnly": true,
          "type": "string"
        }
      }
    },
    "ServiceReplicaDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/ServiceReplicaProperties"
        }
      ],
      "description": "Describes a replica of a service resource.",
      "properties": {
        "replicaName": {
          "description": "Name of the replica.",
          "type": "string"
        }
      },
      "required": [
        "replicaName"
      ]
    },
    "ServiceReplicaDescriptionList": {
      "description": "A pageable list of service replicas.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/ServiceReplicaDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ServiceReplicaProperties": {
      "description": "Describes the properties of a service replica.",
      "properties": {
        "codePackages": {
          "description": "Describes the set of code packages that forms the service. A code package describes the container and the properties for running it. All the code packages are started together on the same host and share the same context (network, process etc.).",
          "items": {
            "$ref": "#/definitions/ContainerCodePackageProperties"
          },
          "type": "array"
        },
        "diagnostics": {
          "$ref": "#/definitions/DiagnosticsRef",
          "description": "Reference to sinks in DiagnosticsDescription."
        },
        "networkRefs": {
          "description": "The names of the private networks that this service needs to be part of.",
          "items": {
            "$ref": "#/definitions/NetworkRef"
          },
          "type": "array"
        },
        "osType": {
          "$ref": "#/definitions/OperatingSystemType",
          "description": "The operation system required by the code in service."
        }
      },
      "required": [
        "osType",
        "codePackages"
      ]
    },
    "ServiceResourceDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/ManagedProxyResource"
        }
      ],
      "description": "This type describes a service resource.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/ServiceResourceProperties",
          "description": "This type describes properties of a service resource.",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "properties"
      ]
    },
    "ServiceResourceDescriptionList": {
      "description": "A pageable list of service resources.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/ServiceResourceDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "ServiceResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/ProvisionedResourceProperties"
        },
        {
          "$ref": "#/definitions/ServiceReplicaProperties"
        },
        {
          "$ref": "#/definitions/ServiceProperties"
        }
      ],
      "description": "This type describes properties of a service resource."
    },
    "Setting": {
      "description": "Describes a setting for the container. The setting file path can be fetched from environment variable \"Fabric_SettingPath\". The path for Windows container is \"C:\\\\secrets\". The path for Linux container is \"/var/secrets\".",
      "properties": {
        "name": {
          "description": "The name of the setting.",
          "type": "string"
        },
        "value": {
          "description": "The value of the setting.",
          "type": "string"
        }
      }
    },
    "TcpConfig": {
      "description": "Describes the tcp configuration for external connectivity for this network.",
      "properties": {
        "destination": {
          "$ref": "#/definitions/GatewayDestination",
          "description": "Describes destination endpoint for routing traffic."
        },
        "name": {
          "description": "tcp gateway config name.",
          "type": "string"
        },
        "port": {
          "description": "Specifies the port at which the service endpoint below needs to be exposed.",
          "type": "integer"
        }
      },
      "required": [
        "destination",
        "name",
        "port"
      ],
      "type": "object"
    },
    "TrackedResource": {
      "allOf": [
        {
          "$ref": "#/definitions/Resource"
        }
      ],
      "description": "The resource model definition for Azure Resource Manager tracked top-level resource.",
      "properties": {
        "location": {
          "description": "The geo-location where the resource lives",
          "type": "string",
          "x-ms-mutability": [
            "read",
            "create"
          ]
        },
        "tags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Resource tags.",
          "type": "object",
          "x-ms-mutability": [
            "read",
            "create",
            "update"
          ]
        }
      },
      "required": [
        "location"
      ]
    },
    "VolumeProperties": {
      "description": "Describes properties of a volume resource.",
      "properties": {
        "azureFileParameters": {
          "$ref": "#/definitions/VolumeProviderParametersAzureFile",
          "description": "This type describes a volume provided by an Azure Files file share."
        },
        "description": {
          "description": "User readable description of the volume.",
          "type": "string"
        },
        "provider": {
          "$ref": "#/definitions/VolumeProvider",
          "description": "Provider of the volume."
        },
        "status": {
          "$ref": "#/definitions/ResourceStatus",
          "description": "Status of the volume.",
          "readOnly": true
        },
        "statusDetails": {
          "description": "Gives additional information about the current status of the volume.",
          "readOnly": true,
          "type": "string"
        }
      },
      "required": [
        "provider"
      ]
    },
    "VolumeProvider": {
      "description": "Describes the provider of the volume resource.",
      "enum": [
        "SFAzureFile"
      ],
      "type": "string",
      "x-ms-enum": {
        "modelAsString": true,
        "name": "VolumeProvider",
        "values": [
          {
            "description": "Provides volumes that are backed by Azure Files.",
            "value": "SFAzureFile"
          }
        ]
      }
    },
    "VolumeProviderParametersAzureFile": {
      "description": "This type describes a volume provided by an Azure Files file share.",
      "properties": {
        "accountKey": {
          "description": "Access key of the Azure storage account for the File Share.",
          "type": "string"
        },
        "accountName": {
          "description": "Name of the Azure storage account for the File Share.",
          "type": "string"
        },
        "shareName": {
          "description": "Name of the Azure Files file share that provides storage for the volume.",
          "type": "string"
        }
      },
      "required": [
        "accountName",
        "shareName"
      ]
    },
    "VolumeReference": {
      "description": "Describes a reference to a volume resource.",
      "properties": {
        "destinationPath": {
          "description": "The path within the container at which the volume should be mounted. Only valid path characters are allowed.",
          "type": "string"
        },
        "name": {
          "description": "Name of the volume being referenced.",
          "type": "string"
        },
        "readOnly": {
          "description": "The flag indicating whether the volume is read only. Default is 'false'.",
          "type": "boolean"
        }
      },
      "required": [
        "name",
        "destinationPath"
      ],
      "type": "object"
    },
    "VolumeResourceDescription": {
      "allOf": [
        {
          "$ref": "#/definitions/TrackedResource"
        }
      ],
      "description": "This type describes a volume resource.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/VolumeResourceProperties",
          "description": "This type describes properties of a volume resource.",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "properties"
      ]
    },
    "VolumeResourceDescriptionList": {
      "description": "A pageable list of volume resources.",
      "properties": {
        "nextLink": {
          "description": "URI to fetch the next page of the list.",
          "type": "string"
        },
        "value": {
          "description": "One page of the list.",
          "items": {
            "$ref": "#/definitions/VolumeResourceDescription"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "VolumeResourceProperties": {
      "allOf": [
        {
          "$ref": "#/definitions/ProvisionedResourceProperties"
        },
        {
          "$ref": "#/definitions/VolumeProperties"
        }
      ],
      "description": "This type describes properties of a volume resource."
    }
  }
}