{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "description": "Use these REST APIs for performing operations on Backend entity in Azure API Management deployment. The Backend entity in API Management represents a backend service that is configured to skip certification chain validation when using a self-signed certificate to test mutual certificate authentication.",
    "title": "ApiManagementClient",
    "version": "2019-01-01",
    "x-apisguru-categories": [
      "cloud"
    ],
    "x-logo": {
      "url": "https://api.apis.guru/v2/cache/logo/https_assets.onestore.ms_cdnfiles_onestorerolling-1606-01000_shell_v3_images_logo_microsoft.png"
    },
    "x-origin": [
      {
        "format": "swagger",
        "url": "https://raw.githubusercontent.com/Azure/azure-rest-api-specs/master/specification/apimanagement/resource-manager/Microsoft.ApiManagement/stable/2019-01-01/apimbackends.json",
        "version": "2.0"
      }
    ],
    "x-preferred": false,
    "x-providerName": "azure.com",
    "x-serviceName": "apimanagement-apimbackends",
    "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": {},
  "paths": {
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends": {
      "get": {
        "description": "Lists a collection of backends in the specified service instance.",
        "operationId": "Backend_ListByService",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "|   Field     |     Usage     |     Supported operators     |     Supported functions     |</br>|-------------|-------------|-------------|-------------|</br>| name | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | </br>| title | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | </br>| url | filter | ge, le, eq, ne, gt, lt | substringof, contains, startswith, endswith | </br>",
            "in": "query",
            "name": "$filter",
            "required": false,
            "type": "string"
          },
          {
            "description": "Number of records to return.",
            "format": "int32",
            "in": "query",
            "minimum": 1,
            "name": "$top",
            "required": false,
            "type": "integer",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Number of records to skip.",
            "format": "int32",
            "in": "query",
            "minimum": 0,
            "name": "$skip",
            "required": false,
            "type": "integer",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Lists a collection of Backend entities.",
            "schema": {
              "description": "Paged Backend list representation.",
              "properties": {
                "nextLink": {
                  "description": "Next page link if any.",
                  "type": "string"
                },
                "value": {
                  "description": "Backend values.",
                  "items": {
                    "allOf": [
                      {
                        "description": "The Resource definition.",
                        "properties": {
                          "id": {
                            "description": "Resource ID.",
                            "readOnly": true,
                            "type": "string"
                          },
                          "name": {
                            "description": "Resource name.",
                            "readOnly": true,
                            "type": "string"
                          },
                          "type": {
                            "description": "Resource type for API Management resource.",
                            "readOnly": true,
                            "type": "string"
                          }
                        },
                        "x-ms-azure-resource": true
                      }
                    ],
                    "description": "Backend details.",
                    "properties": {
                      "properties": {
                        "allOf": [
                          {
                            "description": "Backend entity base Parameter set.",
                            "properties": {
                              "credentials": {
                                "description": "Details of the Credentials used to connect to Backend.",
                                "properties": {
                                  "authorization": {
                                    "description": "Authorization header information.",
                                    "properties": {
                                      "parameter": {
                                        "description": "Authentication Parameter value.",
                                        "maxLength": 300,
                                        "minLength": 1,
                                        "type": "string"
                                      },
                                      "scheme": {
                                        "description": "Authentication Scheme name.",
                                        "maxLength": 100,
                                        "minLength": 1,
                                        "type": "string"
                                      }
                                    },
                                    "required": [
                                      "scheme",
                                      "parameter"
                                    ]
                                  },
                                  "certificate": {
                                    "description": "List of Client Certificate Thumbprint.",
                                    "items": {
                                      "type": "string"
                                    },
                                    "maxItems": 32,
                                    "type": "array"
                                  },
                                  "header": {
                                    "additionalProperties": {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    "description": "Header Parameter description.",
                                    "type": "object"
                                  },
                                  "query": {
                                    "additionalProperties": {
                                      "items": {
                                        "type": "string"
                                      },
                                      "type": "array"
                                    },
                                    "description": "Query Parameter description.",
                                    "type": "object"
                                  }
                                }
                              },
                              "description": {
                                "description": "Backend Description.",
                                "maxLength": 2000,
                                "minLength": 1,
                                "type": "string"
                              },
                              "properties": {
                                "description": "Properties specific to the Backend Type.",
                                "properties": {
                                  "serviceFabricCluster": {
                                    "description": "Properties of the Service Fabric Type Backend.",
                                    "properties": {
                                      "clientCertificatethumbprint": {
                                        "description": "The client certificate thumbprint for the management endpoint.",
                                        "type": "string"
                                      },
                                      "managementEndpoints": {
                                        "description": "The cluster management endpoint.",
                                        "items": {
                                          "type": "string"
                                        },
                                        "type": "array"
                                      },
                                      "maxPartitionResolutionRetries": {
                                        "description": "Maximum number of retries while attempting resolve the partition.",
                                        "format": "int32",
                                        "type": "integer"
                                      },
                                      "serverCertificateThumbprints": {
                                        "description": "Thumbprints of certificates cluster management service uses for tls communication",
                                        "items": {
                                          "type": "string"
                                        },
                                        "type": "array"
                                      },
                                      "serverX509Names": {
                                        "description": "Server X509 Certificate Names Collection",
                                        "items": {
                                          "description": "Properties of server X509Names.",
                                          "externalDocs": {
                                            "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security"
                                          },
                                          "properties": {
                                            "issuerCertificateThumbprint": {
                                              "description": "Thumbprint for the Issuer of the Certificate.",
                                              "type": "string"
                                            },
                                            "name": {
                                              "description": "Common Name of the Certificate.",
                                              "type": "string"
                                            }
                                          }
                                        },
                                        "type": "array"
                                      }
                                    },
                                    "required": [
                                      "managementEndpoints",
                                      "clientCertificatethumbprint"
                                    ]
                                  }
                                }
                              },
                              "proxy": {
                                "description": "Details of the Backend WebProxy Server to use in the Request to Backend.",
                                "externalDocs": {
                                  "description": "Backend entity uses these details to connect to a WebProxy.",
                                  "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx"
                                },
                                "properties": {
                                  "password": {
                                    "description": "Password to connect to the WebProxy Server",
                                    "type": "string"
                                  },
                                  "url": {
                                    "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.",
                                    "maxLength": 2000,
                                    "minLength": 1,
                                    "type": "string"
                                  },
                                  "username": {
                                    "description": "Username to connect to the WebProxy server",
                                    "type": "string"
                                  }
                                },
                                "required": [
                                  "url"
                                ]
                              },
                              "resourceId": {
                                "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.",
                                "maxLength": 2000,
                                "minLength": 1,
                                "type": "string"
                              },
                              "title": {
                                "description": "Backend Title.",
                                "maxLength": 300,
                                "minLength": 1,
                                "type": "string"
                              },
                              "tls": {
                                "description": "Properties controlling TLS Certificate Validation.",
                                "properties": {
                                  "validateCertificateChain": {
                                    "default": true,
                                    "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.",
                                    "type": "boolean"
                                  },
                                  "validateCertificateName": {
                                    "default": true,
                                    "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.",
                                    "type": "boolean"
                                  }
                                }
                              }
                            }
                          }
                        ],
                        "description": "Parameters supplied to the Create Backend operation.",
                        "properties": {
                          "protocol": {
                            "description": "Backend communication protocol.",
                            "enum": [
                              "http",
                              "soap"
                            ],
                            "type": "string",
                            "x-ms-enum": {
                              "modelAsString": true,
                              "name": "BackendProtocol",
                              "values": [
                                {
                                  "description": "The Backend is a RESTful service.",
                                  "value": "http"
                                },
                                {
                                  "description": "The Backend is a SOAP service.",
                                  "value": "soap"
                                }
                              ]
                            }
                          },
                          "url": {
                            "description": "Runtime Url of the Backend.",
                            "maxLength": 2000,
                            "minLength": 1,
                            "type": "string"
                          }
                        },
                        "required": [
                          "url",
                          "protocol"
                        ]
                      }
                    }
                  },
                  "type": "array"
                }
              }
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Backend"
        ],
        "x-ms-examples": {
          "ApiManagementListBackends": {
            "parameters": {
              "api-version": "2019-01-01",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "nextLink": "",
                  "value": [
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend",
                      "name": "proxybackend",
                      "properties": {
                        "credentials": {
                          "authorization": {
                            "parameter": "opensesma",
                            "scheme": "Basic"
                          },
                          "header": {
                            "x-my-1": [
                              "val1",
                              "val2"
                            ]
                          },
                          "query": {
                            "sv": [
                              "xx",
                              "bb",
                              "cc"
                            ]
                          }
                        },
                        "description": "description5308",
                        "protocol": "http",
                        "proxy": {
                          "password": "opensesame",
                          "url": "http://192.168.1.1:8080",
                          "username": "Contoso\\admin"
                        },
                        "tls": {
                          "validateCertificateChain": false,
                          "validateCertificateName": false
                        },
                        "url": "https://backendname2644/"
                      },
                      "type": "Microsoft.ApiManagement/service/backends"
                    },
                    {
                      "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend",
                      "name": "sfbackend",
                      "properties": {
                        "description": "Service Fabric Test App 1",
                        "properties": {
                          "serviceFabricCluster": {
                            "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6",
                            "managementEndpoints": [
                              "https://somecluster.com"
                            ],
                            "maxPartitionResolutionRetries": 5,
                            "serverX509Names": [
                              {
                                "issuerCertificateThumbprint": "IssuerCertificateThumbprint1",
                                "name": "ServerCommonName1"
                              }
                            ]
                          }
                        },
                        "protocol": "http",
                        "url": "fabric:/mytestapp/mytestservice"
                      },
                      "type": "Microsoft.ApiManagement/service/backends"
                    }
                  ]
                }
              }
            }
          }
        },
        "x-ms-odata": "./definitions.json#/definitions/BackendContract",
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}": {
      "delete": {
        "description": "Deletes the specified backend.",
        "operationId": "Backend_Delete",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.",
            "in": "path",
            "maxLength": 80,
            "minLength": 1,
            "name": "backendId",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.",
            "in": "header",
            "name": "If-Match",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The backend was successfully deleted."
          },
          "204": {
            "description": "The backend was successfully deleted."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Backend"
        ],
        "x-ms-examples": {
          "ApiManagementDeleteBackend": {
            "parameters": {
              "If-Match": "*",
              "api-version": "2019-01-01",
              "backendId": "sfbackend",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {},
              "204": {}
            }
          }
        }
      },
      "get": {
        "description": "Gets the details of the backend specified by its identifier.",
        "operationId": "Backend_Get",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.",
            "in": "path",
            "maxLength": 80,
            "minLength": 1,
            "name": "backendId",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The response body contains the specified Backend entity.",
            "headers": {
              "ETag": {
                "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.",
                "type": "string"
              }
            },
            "schema": {
              "allOf": [
                {
                  "description": "The Resource definition.",
                  "properties": {
                    "id": {
                      "description": "Resource ID.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "name": {
                      "description": "Resource name.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "type": {
                      "description": "Resource type for API Management resource.",
                      "readOnly": true,
                      "type": "string"
                    }
                  },
                  "x-ms-azure-resource": true
                }
              ],
              "description": "Backend details.",
              "properties": {
                "properties": {
                  "allOf": [
                    {
                      "description": "Backend entity base Parameter set.",
                      "properties": {
                        "credentials": {
                          "description": "Details of the Credentials used to connect to Backend.",
                          "properties": {
                            "authorization": {
                              "description": "Authorization header information.",
                              "properties": {
                                "parameter": {
                                  "description": "Authentication Parameter value.",
                                  "maxLength": 300,
                                  "minLength": 1,
                                  "type": "string"
                                },
                                "scheme": {
                                  "description": "Authentication Scheme name.",
                                  "maxLength": 100,
                                  "minLength": 1,
                                  "type": "string"
                                }
                              },
                              "required": [
                                "scheme",
                                "parameter"
                              ]
                            },
                            "certificate": {
                              "description": "List of Client Certificate Thumbprint.",
                              "items": {
                                "type": "string"
                              },
                              "maxItems": 32,
                              "type": "array"
                            },
                            "header": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Header Parameter description.",
                              "type": "object"
                            },
                            "query": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Query Parameter description.",
                              "type": "object"
                            }
                          }
                        },
                        "description": {
                          "description": "Backend Description.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "properties": {
                          "description": "Properties specific to the Backend Type.",
                          "properties": {
                            "serviceFabricCluster": {
                              "description": "Properties of the Service Fabric Type Backend.",
                              "properties": {
                                "clientCertificatethumbprint": {
                                  "description": "The client certificate thumbprint for the management endpoint.",
                                  "type": "string"
                                },
                                "managementEndpoints": {
                                  "description": "The cluster management endpoint.",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "maxPartitionResolutionRetries": {
                                  "description": "Maximum number of retries while attempting resolve the partition.",
                                  "format": "int32",
                                  "type": "integer"
                                },
                                "serverCertificateThumbprints": {
                                  "description": "Thumbprints of certificates cluster management service uses for tls communication",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "serverX509Names": {
                                  "description": "Server X509 Certificate Names Collection",
                                  "items": {
                                    "description": "Properties of server X509Names.",
                                    "externalDocs": {
                                      "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security"
                                    },
                                    "properties": {
                                      "issuerCertificateThumbprint": {
                                        "description": "Thumbprint for the Issuer of the Certificate.",
                                        "type": "string"
                                      },
                                      "name": {
                                        "description": "Common Name of the Certificate.",
                                        "type": "string"
                                      }
                                    }
                                  },
                                  "type": "array"
                                }
                              },
                              "required": [
                                "managementEndpoints",
                                "clientCertificatethumbprint"
                              ]
                            }
                          }
                        },
                        "proxy": {
                          "description": "Details of the Backend WebProxy Server to use in the Request to Backend.",
                          "externalDocs": {
                            "description": "Backend entity uses these details to connect to a WebProxy.",
                            "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx"
                          },
                          "properties": {
                            "password": {
                              "description": "Password to connect to the WebProxy Server",
                              "type": "string"
                            },
                            "url": {
                              "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.",
                              "maxLength": 2000,
                              "minLength": 1,
                              "type": "string"
                            },
                            "username": {
                              "description": "Username to connect to the WebProxy server",
                              "type": "string"
                            }
                          },
                          "required": [
                            "url"
                          ]
                        },
                        "resourceId": {
                          "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "title": {
                          "description": "Backend Title.",
                          "maxLength": 300,
                          "minLength": 1,
                          "type": "string"
                        },
                        "tls": {
                          "description": "Properties controlling TLS Certificate Validation.",
                          "properties": {
                            "validateCertificateChain": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            },
                            "validateCertificateName": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            }
                          }
                        }
                      }
                    }
                  ],
                  "description": "Parameters supplied to the Create Backend operation.",
                  "properties": {
                    "protocol": {
                      "description": "Backend communication protocol.",
                      "enum": [
                        "http",
                        "soap"
                      ],
                      "type": "string",
                      "x-ms-enum": {
                        "modelAsString": true,
                        "name": "BackendProtocol",
                        "values": [
                          {
                            "description": "The Backend is a RESTful service.",
                            "value": "http"
                          },
                          {
                            "description": "The Backend is a SOAP service.",
                            "value": "soap"
                          }
                        ]
                      }
                    },
                    "url": {
                      "description": "Runtime Url of the Backend.",
                      "maxLength": 2000,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "required": [
                    "url",
                    "protocol"
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Backend"
        ],
        "x-ms-examples": {
          "ApiManagementGetBackend": {
            "parameters": {
              "api-version": "2019-01-01",
              "backendId": "sfbackend",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend",
                  "name": "sfbackend",
                  "properties": {
                    "description": "Service Fabric Test App 1",
                    "properties": {
                      "serviceFabricCluster": {
                        "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6",
                        "managementEndpoints": [
                          "https://somecluster.com"
                        ],
                        "maxPartitionResolutionRetries": 5,
                        "serverX509Names": [
                          {
                            "issuerCertificateThumbprint": "IssuerCertificateThumbprint1",
                            "name": "ServerCommonName1"
                          }
                        ]
                      }
                    },
                    "protocol": "http",
                    "url": "fabric:/mytestapp/mytestservice"
                  },
                  "type": "Microsoft.ApiManagement/service/backends"
                }
              }
            }
          }
        }
      },
      "head": {
        "description": "Gets the entity state (Etag) version of the backend specified by its identifier.",
        "operationId": "Backend_GetEntityTag",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.",
            "in": "path",
            "maxLength": 80,
            "minLength": 1,
            "name": "backendId",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "Specified backend entity exists and current entity state version is present in the ETag header.",
            "headers": {
              "ETag": {
                "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.",
                "type": "string"
              }
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Backend"
        ],
        "x-ms-examples": {
          "ApiManagementHeadBackend": {
            "parameters": {
              "api-version": "2019-01-01",
              "backendId": "sfbackend",
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "headers": {
                  "etag": "AAAAAAAAAAa="
                }
              }
            }
          }
        }
      },
      "patch": {
        "description": "Updates an existing backend.",
        "operationId": "Backend_Update",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.",
            "in": "path",
            "maxLength": 80,
            "minLength": 1,
            "name": "backendId",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Update parameters.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "description": "Backend update parameters.",
              "properties": {
                "properties": {
                  "allOf": [
                    {
                      "description": "Backend entity base Parameter set.",
                      "properties": {
                        "credentials": {
                          "description": "Details of the Credentials used to connect to Backend.",
                          "properties": {
                            "authorization": {
                              "description": "Authorization header information.",
                              "properties": {
                                "parameter": {
                                  "description": "Authentication Parameter value.",
                                  "maxLength": 300,
                                  "minLength": 1,
                                  "type": "string"
                                },
                                "scheme": {
                                  "description": "Authentication Scheme name.",
                                  "maxLength": 100,
                                  "minLength": 1,
                                  "type": "string"
                                }
                              },
                              "required": [
                                "scheme",
                                "parameter"
                              ]
                            },
                            "certificate": {
                              "description": "List of Client Certificate Thumbprint.",
                              "items": {
                                "type": "string"
                              },
                              "maxItems": 32,
                              "type": "array"
                            },
                            "header": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Header Parameter description.",
                              "type": "object"
                            },
                            "query": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Query Parameter description.",
                              "type": "object"
                            }
                          }
                        },
                        "description": {
                          "description": "Backend Description.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "properties": {
                          "description": "Properties specific to the Backend Type.",
                          "properties": {
                            "serviceFabricCluster": {
                              "description": "Properties of the Service Fabric Type Backend.",
                              "properties": {
                                "clientCertificatethumbprint": {
                                  "description": "The client certificate thumbprint for the management endpoint.",
                                  "type": "string"
                                },
                                "managementEndpoints": {
                                  "description": "The cluster management endpoint.",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "maxPartitionResolutionRetries": {
                                  "description": "Maximum number of retries while attempting resolve the partition.",
                                  "format": "int32",
                                  "type": "integer"
                                },
                                "serverCertificateThumbprints": {
                                  "description": "Thumbprints of certificates cluster management service uses for tls communication",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "serverX509Names": {
                                  "description": "Server X509 Certificate Names Collection",
                                  "items": {
                                    "description": "Properties of server X509Names.",
                                    "externalDocs": {
                                      "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security"
                                    },
                                    "properties": {
                                      "issuerCertificateThumbprint": {
                                        "description": "Thumbprint for the Issuer of the Certificate.",
                                        "type": "string"
                                      },
                                      "name": {
                                        "description": "Common Name of the Certificate.",
                                        "type": "string"
                                      }
                                    }
                                  },
                                  "type": "array"
                                }
                              },
                              "required": [
                                "managementEndpoints",
                                "clientCertificatethumbprint"
                              ]
                            }
                          }
                        },
                        "proxy": {
                          "description": "Details of the Backend WebProxy Server to use in the Request to Backend.",
                          "externalDocs": {
                            "description": "Backend entity uses these details to connect to a WebProxy.",
                            "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx"
                          },
                          "properties": {
                            "password": {
                              "description": "Password to connect to the WebProxy Server",
                              "type": "string"
                            },
                            "url": {
                              "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.",
                              "maxLength": 2000,
                              "minLength": 1,
                              "type": "string"
                            },
                            "username": {
                              "description": "Username to connect to the WebProxy server",
                              "type": "string"
                            }
                          },
                          "required": [
                            "url"
                          ]
                        },
                        "resourceId": {
                          "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "title": {
                          "description": "Backend Title.",
                          "maxLength": 300,
                          "minLength": 1,
                          "type": "string"
                        },
                        "tls": {
                          "description": "Properties controlling TLS Certificate Validation.",
                          "properties": {
                            "validateCertificateChain": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            },
                            "validateCertificateName": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            }
                          }
                        }
                      }
                    }
                  ],
                  "description": "Parameters supplied to the Update Backend operation.",
                  "properties": {
                    "protocol": {
                      "description": "Backend communication protocol.",
                      "enum": [
                        "http",
                        "soap"
                      ],
                      "type": "string",
                      "x-ms-enum": {
                        "modelAsString": true,
                        "name": "BackendProtocol",
                        "values": [
                          {
                            "description": "The Backend is a RESTful service.",
                            "value": "http"
                          },
                          {
                            "description": "The Backend is a SOAP service.",
                            "value": "soap"
                          }
                        ]
                      }
                    },
                    "url": {
                      "description": "Runtime Url of the Backend.",
                      "maxLength": 2000,
                      "minLength": 1,
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          {
            "description": "ETag of the Entity. ETag should match the current entity state from the header response of the GET request or it should be * for unconditional update.",
            "in": "header",
            "name": "If-Match",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "204": {
            "description": "The existing backend was successfully updated."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Backend"
        ],
        "x-ms-examples": {
          "ApiManagementUpdateBackend": {
            "parameters": {
              "If-Match": "*",
              "api-version": "2019-01-01",
              "backendId": "proxybackend",
              "parameters": {
                "properties": {
                  "description": "description5308",
                  "tls": {
                    "validateCertificateChain": false,
                    "validateCertificateName": true
                  }
                }
              },
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "204": {}
            }
          }
        }
      },
      "put": {
        "description": "Creates or Updates a backend.",
        "operationId": "Backend_CreateOrUpdate",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.",
            "in": "path",
            "maxLength": 80,
            "minLength": 1,
            "name": "backendId",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Create parameters.",
            "in": "body",
            "name": "parameters",
            "required": true,
            "schema": {
              "allOf": [
                {
                  "description": "The Resource definition.",
                  "properties": {
                    "id": {
                      "description": "Resource ID.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "name": {
                      "description": "Resource name.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "type": {
                      "description": "Resource type for API Management resource.",
                      "readOnly": true,
                      "type": "string"
                    }
                  },
                  "x-ms-azure-resource": true
                }
              ],
              "description": "Backend details.",
              "properties": {
                "properties": {
                  "allOf": [
                    {
                      "description": "Backend entity base Parameter set.",
                      "properties": {
                        "credentials": {
                          "description": "Details of the Credentials used to connect to Backend.",
                          "properties": {
                            "authorization": {
                              "description": "Authorization header information.",
                              "properties": {
                                "parameter": {
                                  "description": "Authentication Parameter value.",
                                  "maxLength": 300,
                                  "minLength": 1,
                                  "type": "string"
                                },
                                "scheme": {
                                  "description": "Authentication Scheme name.",
                                  "maxLength": 100,
                                  "minLength": 1,
                                  "type": "string"
                                }
                              },
                              "required": [
                                "scheme",
                                "parameter"
                              ]
                            },
                            "certificate": {
                              "description": "List of Client Certificate Thumbprint.",
                              "items": {
                                "type": "string"
                              },
                              "maxItems": 32,
                              "type": "array"
                            },
                            "header": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Header Parameter description.",
                              "type": "object"
                            },
                            "query": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Query Parameter description.",
                              "type": "object"
                            }
                          }
                        },
                        "description": {
                          "description": "Backend Description.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "properties": {
                          "description": "Properties specific to the Backend Type.",
                          "properties": {
                            "serviceFabricCluster": {
                              "description": "Properties of the Service Fabric Type Backend.",
                              "properties": {
                                "clientCertificatethumbprint": {
                                  "description": "The client certificate thumbprint for the management endpoint.",
                                  "type": "string"
                                },
                                "managementEndpoints": {
                                  "description": "The cluster management endpoint.",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "maxPartitionResolutionRetries": {
                                  "description": "Maximum number of retries while attempting resolve the partition.",
                                  "format": "int32",
                                  "type": "integer"
                                },
                                "serverCertificateThumbprints": {
                                  "description": "Thumbprints of certificates cluster management service uses for tls communication",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "serverX509Names": {
                                  "description": "Server X509 Certificate Names Collection",
                                  "items": {
                                    "description": "Properties of server X509Names.",
                                    "externalDocs": {
                                      "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security"
                                    },
                                    "properties": {
                                      "issuerCertificateThumbprint": {
                                        "description": "Thumbprint for the Issuer of the Certificate.",
                                        "type": "string"
                                      },
                                      "name": {
                                        "description": "Common Name of the Certificate.",
                                        "type": "string"
                                      }
                                    }
                                  },
                                  "type": "array"
                                }
                              },
                              "required": [
                                "managementEndpoints",
                                "clientCertificatethumbprint"
                              ]
                            }
                          }
                        },
                        "proxy": {
                          "description": "Details of the Backend WebProxy Server to use in the Request to Backend.",
                          "externalDocs": {
                            "description": "Backend entity uses these details to connect to a WebProxy.",
                            "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx"
                          },
                          "properties": {
                            "password": {
                              "description": "Password to connect to the WebProxy Server",
                              "type": "string"
                            },
                            "url": {
                              "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.",
                              "maxLength": 2000,
                              "minLength": 1,
                              "type": "string"
                            },
                            "username": {
                              "description": "Username to connect to the WebProxy server",
                              "type": "string"
                            }
                          },
                          "required": [
                            "url"
                          ]
                        },
                        "resourceId": {
                          "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "title": {
                          "description": "Backend Title.",
                          "maxLength": 300,
                          "minLength": 1,
                          "type": "string"
                        },
                        "tls": {
                          "description": "Properties controlling TLS Certificate Validation.",
                          "properties": {
                            "validateCertificateChain": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            },
                            "validateCertificateName": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            }
                          }
                        }
                      }
                    }
                  ],
                  "description": "Parameters supplied to the Create Backend operation.",
                  "properties": {
                    "protocol": {
                      "description": "Backend communication protocol.",
                      "enum": [
                        "http",
                        "soap"
                      ],
                      "type": "string",
                      "x-ms-enum": {
                        "modelAsString": true,
                        "name": "BackendProtocol",
                        "values": [
                          {
                            "description": "The Backend is a RESTful service.",
                            "value": "http"
                          },
                          {
                            "description": "The Backend is a SOAP service.",
                            "value": "soap"
                          }
                        ]
                      }
                    },
                    "url": {
                      "description": "Runtime Url of the Backend.",
                      "maxLength": 2000,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "required": [
                    "url",
                    "protocol"
                  ]
                }
              }
            }
          },
          {
            "description": "ETag of the Entity. Not required when creating an entity, but required when updating an entity.",
            "in": "header",
            "name": "If-Match",
            "required": false,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "The existing backend was successfully updated.",
            "headers": {
              "ETag": {
                "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.",
                "type": "string"
              }
            },
            "schema": {
              "allOf": [
                {
                  "description": "The Resource definition.",
                  "properties": {
                    "id": {
                      "description": "Resource ID.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "name": {
                      "description": "Resource name.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "type": {
                      "description": "Resource type for API Management resource.",
                      "readOnly": true,
                      "type": "string"
                    }
                  },
                  "x-ms-azure-resource": true
                }
              ],
              "description": "Backend details.",
              "properties": {
                "properties": {
                  "allOf": [
                    {
                      "description": "Backend entity base Parameter set.",
                      "properties": {
                        "credentials": {
                          "description": "Details of the Credentials used to connect to Backend.",
                          "properties": {
                            "authorization": {
                              "description": "Authorization header information.",
                              "properties": {
                                "parameter": {
                                  "description": "Authentication Parameter value.",
                                  "maxLength": 300,
                                  "minLength": 1,
                                  "type": "string"
                                },
                                "scheme": {
                                  "description": "Authentication Scheme name.",
                                  "maxLength": 100,
                                  "minLength": 1,
                                  "type": "string"
                                }
                              },
                              "required": [
                                "scheme",
                                "parameter"
                              ]
                            },
                            "certificate": {
                              "description": "List of Client Certificate Thumbprint.",
                              "items": {
                                "type": "string"
                              },
                              "maxItems": 32,
                              "type": "array"
                            },
                            "header": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Header Parameter description.",
                              "type": "object"
                            },
                            "query": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Query Parameter description.",
                              "type": "object"
                            }
                          }
                        },
                        "description": {
                          "description": "Backend Description.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "properties": {
                          "description": "Properties specific to the Backend Type.",
                          "properties": {
                            "serviceFabricCluster": {
                              "description": "Properties of the Service Fabric Type Backend.",
                              "properties": {
                                "clientCertificatethumbprint": {
                                  "description": "The client certificate thumbprint for the management endpoint.",
                                  "type": "string"
                                },
                                "managementEndpoints": {
                                  "description": "The cluster management endpoint.",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "maxPartitionResolutionRetries": {
                                  "description": "Maximum number of retries while attempting resolve the partition.",
                                  "format": "int32",
                                  "type": "integer"
                                },
                                "serverCertificateThumbprints": {
                                  "description": "Thumbprints of certificates cluster management service uses for tls communication",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "serverX509Names": {
                                  "description": "Server X509 Certificate Names Collection",
                                  "items": {
                                    "description": "Properties of server X509Names.",
                                    "externalDocs": {
                                      "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security"
                                    },
                                    "properties": {
                                      "issuerCertificateThumbprint": {
                                        "description": "Thumbprint for the Issuer of the Certificate.",
                                        "type": "string"
                                      },
                                      "name": {
                                        "description": "Common Name of the Certificate.",
                                        "type": "string"
                                      }
                                    }
                                  },
                                  "type": "array"
                                }
                              },
                              "required": [
                                "managementEndpoints",
                                "clientCertificatethumbprint"
                              ]
                            }
                          }
                        },
                        "proxy": {
                          "description": "Details of the Backend WebProxy Server to use in the Request to Backend.",
                          "externalDocs": {
                            "description": "Backend entity uses these details to connect to a WebProxy.",
                            "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx"
                          },
                          "properties": {
                            "password": {
                              "description": "Password to connect to the WebProxy Server",
                              "type": "string"
                            },
                            "url": {
                              "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.",
                              "maxLength": 2000,
                              "minLength": 1,
                              "type": "string"
                            },
                            "username": {
                              "description": "Username to connect to the WebProxy server",
                              "type": "string"
                            }
                          },
                          "required": [
                            "url"
                          ]
                        },
                        "resourceId": {
                          "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "title": {
                          "description": "Backend Title.",
                          "maxLength": 300,
                          "minLength": 1,
                          "type": "string"
                        },
                        "tls": {
                          "description": "Properties controlling TLS Certificate Validation.",
                          "properties": {
                            "validateCertificateChain": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            },
                            "validateCertificateName": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            }
                          }
                        }
                      }
                    }
                  ],
                  "description": "Parameters supplied to the Create Backend operation.",
                  "properties": {
                    "protocol": {
                      "description": "Backend communication protocol.",
                      "enum": [
                        "http",
                        "soap"
                      ],
                      "type": "string",
                      "x-ms-enum": {
                        "modelAsString": true,
                        "name": "BackendProtocol",
                        "values": [
                          {
                            "description": "The Backend is a RESTful service.",
                            "value": "http"
                          },
                          {
                            "description": "The Backend is a SOAP service.",
                            "value": "soap"
                          }
                        ]
                      }
                    },
                    "url": {
                      "description": "Runtime Url of the Backend.",
                      "maxLength": 2000,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "required": [
                    "url",
                    "protocol"
                  ]
                }
              }
            }
          },
          "201": {
            "description": "Backend was successfully created.",
            "headers": {
              "ETag": {
                "description": "Current entity state version. Should be treated as opaque and used to make conditional HTTP requests.",
                "type": "string"
              }
            },
            "schema": {
              "allOf": [
                {
                  "description": "The Resource definition.",
                  "properties": {
                    "id": {
                      "description": "Resource ID.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "name": {
                      "description": "Resource name.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "type": {
                      "description": "Resource type for API Management resource.",
                      "readOnly": true,
                      "type": "string"
                    }
                  },
                  "x-ms-azure-resource": true
                }
              ],
              "description": "Backend details.",
              "properties": {
                "properties": {
                  "allOf": [
                    {
                      "description": "Backend entity base Parameter set.",
                      "properties": {
                        "credentials": {
                          "description": "Details of the Credentials used to connect to Backend.",
                          "properties": {
                            "authorization": {
                              "description": "Authorization header information.",
                              "properties": {
                                "parameter": {
                                  "description": "Authentication Parameter value.",
                                  "maxLength": 300,
                                  "minLength": 1,
                                  "type": "string"
                                },
                                "scheme": {
                                  "description": "Authentication Scheme name.",
                                  "maxLength": 100,
                                  "minLength": 1,
                                  "type": "string"
                                }
                              },
                              "required": [
                                "scheme",
                                "parameter"
                              ]
                            },
                            "certificate": {
                              "description": "List of Client Certificate Thumbprint.",
                              "items": {
                                "type": "string"
                              },
                              "maxItems": 32,
                              "type": "array"
                            },
                            "header": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Header Parameter description.",
                              "type": "object"
                            },
                            "query": {
                              "additionalProperties": {
                                "items": {
                                  "type": "string"
                                },
                                "type": "array"
                              },
                              "description": "Query Parameter description.",
                              "type": "object"
                            }
                          }
                        },
                        "description": {
                          "description": "Backend Description.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "properties": {
                          "description": "Properties specific to the Backend Type.",
                          "properties": {
                            "serviceFabricCluster": {
                              "description": "Properties of the Service Fabric Type Backend.",
                              "properties": {
                                "clientCertificatethumbprint": {
                                  "description": "The client certificate thumbprint for the management endpoint.",
                                  "type": "string"
                                },
                                "managementEndpoints": {
                                  "description": "The cluster management endpoint.",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "maxPartitionResolutionRetries": {
                                  "description": "Maximum number of retries while attempting resolve the partition.",
                                  "format": "int32",
                                  "type": "integer"
                                },
                                "serverCertificateThumbprints": {
                                  "description": "Thumbprints of certificates cluster management service uses for tls communication",
                                  "items": {
                                    "type": "string"
                                  },
                                  "type": "array"
                                },
                                "serverX509Names": {
                                  "description": "Server X509 Certificate Names Collection",
                                  "items": {
                                    "description": "Properties of server X509Names.",
                                    "externalDocs": {
                                      "url": "https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-windows-cluster-x509-security"
                                    },
                                    "properties": {
                                      "issuerCertificateThumbprint": {
                                        "description": "Thumbprint for the Issuer of the Certificate.",
                                        "type": "string"
                                      },
                                      "name": {
                                        "description": "Common Name of the Certificate.",
                                        "type": "string"
                                      }
                                    }
                                  },
                                  "type": "array"
                                }
                              },
                              "required": [
                                "managementEndpoints",
                                "clientCertificatethumbprint"
                              ]
                            }
                          }
                        },
                        "proxy": {
                          "description": "Details of the Backend WebProxy Server to use in the Request to Backend.",
                          "externalDocs": {
                            "description": "Backend entity uses these details to connect to a WebProxy.",
                            "url": "https://msdn.microsoft.com/en-us/library/system.net.webproxy(v=vs.110).aspx"
                          },
                          "properties": {
                            "password": {
                              "description": "Password to connect to the WebProxy Server",
                              "type": "string"
                            },
                            "url": {
                              "description": "WebProxy Server AbsoluteUri property which includes the entire URI stored in the Uri instance, including all fragments and query strings.",
                              "maxLength": 2000,
                              "minLength": 1,
                              "type": "string"
                            },
                            "username": {
                              "description": "Username to connect to the WebProxy server",
                              "type": "string"
                            }
                          },
                          "required": [
                            "url"
                          ]
                        },
                        "resourceId": {
                          "description": "Management Uri of the Resource in External System. This url can be the Arm Resource Id of Logic Apps, Function Apps or Api Apps.",
                          "maxLength": 2000,
                          "minLength": 1,
                          "type": "string"
                        },
                        "title": {
                          "description": "Backend Title.",
                          "maxLength": 300,
                          "minLength": 1,
                          "type": "string"
                        },
                        "tls": {
                          "description": "Properties controlling TLS Certificate Validation.",
                          "properties": {
                            "validateCertificateChain": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate chain validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            },
                            "validateCertificateName": {
                              "default": true,
                              "description": "Flag indicating whether SSL certificate name validation should be done when using self-signed certificates for this backend host.",
                              "type": "boolean"
                            }
                          }
                        }
                      }
                    }
                  ],
                  "description": "Parameters supplied to the Create Backend operation.",
                  "properties": {
                    "protocol": {
                      "description": "Backend communication protocol.",
                      "enum": [
                        "http",
                        "soap"
                      ],
                      "type": "string",
                      "x-ms-enum": {
                        "modelAsString": true,
                        "name": "BackendProtocol",
                        "values": [
                          {
                            "description": "The Backend is a RESTful service.",
                            "value": "http"
                          },
                          {
                            "description": "The Backend is a SOAP service.",
                            "value": "soap"
                          }
                        ]
                      }
                    },
                    "url": {
                      "description": "Runtime Url of the Backend.",
                      "maxLength": 2000,
                      "minLength": 1,
                      "type": "string"
                    }
                  },
                  "required": [
                    "url",
                    "protocol"
                  ]
                }
              }
            }
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "Backend"
        ],
        "x-ms-examples": {
          "ApiManagementCreateBackendProxyBackend": {
            "parameters": {
              "api-version": "2019-01-01",
              "backendId": "proxybackend",
              "parameters": {
                "properties": {
                  "credentials": {
                    "authorization": {
                      "parameter": "opensesma",
                      "scheme": "Basic"
                    },
                    "header": {
                      "x-my-1": [
                        "val1",
                        "val2"
                      ]
                    },
                    "query": {
                      "sv": [
                        "xx",
                        "bb",
                        "cc"
                      ]
                    }
                  },
                  "description": "description5308",
                  "protocol": "http",
                  "proxy": {
                    "password": "opensesame",
                    "url": "http://192.168.1.1:8080",
                    "username": "Contoso\\admin"
                  },
                  "tls": {
                    "validateCertificateChain": true,
                    "validateCertificateName": true
                  },
                  "url": "https://backendname2644/"
                }
              },
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend",
                  "name": "proxybackend",
                  "properties": {
                    "credentials": {
                      "authorization": {
                        "parameter": "opensesma",
                        "scheme": "Basic"
                      },
                      "header": {
                        "x-my-1": [
                          "val1",
                          "val2"
                        ]
                      },
                      "query": {
                        "sv": [
                          "xx",
                          "bb",
                          "cc"
                        ]
                      }
                    },
                    "description": "description5308",
                    "protocol": "http",
                    "proxy": {
                      "password": "opensesame",
                      "url": "http://192.168.1.1:8080",
                      "username": "Contoso\\admin"
                    },
                    "tls": {
                      "validateCertificateChain": false,
                      "validateCertificateName": false
                    },
                    "url": "https://backendname2644/"
                  },
                  "type": "Microsoft.ApiManagement/service/backends"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/proxybackend",
                  "name": "proxybackend",
                  "properties": {
                    "credentials": {
                      "authorization": {
                        "parameter": "opensesma",
                        "scheme": "Basic"
                      },
                      "header": {
                        "x-my-1": [
                          "val1",
                          "val2"
                        ]
                      },
                      "query": {
                        "sv": [
                          "xx",
                          "bb",
                          "cc"
                        ]
                      }
                    },
                    "description": "description5308",
                    "protocol": "http",
                    "proxy": {
                      "password": "opensesame",
                      "url": "http://192.168.1.1:8080",
                      "username": "Contoso\\admin"
                    },
                    "tls": {
                      "validateCertificateChain": false,
                      "validateCertificateName": false
                    },
                    "url": "https://backendname2644/"
                  },
                  "type": "Microsoft.ApiManagement/service/backends"
                }
              }
            }
          },
          "ApiManagementCreateBackendServiceFabric": {
            "parameters": {
              "api-version": "2019-01-01",
              "backendId": "sfbackend",
              "parameters": {
                "properties": {
                  "description": "Service Fabric Test App 1",
                  "properties": {
                    "serviceFabricCluster": {
                      "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6",
                      "managementEndpoints": [
                        "https://somecluster.com"
                      ],
                      "maxPartitionResolutionRetries": 5,
                      "serverX509Names": [
                        {
                          "issuerCertificateThumbprint": "IssuerCertificateThumbprint1",
                          "name": "ServerCommonName1"
                        }
                      ]
                    }
                  },
                  "protocol": "http",
                  "url": "fabric:/mytestapp/mytestservice"
                }
              },
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "200": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend",
                  "name": "sfbackend",
                  "properties": {
                    "description": "Service Fabric Test App 1",
                    "properties": {
                      "serviceFabricCluster": {
                        "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6",
                        "managementEndpoints": [
                          "https://somecluster.com"
                        ],
                        "maxPartitionResolutionRetries": 5,
                        "serverX509Names": [
                          {
                            "issuerCertificateThumbprint": "IssuerCertificateThumbprint1",
                            "name": "ServerCommonName1"
                          }
                        ]
                      }
                    },
                    "protocol": "http",
                    "url": "fabric:/mytestapp/mytestservice"
                  },
                  "type": "Microsoft.ApiManagement/service/backends"
                }
              },
              "201": {
                "body": {
                  "id": "/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/backends/sfbackend",
                  "name": "sfbackend",
                  "properties": {
                    "description": "Service Fabric Test App 1",
                    "properties": {
                      "serviceFabricCluster": {
                        "clientCertificatethumbprint": "EBA029198AA3E76EF0D70482626E5BCF148594A6",
                        "managementEndpoints": [
                          "https://somecluster.com"
                        ],
                        "maxPartitionResolutionRetries": 5,
                        "serverX509Names": [
                          {
                            "issuerCertificateThumbprint": "IssuerCertificateThumbprint1",
                            "name": "ServerCommonName1"
                          }
                        ]
                      }
                    },
                    "protocol": "http",
                    "url": "fabric:/mytestapp/mytestservice"
                  },
                  "type": "Microsoft.ApiManagement/service/backends"
                }
              }
            }
          }
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/backends/{backendId}/reconnect": {
      "post": {
        "description": "Notifies the APIM proxy to create a new connection to the backend after the specified timeout. If no timeout was specified, timeout of 2 minutes is used.",
        "operationId": "Backend_Reconnect",
        "parameters": [
          {
            "description": "The name of the resource group.",
            "in": "path",
            "name": "resourceGroupName",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "The name of the API Management service.",
            "in": "path",
            "maxLength": 50,
            "minLength": 1,
            "name": "serviceName",
            "pattern": "^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Identifier of the Backend entity. Must be unique in the current API Management service instance.",
            "in": "path",
            "maxLength": 80,
            "minLength": 1,
            "name": "backendId",
            "required": true,
            "type": "string",
            "x-ms-parameter-location": "method"
          },
          {
            "description": "Reconnect request parameters.",
            "in": "body",
            "name": "parameters",
            "required": false,
            "schema": {
              "allOf": [
                {
                  "description": "The Resource definition.",
                  "properties": {
                    "id": {
                      "description": "Resource ID.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "name": {
                      "description": "Resource name.",
                      "readOnly": true,
                      "type": "string"
                    },
                    "type": {
                      "description": "Resource type for API Management resource.",
                      "readOnly": true,
                      "type": "string"
                    }
                  },
                  "x-ms-azure-resource": true
                }
              ],
              "description": "Reconnect request parameters.",
              "properties": {
                "properties": {
                  "description": "Properties to control reconnect requests.",
                  "properties": {
                    "after": {
                      "description": "Duration in ISO8601 format after which reconnect will be initiated. Minimum duration of the Reconnect is PT2M.",
                      "format": "duration",
                      "type": "string"
                    }
                  }
                }
              }
            }
          },
          {
            "description": "Version of the API to be used with the client request.",
            "in": "query",
            "name": "api-version",
            "required": true,
            "type": "string"
          },
          {
            "description": "Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.",
            "in": "path",
            "name": "subscriptionId",
            "required": true,
            "type": "string"
          }
        ],
        "responses": {
          "202": {
            "description": "Reconnect request accepted."
          },
          "default": {
            "description": "Error response describing why the operation failed.",
            "schema": {
              "description": "Error Response.",
              "properties": {
                "error": {
                  "description": "Error Body contract.",
                  "properties": {
                    "code": {
                      "description": "Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.",
                      "type": "string"
                    },
                    "details": {
                      "description": "The list of invalid fields send in request, in case of validation error.",
                      "items": {
                        "description": "Error Field contract.",
                        "properties": {
                          "code": {
                            "description": "Property level error code.",
                            "type": "string"
                          },
                          "message": {
                            "description": "Human-readable representation of property-level error.",
                            "type": "string"
                          },
                          "target": {
                            "description": "Property name.",
                            "type": "string"
                          }
                        }
                      },
                      "type": "array"
                    },
                    "message": {
                      "description": "Human-readable representation of the error.",
                      "type": "string"
                    }
                  }
                }
              }
            }
          }
        },
        "tags": [
          "BackendReconnect"
        ],
        "x-ms-examples": {
          "ApiManagementBackendReconnect": {
            "parameters": {
              "api-version": "2019-01-01",
              "backendId": "proxybackend",
              "parameters": {
                "properties": {
                  "after": "PT3S"
                }
              },
              "resourceGroupName": "rg1",
              "serviceName": "apimService1",
              "subscriptionId": "subid"
            },
            "responses": {
              "202": {}
            }
          }
        }
      }
    }
  },
  "definitions": {}
}