{
  "swagger": "2.0",
  "schemes": [
    "https"
  ],
  "host": "management.azure.com",
  "info": {
    "title": "AppServiceCertificateOrders API Client",
    "version": "2015-08-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/web/resource-manager/Microsoft.CertificateRegistration/stable/2015-08-01/AppServiceCertificateOrders.json",
        "version": "2.0"
      }
    ],
    "x-preferred": false,
    "x-providerName": "azure.com",
    "x-serviceName": "web-AppServiceCertificateOrders",
    "x-tags": [
      "Azure",
      "Microsoft"
    ]
  },
  "consumes": [
    "application/json"
  ],
  "produces": [
    "application/json"
  ],
  "securityDefinitions": {
    "azure_auth": {
      "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize",
      "description": "Azure Active Directory OAuth2 Flow",
      "flow": "implicit",
      "scopes": {
        "user_impersonation": "impersonate your user account"
      },
      "type": "oauth2"
    }
  },
  "security": [
    {
      "azure_auth": [
        "user_impersonation"
      ]
    }
  ],
  "parameters": {
    "apiVersionParameter": {
      "description": "API Version",
      "in": "query",
      "name": "api-version",
      "required": true,
      "type": "string"
    },
    "resourceGroupNameParameter": {
      "description": "Name of the resource group to which the resource belongs.",
      "in": "path",
      "maxLength": 90,
      "minLength": 1,
      "name": "resourceGroupName",
      "pattern": "^[-\\w\\._\\(\\)]+[^\\.]$",
      "required": true,
      "type": "string",
      "x-ms-parameter-location": "method"
    },
    "subscriptionIdParameter": {
      "description": "Your Azure subscription ID. This is a GUID-formatted string (e.g. 00000000-0000-0000-0000-000000000000).",
      "in": "path",
      "name": "subscriptionId",
      "required": true,
      "type": "string"
    }
  },
  "paths": {
    "/subscriptions/{subscriptionId}/providers/Microsoft.CertificateRegistration/certificateOrders": {
      "get": {
        "description": "List all certificate orders in a subscription.",
        "operationId": "AppServiceCertificateOrders_List",
        "parameters": [
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrderCollection"
            }
          }
        },
        "summary": "List all certificate orders in a subscription.",
        "tags": [
          "AppServiceCertificateOrders"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/providers/Microsoft.CertificateRegistration/validateCertificateRegistrationInformation": {
      "post": {
        "description": "Validate information for a certificate order.",
        "operationId": "AppServiceCertificateOrders_ValidatePurchaseInformation",
        "parameters": [
          {
            "description": "Information for a certificate order.",
            "in": "body",
            "name": "appServiceCertificateOrder",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrder"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        },
        "summary": "Validate information for a certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders": {
      "get": {
        "description": "Get certificate orders in a resource group.",
        "operationId": "AppServiceCertificateOrders_ListByResourceGroup",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrderCollection"
            }
          }
        },
        "summary": "Get certificate orders in a resource group.",
        "tags": [
          "AppServiceCertificateOrders"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}": {
      "delete": {
        "description": "Delete an existing certificate order.",
        "operationId": "AppServiceCertificateOrders_Delete",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Successfully deleted certificate order."
          },
          "204": {
            "description": "Certificate order does not exist."
          }
        },
        "summary": "Delete an existing certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      },
      "get": {
        "description": "Get a certificate order.",
        "operationId": "AppServiceCertificateOrders_Get",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order..",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrder"
            }
          }
        },
        "summary": "Get a certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      },
      "patch": {
        "description": "Create or update a certificate purchase order.",
        "operationId": "AppServiceCertificateOrders_Update",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Distinguished name to use for the certificate order.",
            "in": "body",
            "name": "certificateDistinguishedName",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrderPatchResource"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "App Service Certificate Order is created.",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrder"
            }
          },
          "201": {
            "description": "App Service Certificate Order creation operation is in progress",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrder"
            }
          }
        },
        "summary": "Create or update a certificate purchase order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      },
      "put": {
        "description": "Create or update a certificate purchase order.",
        "operationId": "AppServiceCertificateOrders_CreateOrUpdate",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Distinguished name to use for the certificate order.",
            "in": "body",
            "name": "certificateDistinguishedName",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrder"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "App Service Certificate Order is created.",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrder"
            }
          },
          "201": {
            "description": "App Service Certificate Order creation operation is in progress",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateOrder"
            }
          }
        },
        "summary": "Create or update a certificate purchase order.",
        "tags": [
          "AppServiceCertificateOrders"
        ],
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/certificates": {
      "get": {
        "description": "List all certificates associated with a certificate order.",
        "operationId": "AppServiceCertificateOrders_ListCertificates",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateCollection"
            }
          }
        },
        "summary": "List all certificates associated with a certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ],
        "x-ms-pageable": {
          "nextLinkName": "nextLink"
        }
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/certificates/{name}": {
      "delete": {
        "description": "Delete the certificate associated with a certificate order.",
        "operationId": "AppServiceCertificateOrders_DeleteCertificate",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name of the certificate.",
            "in": "path",
            "name": "name",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "Successfully deleted certificate."
          },
          "204": {
            "description": "Certificate does not exist."
          }
        },
        "summary": "Delete the certificate associated with a certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      },
      "get": {
        "description": "Get the certificate associated with a certificate order.",
        "operationId": "AppServiceCertificateOrders_GetCertificate",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name of the certificate.",
            "in": "path",
            "name": "name",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateResource"
            }
          }
        },
        "summary": "Get the certificate associated with a certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      },
      "patch": {
        "description": "Creates or updates a certificate and associates with key vault secret.",
        "operationId": "AppServiceCertificateOrders_UpdateCertificate",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name of the certificate.",
            "in": "path",
            "name": "name",
            "required": true,
            "type": "string"
          },
          {
            "description": "Key vault certificate resource Id.",
            "in": "body",
            "name": "keyVaultCertificate",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AppServiceCertificatePatchResource"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "App Service Certificate is created.",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateResource"
            }
          },
          "201": {
            "description": "App Service Certificate creation operation is in progress",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateResource"
            }
          }
        },
        "summary": "Creates or updates a certificate and associates with key vault secret.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      },
      "put": {
        "description": "Creates or updates a certificate and associates with key vault secret.",
        "operationId": "AppServiceCertificateOrders_CreateOrUpdateCertificate",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Name of the certificate.",
            "in": "path",
            "name": "name",
            "required": true,
            "type": "string"
          },
          {
            "description": "Key vault certificate resource Id.",
            "in": "body",
            "name": "keyVaultCertificate",
            "required": true,
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateResource"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "App Service Certificate is created.",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateResource"
            }
          },
          "201": {
            "description": "App Service Certificate creation operation is in progress",
            "schema": {
              "$ref": "#/definitions/AppServiceCertificateResource"
            }
          }
        },
        "summary": "Creates or updates a certificate and associates with key vault secret.",
        "tags": [
          "AppServiceCertificateOrders"
        ],
        "x-ms-long-running-operation": true
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/reissue": {
      "post": {
        "description": "Reissue an existing certificate order.",
        "operationId": "AppServiceCertificateOrders_Reissue",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Parameters for the reissue.",
            "in": "body",
            "name": "reissueCertificateOrderRequest",
            "required": true,
            "schema": {
              "$ref": "#/definitions/ReissueCertificateOrderRequest"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        },
        "summary": "Reissue an existing certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/renew": {
      "post": {
        "description": "Renew an existing certificate order.",
        "operationId": "AppServiceCertificateOrders_Renew",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Renew parameters",
            "in": "body",
            "name": "renewCertificateOrderRequest",
            "required": true,
            "schema": {
              "$ref": "#/definitions/RenewCertificateOrderRequest"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        },
        "summary": "Renew an existing certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/resendEmail": {
      "post": {
        "description": "Resend certificate email.",
        "operationId": "AppServiceCertificateOrders_ResendEmail",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        },
        "summary": "Resend certificate email.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/resendRequestEmails": {
      "post": {
        "description": "Verify domain ownership for this certificate order.",
        "operationId": "AppServiceCertificateOrders_ResendRequestEmails",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Email address",
            "in": "body",
            "name": "nameIdentifier",
            "required": true,
            "schema": {
              "description": "Identifies an object.",
              "properties": {
                "name": {
                  "description": "Name of the object.",
                  "type": "string"
                }
              },
              "type": "object"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        },
        "summary": "Verify domain ownership for this certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/retrieveSiteSeal": {
      "post": {
        "description": "Verify domain ownership for this certificate order.",
        "operationId": "AppServiceCertificateOrders_RetrieveSiteSeal",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "description": "Site seal request.",
            "in": "body",
            "name": "siteSealRequest",
            "required": true,
            "schema": {
              "$ref": "#/definitions/SiteSealRequest"
            }
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "$ref": "#/definitions/SiteSeal"
            }
          }
        },
        "summary": "Verify domain ownership for this certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{certificateOrderName}/verifyDomainOwnership": {
      "post": {
        "description": "Verify domain ownership for this certificate order.",
        "operationId": "AppServiceCertificateOrders_VerifyDomainOwnership",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "certificateOrderName",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "204": {
            "description": "No Content"
          }
        },
        "summary": "Verify domain ownership for this certificate order.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{name}/retrieveCertificateActions": {
      "post": {
        "description": "Retrieve the list of certificate actions.",
        "operationId": "AppServiceCertificateOrders_RetrieveCertificateActions",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "name",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "items": {
                "$ref": "#/definitions/CertificateOrderAction"
              },
              "type": "array"
            }
          }
        },
        "summary": "Retrieve the list of certificate actions.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    },
    "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.CertificateRegistration/certificateOrders/{name}/retrieveEmailHistory": {
      "post": {
        "description": "Retrieve email history.",
        "operationId": "AppServiceCertificateOrders_RetrieveCertificateEmailHistory",
        "parameters": [
          {
            "$ref": "#/parameters/resourceGroupNameParameter"
          },
          {
            "description": "Name of the certificate order.",
            "in": "path",
            "name": "name",
            "required": true,
            "type": "string"
          },
          {
            "$ref": "#/parameters/subscriptionIdParameter"
          },
          {
            "$ref": "#/parameters/apiVersionParameter"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "schema": {
              "items": {
                "$ref": "#/definitions/CertificateEmail"
              },
              "type": "array"
            }
          }
        },
        "summary": "Retrieve email history.",
        "tags": [
          "AppServiceCertificateOrders"
        ]
      }
    }
  },
  "definitions": {
    "AppServiceCertificate": {
      "description": "Key Vault container for a certificate that is purchased through Azure.",
      "properties": {
        "keyVaultId": {
          "description": "Key Vault resource Id.",
          "type": "string"
        },
        "keyVaultSecretName": {
          "description": "Key Vault secret name.",
          "type": "string"
        },
        "provisioningState": {
          "description": "Status of the Key Vault secret.",
          "enum": [
            "Initialized",
            "WaitingOnCertificateOrder",
            "Succeeded",
            "CertificateOrderFailed",
            "OperationNotPermittedOnKeyVault",
            "AzureServiceUnauthorizedToAccessKeyVault",
            "KeyVaultDoesNotExist",
            "KeyVaultSecretDoesNotExist",
            "UnknownError",
            "ExternalPrivateKey",
            "Unknown"
          ],
          "readOnly": true,
          "type": "string",
          "x-ms-enum": {
            "modelAsString": false,
            "name": "KeyVaultSecretStatus"
          }
        }
      },
      "type": "object"
    },
    "AppServiceCertificateCollection": {
      "description": "Collection of certificate order certificates.",
      "properties": {
        "nextLink": {
          "description": "Link to next page of resources.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "Collection of resources.",
          "items": {
            "$ref": "#/definitions/AppServiceCertificateResource"
          },
          "type": "array"
        }
      },
      "required": [
        "value"
      ],
      "type": "object"
    },
    "AppServiceCertificateOrder": {
      "allOf": [
        {
          "description": "Azure resource. This resource is tracked in Azure Resource Manager",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "location": {
              "description": "Resource Location.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "tags": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Resource tags.",
              "type": "object"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "required": [
            "location"
          ],
          "x-ms-azure-resource": true
        }
      ],
      "description": "SSL certificate purchase order.",
      "properties": {
        "properties": {
          "description": "AppServiceCertificateOrder resource specific properties",
          "properties": {
            "appServiceCertificateNotRenewableReasons": {
              "description": "Reasons why App Service Certificate is not renewable at the current moment.",
              "items": {
                "enum": [
                  "RegistrationStatusNotSupportedForRenewal",
                  "ExpirationNotInRenewalTimeRange",
                  "SubscriptionNotActive"
                ],
                "type": "string"
              },
              "readOnly": true,
              "type": "array"
            },
            "autoRenew": {
              "default": true,
              "description": "<code>true</code> if the certificate should be automatically renewed when it expires; otherwise, <code>false</code>.",
              "type": "boolean"
            },
            "certificates": {
              "additionalProperties": {
                "$ref": "#/definitions/AppServiceCertificate"
              },
              "description": "State of the Key Vault secret.",
              "type": "object"
            },
            "csr": {
              "description": "Last CSR that was created for this order.",
              "type": "string",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "distinguishedName": {
              "description": "Certificate distinguished name.",
              "type": "string",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "domainVerificationToken": {
              "description": "Domain verification token.",
              "readOnly": true,
              "type": "string"
            },
            "expirationTime": {
              "description": "Certificate expiration time.",
              "format": "date-time",
              "readOnly": true,
              "type": "string"
            },
            "intermediate": {
              "$ref": "#/definitions/CertificateDetails",
              "description": "Intermediate certificate.",
              "readOnly": true
            },
            "isPrivateKeyExternal": {
              "description": "<code>true</code> if private key is external; otherwise, <code>false</code>.",
              "readOnly": true,
              "type": "boolean"
            },
            "keySize": {
              "default": 2048,
              "description": "Certificate key size.",
              "format": "int32",
              "type": "integer",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "lastCertificateIssuanceTime": {
              "description": "Certificate last issuance time.",
              "format": "date-time",
              "readOnly": true,
              "type": "string"
            },
            "nextAutoRenewalTimeStamp": {
              "description": "Time stamp when the certificate would be auto renewed next",
              "format": "date-time",
              "readOnly": true,
              "type": "string"
            },
            "productType": {
              "description": "Certificate product type.",
              "enum": [
                "StandardDomainValidatedSsl",
                "StandardDomainValidatedWildCardSsl"
              ],
              "type": "string",
              "x-ms-enum": {
                "modelAsString": false,
                "name": "CertificateProductType"
              },
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "provisioningState": {
              "description": "Status of certificate order.",
              "enum": [
                "Succeeded",
                "Failed",
                "Canceled",
                "InProgress",
                "Deleting"
              ],
              "readOnly": true,
              "type": "string",
              "x-ms-enum": {
                "modelAsString": false,
                "name": "ProvisioningState"
              }
            },
            "root": {
              "$ref": "#/definitions/CertificateDetails",
              "description": "Root certificate.",
              "readOnly": true
            },
            "serialNumber": {
              "description": "Current serial number of the certificate.",
              "readOnly": true,
              "type": "string"
            },
            "signedCertificate": {
              "$ref": "#/definitions/CertificateDetails",
              "description": "Signed certificate.",
              "readOnly": true
            },
            "status": {
              "description": "Current order status.",
              "enum": [
                "Pendingissuance",
                "Issued",
                "Revoked",
                "Canceled",
                "Denied",
                "Pendingrevocation",
                "PendingRekey",
                "Unused",
                "Expired",
                "NotSubmitted"
              ],
              "readOnly": true,
              "type": "string",
              "x-ms-enum": {
                "modelAsString": false,
                "name": "CertificateOrderStatus"
              }
            },
            "validityInYears": {
              "default": 1,
              "description": "Duration in years (must be between 1 and 3).",
              "format": "int32",
              "maximum": 3,
              "minimum": 1,
              "type": "integer",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            }
          },
          "required": [
            "productType"
          ],
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "AppServiceCertificateOrderCollection": {
      "description": "Collection of certificate orders.",
      "properties": {
        "nextLink": {
          "description": "Link to next page of resources.",
          "readOnly": true,
          "type": "string"
        },
        "value": {
          "description": "Collection of resources.",
          "items": {
            "$ref": "#/definitions/AppServiceCertificateOrder"
          },
          "type": "array"
        }
      },
      "required": [
        "value"
      ],
      "type": "object"
    },
    "AppServiceCertificateOrderPatchResource": {
      "allOf": [
        {
          "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "ARM resource for a certificate order that is purchased through Azure.",
      "properties": {
        "properties": {
          "description": "AppServiceCertificateOrderPatchResource resource specific properties",
          "properties": {
            "appServiceCertificateNotRenewableReasons": {
              "description": "Reasons why App Service Certificate is not renewable at the current moment.",
              "items": {
                "enum": [
                  "RegistrationStatusNotSupportedForRenewal",
                  "ExpirationNotInRenewalTimeRange",
                  "SubscriptionNotActive"
                ],
                "type": "string"
              },
              "readOnly": true,
              "type": "array"
            },
            "autoRenew": {
              "default": true,
              "description": "<code>true</code> if the certificate should be automatically renewed when it expires; otherwise, <code>false</code>.",
              "type": "boolean"
            },
            "certificates": {
              "additionalProperties": {
                "$ref": "#/definitions/AppServiceCertificate"
              },
              "description": "State of the Key Vault secret.",
              "type": "object"
            },
            "csr": {
              "description": "Last CSR that was created for this order.",
              "type": "string",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "distinguishedName": {
              "description": "Certificate distinguished name.",
              "type": "string",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "domainVerificationToken": {
              "description": "Domain verification token.",
              "readOnly": true,
              "type": "string"
            },
            "expirationTime": {
              "description": "Certificate expiration time.",
              "format": "date-time",
              "readOnly": true,
              "type": "string"
            },
            "intermediate": {
              "$ref": "#/definitions/CertificateDetails",
              "description": "Intermediate certificate.",
              "readOnly": true
            },
            "isPrivateKeyExternal": {
              "description": "<code>true</code> if private key is external; otherwise, <code>false</code>.",
              "readOnly": true,
              "type": "boolean"
            },
            "keySize": {
              "default": 2048,
              "description": "Certificate key size.",
              "format": "int32",
              "type": "integer",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "lastCertificateIssuanceTime": {
              "description": "Certificate last issuance time.",
              "format": "date-time",
              "readOnly": true,
              "type": "string"
            },
            "nextAutoRenewalTimeStamp": {
              "description": "Time stamp when the certificate would be auto renewed next",
              "format": "date-time",
              "readOnly": true,
              "type": "string"
            },
            "productType": {
              "description": "Certificate product type.",
              "enum": [
                "StandardDomainValidatedSsl",
                "StandardDomainValidatedWildCardSsl"
              ],
              "type": "string",
              "x-ms-enum": {
                "modelAsString": false,
                "name": "CertificateProductType"
              },
              "x-ms-mutability": [
                "create",
                "read"
              ]
            },
            "provisioningState": {
              "description": "Status of certificate order.",
              "enum": [
                "Succeeded",
                "Failed",
                "Canceled",
                "InProgress",
                "Deleting"
              ],
              "readOnly": true,
              "type": "string",
              "x-ms-enum": {
                "modelAsString": false,
                "name": "ProvisioningState"
              }
            },
            "root": {
              "$ref": "#/definitions/CertificateDetails",
              "description": "Root certificate.",
              "readOnly": true
            },
            "serialNumber": {
              "description": "Current serial number of the certificate.",
              "readOnly": true,
              "type": "string"
            },
            "signedCertificate": {
              "$ref": "#/definitions/CertificateDetails",
              "description": "Signed certificate.",
              "readOnly": true
            },
            "status": {
              "description": "Current order status.",
              "enum": [
                "Pendingissuance",
                "Issued",
                "Revoked",
                "Canceled",
                "Denied",
                "Pendingrevocation",
                "PendingRekey",
                "Unused",
                "Expired",
                "NotSubmitted"
              ],
              "readOnly": true,
              "type": "string",
              "x-ms-enum": {
                "modelAsString": false,
                "name": "CertificateOrderStatus"
              }
            },
            "validityInYears": {
              "default": 1,
              "description": "Duration in years (must be between 1 and 3).",
              "format": "int32",
              "maximum": 3,
              "minimum": 1,
              "type": "integer",
              "x-ms-mutability": [
                "create",
                "read"
              ]
            }
          },
          "required": [
            "productType"
          ],
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "AppServiceCertificatePatchResource": {
      "allOf": [
        {
          "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Key Vault container ARM resource for a certificate that is purchased through Azure.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/AppServiceCertificate",
          "description": "Core resource properties",
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "AppServiceCertificateResource": {
      "allOf": [
        {
          "description": "Azure resource. This resource is tracked in Azure Resource Manager",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "location": {
              "description": "Resource Location.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "tags": {
              "additionalProperties": {
                "type": "string"
              },
              "description": "Resource tags.",
              "type": "object"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "required": [
            "location"
          ],
          "x-ms-azure-resource": true
        }
      ],
      "description": "Key Vault container ARM resource for a certificate that is purchased through Azure.",
      "properties": {
        "properties": {
          "$ref": "#/definitions/AppServiceCertificate",
          "description": "Core resource properties",
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "CertificateDetails": {
      "description": "SSL certificate details.",
      "properties": {
        "issuer": {
          "description": "Certificate Issuer.",
          "readOnly": true,
          "type": "string"
        },
        "notAfter": {
          "description": "Date Certificate is valid to.",
          "format": "date-time",
          "readOnly": true,
          "type": "string"
        },
        "notBefore": {
          "description": "Date Certificate is valid from.",
          "format": "date-time",
          "readOnly": true,
          "type": "string"
        },
        "rawData": {
          "description": "Raw certificate data.",
          "readOnly": true,
          "type": "string"
        },
        "serialNumber": {
          "description": "Certificate Serial Number.",
          "readOnly": true,
          "type": "string"
        },
        "signatureAlgorithm": {
          "description": "Certificate Signature algorithm.",
          "readOnly": true,
          "type": "string"
        },
        "subject": {
          "description": "Certificate Subject.",
          "readOnly": true,
          "type": "string"
        },
        "thumbprint": {
          "description": "Certificate Thumbprint.",
          "readOnly": true,
          "type": "string"
        },
        "version": {
          "description": "Certificate Version.",
          "format": "int32",
          "readOnly": true,
          "type": "integer"
        }
      },
      "type": "object"
    },
    "CertificateEmail": {
      "allOf": [
        {
          "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "SSL certificate email.",
      "properties": {
        "properties": {
          "description": "CertificateEmail resource specific properties",
          "properties": {
            "emailId": {
              "description": "Email id.",
              "type": "string"
            },
            "timeStamp": {
              "description": "Time stamp.",
              "format": "date-time",
              "type": "string"
            }
          },
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "CertificateOrderAction": {
      "allOf": [
        {
          "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Certificate order action.",
      "properties": {
        "properties": {
          "description": "CertificateOrderAction resource specific properties",
          "properties": {
            "createdAt": {
              "description": "Time at which the certificate action was performed.",
              "format": "date-time",
              "type": "string"
            },
            "type": {
              "description": "Action type.",
              "enum": [
                "CertificateIssued",
                "CertificateOrderCanceled",
                "CertificateOrderCreated",
                "CertificateRevoked",
                "DomainValidationComplete",
                "FraudDetected",
                "OrgNameChange",
                "OrgValidationComplete",
                "SanDrop",
                "FraudCleared",
                "CertificateExpired",
                "CertificateExpirationWarning",
                "FraudDocumentationRequired",
                "Unknown"
              ],
              "type": "string",
              "x-ms-enum": {
                "modelAsString": false,
                "name": "CertificateOrderActionType"
              }
            }
          },
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "ReissueCertificateOrderRequest": {
      "allOf": [
        {
          "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Class representing certificate reissue request.",
      "properties": {
        "properties": {
          "description": "ReissueCertificateOrderRequest resource specific properties",
          "properties": {
            "csr": {
              "description": "Csr to be used for re-key operation.",
              "type": "string"
            },
            "delayExistingRevokeInHours": {
              "description": "Delay in hours to revoke existing certificate after the new certificate is issued.",
              "format": "int32",
              "type": "integer"
            },
            "isPrivateKeyExternal": {
              "description": "Should we change the ASC type (from managed private key to external private key and vice versa).",
              "type": "boolean"
            },
            "keySize": {
              "description": "Certificate Key Size.",
              "format": "int32",
              "type": "integer"
            }
          },
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "RenewCertificateOrderRequest": {
      "allOf": [
        {
          "description": "Azure proxy only resource. This resource is not tracked by Azure Resource Manager.",
          "properties": {
            "id": {
              "description": "Resource Id.",
              "readOnly": true,
              "type": "string"
            },
            "kind": {
              "description": "Kind of resource.",
              "type": "string"
            },
            "name": {
              "description": "Resource Name.",
              "readOnly": true,
              "type": "string"
            },
            "type": {
              "description": "Resource type.",
              "readOnly": true,
              "type": "string"
            }
          },
          "x-ms-azure-resource": true
        }
      ],
      "description": "Class representing certificate renew request.",
      "properties": {
        "properties": {
          "description": "RenewCertificateOrderRequest resource specific properties",
          "properties": {
            "csr": {
              "description": "Csr to be used for re-key operation.",
              "type": "string"
            },
            "isPrivateKeyExternal": {
              "description": "Should we change the ASC type (from managed private key to external private key and vice versa).",
              "type": "boolean"
            },
            "keySize": {
              "description": "Certificate Key Size.",
              "format": "int32",
              "type": "integer"
            }
          },
          "x-ms-client-flatten": true
        }
      },
      "type": "object"
    },
    "SiteSeal": {
      "description": "Site seal",
      "properties": {
        "html": {
          "description": "HTML snippet",
          "type": "string",
          "x-ms-client-flatten": true
        }
      },
      "required": [
        "html"
      ],
      "type": "object"
    },
    "SiteSealRequest": {
      "description": "Site seal request.",
      "properties": {
        "lightTheme": {
          "description": "If <code>true</code> use the light color theme for site seal; otherwise, use the default color theme.",
          "type": "boolean"
        },
        "locale": {
          "description": "Locale of site seal.",
          "type": "string"
        }
      },
      "type": "object"
    }
  }
}