{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/azure-storage-account/refs/heads/main/json-schema/azure-storage-account-blob-service-properties-schema.json", "title": "BlobServiceProperties", "description": "The properties of a storage account\u2019s Blob service.", "properties": { "properties": { "description": "The properties of a storage account\u2019s Blob service.", "properties": { "automaticSnapshotPolicyEnabled": { "description": "Automatic Snapshot is enabled if set to true.", "type": "boolean" }, "changeFeed": { "$ref": "#/definitions/ChangeFeed", "description": "The blob service properties for change feed events." }, "cors": { "description": "Sets the CORS rules. You can include up to five CorsRule elements in the request. ", "properties": { "corsRules": { "description": "The List of CORS rules. You can include up to five CorsRule elements in the request. ", "items": { "description": "Specifies a CORS rule for the Blob service.", "properties": { "allowedHeaders": { "description": "Required if CorsRule element is present. A list of headers allowed to be part of the cross-origin request.", "items": { "type": "string" }, "type": "array" }, "allowedMethods": { "description": "Required if CorsRule element is present. A list of HTTP methods that are allowed to be executed by the origin.", "items": { "enum": [ "DELETE", "GET", "HEAD", "MERGE", "POST", "OPTIONS", "PUT" ], "type": "string" }, "type": "array" }, "allowedOrigins": { "description": "Required if CorsRule element is present. A list of origin domains that will be allowed via CORS, or \"*\" to allow all domains", "items": { "type": "string" }, "type": "array" }, "exposedHeaders": { "description": "Required if CorsRule element is present. A list of response headers to expose to CORS clients.", "items": { "type": "string" }, "type": "array" }, "maxAgeInSeconds": { "description": "Required if CorsRule element is present. The number of seconds that the client/browser should cache a preflight response.", "type": "integer" } }, "required": [ "allowedOrigins", "allowedMethods", "maxAgeInSeconds", "exposedHeaders", "allowedHeaders" ] }, "type": "array" } } }, "defaultServiceVersion": { "description": "DefaultServiceVersion indicates the default version to use for requests to the Blob service if an incoming request\u2019s version is not specified. Possible values include version 2008-10-27 and all more recent versions.", "type": "string" }, "deleteRetentionPolicy": { "description": "The service properties for soft delete.", "properties": { "days": { "description": "Indicates the number of days that the deleted item should be retained. The minimum specified value can be 1 and the maximum value can be 365.", "maximum": 365, "minimum": 1, "type": "integer" }, "enabled": { "description": "Indicates whether DeleteRetentionPolicy is enabled.", "type": "boolean" } } }, "restorePolicy": { "$ref": "#/definitions/RestorePolicyProperties", "description": "The blob service properties for blob restore policy." } }, "x-ms-client-flatten": true, "x-ms-client-name": "BlobServiceProperties" }, "sku": { "description": "The SKU of the storage account.", "properties": { "name": { "description": "The SKU name. Required for account creation; optional for update. Note that in older versions, SKU name was called accountType.", "enum": [ "Standard_LRS", "Standard_GRS", "Standard_RAGRS", "Standard_ZRS", "Premium_LRS", "Premium_ZRS", "Standard_GZRS", "Standard_RAGZRS" ], "type": "string", "x-ms-enum": { "modelAsString": true, "name": "SkuName" } }, "tier": { "description": "The SKU tier. This is based on the SKU name.", "enum": [ "Standard", "Premium" ], "readOnly": true, "type": "string", "x-ms-enum": { "modelAsString": false, "name": "SkuTier" } } }, "required": [ "name" ] } }, "type": "object" }