From ac4edcd443ef93355b312f19f016bc977df85ccf Mon Sep 17 00:00:00 2001 From: catalinaperalta Date: Mon, 11 Aug 2025 11:35:51 -0700 Subject: [PATCH 1/4] initialize 2026-02-06 version --- .../examples/2026-02-06/placeholder.md | 0 .../storage/Microsoft.BlobStorage/main.tsp | 4 + .../Microsoft.BlobStorage/readme.md | 9 + .../stable/2026-02-06/generated_blob.json | 18152 ++++++++++++++++ 4 files changed, 18165 insertions(+) create mode 100644 specification/storage/Microsoft.BlobStorage/examples/2026-02-06/placeholder.md create mode 100644 specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json diff --git a/specification/storage/Microsoft.BlobStorage/examples/2026-02-06/placeholder.md b/specification/storage/Microsoft.BlobStorage/examples/2026-02-06/placeholder.md new file mode 100644 index 000000000000..e69de29bb2d1 diff --git a/specification/storage/Microsoft.BlobStorage/main.tsp b/specification/storage/Microsoft.BlobStorage/main.tsp index fe096c4ab505..3b64e755953a 100644 --- a/specification/storage/Microsoft.BlobStorage/main.tsp +++ b/specification/storage/Microsoft.BlobStorage/main.tsp @@ -36,4 +36,8 @@ enum Versions { @doc("The 2025-11-05 version of the Azure.Storage.Blob service.") @useDependency(Azure.Core.Versions.v1_0_Preview_2) v2025_11_05: "2025-11-05", + + @doc("The 2026-02-06 version of the Azure.Storage.Blob service.") + @useDependency(Azure.Core.Versions.v1_0_Preview_2) + v2026_02_06: "2026-02-06", } diff --git a/specification/storage/data-plane/Microsoft.BlobStorage/readme.md b/specification/storage/data-plane/Microsoft.BlobStorage/readme.md index cda6c012bf41..d4bb925ffefc 100644 --- a/specification/storage/data-plane/Microsoft.BlobStorage/readme.md +++ b/specification/storage/data-plane/Microsoft.BlobStorage/readme.md @@ -139,6 +139,15 @@ input-file: - stable/2025-11-05/generated_blob.json ``` +### Tag: package-2026-02-tsp + +These settings apply only when `--tag=package-2026-02-tsp` is specified on the command line. + +```yaml $(tag) == 'package-2026-02-tsp' +input-file: + - stable/2026-02-06/generated_blob.json +``` + ### Suppression ```yaml diff --git a/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json new file mode 100644 index 000000000000..f260bab4ef8b --- /dev/null +++ b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json @@ -0,0 +1,18152 @@ +{ + "swagger": "2.0", + "info": { + "title": "Azure Storage Blob service", + "version": "2026-02-06", + "x-typespec-generated": [ + { + "emitter": "@azure-tools/typespec-autorest" + } + ] + }, + "schemes": [ + "https" + ], + "x-ms-parameterized-host": { + "hostTemplate": "{url}", + "useSchemePrefix": false, + "parameters": [ + { + "name": "url", + "in": "path", + "description": "The host name of the blob storage account, e.g. accountName.blob.core.windows.net", + "required": true, + "type": "string", + "format": "uri", + "x-ms-skip-url-encoding": true + } + ] + }, + "produces": [ + "application/json" + ], + "consumes": [ + "application/json" + ], + "security": [ + { + "OAuth2Auth": [ + "https://storage.azure.com/.default" + ] + } + ], + "securityDefinitions": { + "OAuth2Auth": { + "type": "oauth2", + "flow": "implicit", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "scopes": { + "https://storage.azure.com/.default": "" + } + } + }, + "tags": [], + "paths": { + "/{containerName}/{blobName}": { + "get": { + "operationId": "Blob_Download", + "description": "The Download operation reads or downloads a blob from the system, including its metadata and properties. You can also call Download to read a snapshot.", + "produces": [ + "application/octet-stream", + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Range", + "in": "header", + "description": "Return only the bytes of the blob in the specified range.", + "required": false, + "type": "string", + "x-ms-client-name": "range" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-range-get-content-md5", + "in": "header", + "description": "When set to true and specified together with the Range, the service returns the MD5 hash for the range, as long as the range is less than or equal to 4 MB in size.", + "required": false, + "type": "boolean", + "x-ms-client-name": "rangeGetContentMd5" + }, + { + "name": "x-ms-range-get-content-crc64", + "in": "header", + "description": "Optional. When this header is set to true and specified together with the Range header, the service returns the CRC64 hash for the range, as long as the range is less than or equal to 4 MB in size.", + "required": false, + "type": "boolean", + "x-ms-client-name": "rangeGetContentCrc64" + }, + { + "name": "x-ms-structured-body", + "in": "header", + "description": "Specifies the response content should be returned as a structured message and specifies the message schema version and properties.", + "required": false, + "type": "string", + "x-ms-client-name": "structuredBodyType" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "$ref": "#/parameters/Azure.Core.ConditionalRequestHeaders.ifMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ConditionalRequestHeaders.ifNoneMatch" + }, + { + "$ref": "#/parameters/Azure.Core.ConditionalRequestHeaders.ifUnmodifiedSince" + }, + { + "$ref": "#/parameters/Azure.Core.ConditionalRequestHeaders.ifModifiedSince" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "file" + }, + "headers": { + "Accept-Ranges": { + "type": "string", + "description": "Indicates that the service supports requests for partial blob content." + }, + "Cache-Control": { + "type": "string", + "description": "This header is returned if it was previously specified for the blob." + }, + "Content-Disposition": { + "type": "string", + "description": "This header returns the value that was specified for the 'x-ms-blob-content-disposition' header. The Content-Disposition response header field conveys additional information about how to process the response payload, and also can be used to attach additional metadata. For example, if set to attachment, it indicates that the user-agent should not display the response, but instead show a Save As dialog with a filename other than the blob name specified." + }, + "Content-Encoding": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Encoding request header" + }, + "Content-Language": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Language request header." + }, + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The number of bytes present in the response body." + }, + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Content-Range": { + "type": "string", + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the blob by setting the 'Range' request header." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-committed-block-count": { + "type": "integer", + "format": "int32", + "description": "The number of committed blocks present in the blob. This header is returned only for append blobs." + }, + "x-ms-blob-content-md5": { + "type": "string", + "format": "byte", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-blob-sealed": { + "type": "boolean", + "description": "If this blob has been sealed" + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-blob-type": { + "type": "string", + "description": "The type of the blob.", + "enum": [ + "BlockBlob", + "PageBlob", + "AppendBlob" + ], + "x-ms-enum": { + "name": "BlobType", + "modelAsString": false, + "values": [ + { + "name": "BlockBlob", + "value": "BlockBlob", + "description": "The blob is a block blob." + }, + { + "name": "PageBlob", + "value": "PageBlob", + "description": "The blob is a page blob." + }, + { + "name": "AppendBlob", + "value": "AppendBlob", + "description": "The blob is an append blob." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-copy-completion-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Conclusion time of the last attempted Copy Blob operation where this blob was the destination blob. This value can specify the time of a completed, aborted, or failed copy attempt. This header does not appear if a copy is pending, if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-progress": { + "type": "string", + "description": "Contains the number of bytes copied and the total bytes in the source in the last attempted Copy Blob operation where this blob was the destination blob. Can show between 0 and Content-Length bytes copied. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-copy-source": { + "type": "string", + "description": "URL up to 2 KB in length that specifies the source blob or file used in the last attempted Copy Blob operation where this blob was the destination blob. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "x-ms-copy-status-description": { + "type": "string", + "description": "Only appears when x-ms-copy-status is failed or pending. Describes the cause of the last fatal or non-fatal copy operation failure. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-creation-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Returns the date and time the blob was created." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-immutability-policy-mode": { + "type": "string", + "description": "Indicates the immutability policy mode of the blob.", + "enum": [ + "Mutable", + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "BlobImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Mutable", + "value": "Mutable", + "description": "The immutability policy is mutable." + }, + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + } + }, + "x-ms-immutability-policy-until-date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the blob immutability policy will expire." + }, + "x-ms-is-current-version": { + "type": "boolean", + "description": "The value of this header indicates whether version of this blob is a current version, see also x-ms-version-id header." + }, + "x-ms-last-access-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the blob was last read or written to" + }, + "x-ms-lease-duration": { + "type": "string", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "enum": [ + "infinite", + "fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": false, + "values": [ + { + "name": "Infinite", + "value": "infinite", + "description": "The lease is of infinite duration." + }, + { + "name": "Fixed", + "value": "fixed", + "description": "The lease is of fixed duration." + } + ] + } + }, + "x-ms-lease-state": { + "type": "string", + "description": "Lease state of the blob.", + "enum": [ + "available", + "leased", + "expired", + "breaking", + "broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": false, + "values": [ + { + "name": "Available", + "value": "available", + "description": "The lease is available." + }, + { + "name": "Leased", + "value": "leased", + "description": "The lease is currently leased." + }, + { + "name": "Expired", + "value": "expired", + "description": "The lease is expired." + }, + { + "name": "Breaking", + "value": "breaking", + "description": "The lease is breaking." + }, + { + "name": "Broken", + "value": "broken", + "description": "The lease is broken." + } + ] + } + }, + "x-ms-lease-status": { + "type": "string", + "description": "The lease status of the blob.", + "enum": [ + "unlocked", + "locked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": false, + "values": [ + { + "name": "Unlocked", + "value": "unlocked", + "description": "The lease is unlocked." + }, + { + "name": "Locked", + "value": "locked", + "description": "The lease is locked." + } + ] + } + }, + "x-ms-legal-hold": { + "type": "boolean", + "description": "Specifies the legal hold status to set on the blob." + }, + "x-ms-meta": { + "type": "string", + "description": "The metadata headers." + }, + "x-ms-or": { + "type": "string", + "description": "Optional. Only valid when Object Replication is enabled for the storage container and on the source blob of the replication. When retrieving this header, it will return the header with the policy id and rule id (e.g. x-ms-or-policyid_ruleid), and the value will be the status of the replication (e.g. complete, failed)." + }, + "x-ms-or-policy-id": { + "type": "string", + "description": "Optional. Only valid when Object Replication is enabled for the storage container and on the destination blob of the replication." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-structured-body": { + "type": "string", + "description": "Indicates the response body contains a structured message and specifies the message schema version and properties." + }, + "x-ms-structured-content-length": { + "type": "integer", + "format": "int64", + "description": "The length of the blob/file content inside the message body when the response body is returned as a structured message. Will always be smaller than Content-Length." + }, + "x-ms-tag-count": { + "type": "integer", + "format": "int64", + "description": "The number of tags associated with the blob" + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "206": { + "description": "Successful", + "schema": { + "type": "file" + }, + "headers": { + "Accept-Ranges": { + "type": "string", + "description": "Indicates that the service supports requests for partial blob content." + }, + "Cache-Control": { + "type": "string", + "description": "This header is returned if it was previously specified for the blob." + }, + "Content-Disposition": { + "type": "string", + "description": "This header returns the value that was specified for the 'x-ms-blob-content-disposition' header. The Content-Disposition response header field conveys additional information about how to process the response payload, and also can be used to attach additional metadata. For example, if set to attachment, it indicates that the user-agent should not display the response, but instead show a Save As dialog with a filename other than the blob name specified." + }, + "Content-Encoding": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Encoding request header" + }, + "Content-Language": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Language request header." + }, + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The number of bytes present in the response body." + }, + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Content-Range": { + "type": "string", + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the blob by setting the 'Range' request header." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-committed-block-count": { + "type": "integer", + "format": "int32", + "description": "The number of committed blocks present in the blob. This header is returned only for append blobs." + }, + "x-ms-blob-content-md5": { + "type": "string", + "format": "byte", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-blob-sealed": { + "type": "boolean", + "description": "If this blob has been sealed" + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-blob-type": { + "type": "string", + "description": "The type of the blob.", + "enum": [ + "BlockBlob", + "PageBlob", + "AppendBlob" + ], + "x-ms-enum": { + "name": "BlobType", + "modelAsString": false, + "values": [ + { + "name": "BlockBlob", + "value": "BlockBlob", + "description": "The blob is a block blob." + }, + { + "name": "PageBlob", + "value": "PageBlob", + "description": "The blob is a page blob." + }, + { + "name": "AppendBlob", + "value": "AppendBlob", + "description": "The blob is an append blob." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-copy-completion-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Conclusion time of the last attempted Copy Blob operation where this blob was the destination blob. This value can specify the time of a completed, aborted, or failed copy attempt. This header does not appear if a copy is pending, if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-progress": { + "type": "string", + "description": "Contains the number of bytes copied and the total bytes in the source in the last attempted Copy Blob operation where this blob was the destination blob. Can show between 0 and Content-Length bytes copied. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-copy-source": { + "type": "string", + "description": "URL up to 2 KB in length that specifies the source blob or file used in the last attempted Copy Blob operation where this blob was the destination blob. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "x-ms-copy-status-description": { + "type": "string", + "description": "Only appears when x-ms-copy-status is failed or pending. Describes the cause of the last fatal or non-fatal copy operation failure. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-creation-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Returns the date and time the blob was created." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-immutability-policy-mode": { + "type": "string", + "description": "Indicates the immutability policy mode of the blob.", + "enum": [ + "Mutable", + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "BlobImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Mutable", + "value": "Mutable", + "description": "The immutability policy is mutable." + }, + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + } + }, + "x-ms-immutability-policy-until-date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the blob immutability policy will expire." + }, + "x-ms-is-current-version": { + "type": "boolean", + "description": "The value of this header indicates whether version of this blob is a current version, see also x-ms-version-id header." + }, + "x-ms-last-access-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the blob was last read or written to" + }, + "x-ms-lease-duration": { + "type": "string", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "enum": [ + "infinite", + "fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": false, + "values": [ + { + "name": "Infinite", + "value": "infinite", + "description": "The lease is of infinite duration." + }, + { + "name": "Fixed", + "value": "fixed", + "description": "The lease is of fixed duration." + } + ] + } + }, + "x-ms-lease-state": { + "type": "string", + "description": "Lease state of the blob.", + "enum": [ + "available", + "leased", + "expired", + "breaking", + "broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": false, + "values": [ + { + "name": "Available", + "value": "available", + "description": "The lease is available." + }, + { + "name": "Leased", + "value": "leased", + "description": "The lease is currently leased." + }, + { + "name": "Expired", + "value": "expired", + "description": "The lease is expired." + }, + { + "name": "Breaking", + "value": "breaking", + "description": "The lease is breaking." + }, + { + "name": "Broken", + "value": "broken", + "description": "The lease is broken." + } + ] + } + }, + "x-ms-lease-status": { + "type": "string", + "description": "The lease status of the blob.", + "enum": [ + "unlocked", + "locked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": false, + "values": [ + { + "name": "Unlocked", + "value": "unlocked", + "description": "The lease is unlocked." + }, + { + "name": "Locked", + "value": "locked", + "description": "The lease is locked." + } + ] + } + }, + "x-ms-legal-hold": { + "type": "boolean", + "description": "Specifies the legal hold status to set on the blob." + }, + "x-ms-meta": { + "type": "string", + "description": "The metadata headers." + }, + "x-ms-or": { + "type": "string", + "description": "Optional. Only valid when Object Replication is enabled for the storage container and on the source blob of the replication. When retrieving this header, it will return the header with the policy id and rule id (e.g. x-ms-or-policyid_ruleid), and the value will be the status of the replication (e.g. complete, failed)." + }, + "x-ms-or-policy-id": { + "type": "string", + "description": "Optional. Only valid when Object Replication is enabled for the storage container and on the destination blob of the replication." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-structured-body": { + "type": "string", + "description": "Indicates the response body contains a structured message and specifies the message schema version and properties." + }, + "x-ms-structured-content-length": { + "type": "integer", + "format": "int64", + "description": "The length of the blob/file content inside the message body when the response body is returned as a structured message. Will always be smaller than Content-Length." + }, + "x-ms-tag-count": { + "type": "integer", + "format": "int64", + "description": "The number of tags associated with the blob" + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + }, + "put": { + "operationId": "Blob_StartCopyFromUrl", + "description": "The Start Copy From URL operation copies a blob or an internet resource to a new blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "x-ms-access-tier", + "in": "header", + "description": "The tier to be set on the blob.", + "required": false, + "type": "string", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80", + "Hot", + "Cool", + "Archive", + "Premium", + "Cold" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The hot P4 tier." + }, + { + "name": "P6", + "value": "P6", + "description": "The hot P6 tier." + }, + { + "name": "P10", + "value": "P10", + "description": "The hot P10 tier." + }, + { + "name": "P15", + "value": "P15", + "description": "The hot P15 tier." + }, + { + "name": "P20", + "value": "P20", + "description": "The hot P20 tier." + }, + { + "name": "P30", + "value": "P30", + "description": "The hot P30 tier." + }, + { + "name": "P40", + "value": "P40", + "description": "The hot P40 tier." + }, + { + "name": "P50", + "value": "P50", + "description": "The hot P50 tier." + }, + { + "name": "P60", + "value": "P60", + "description": "The hot P60 tier." + }, + { + "name": "P70", + "value": "P70", + "description": "The hot P70 tier." + }, + { + "name": "P80", + "value": "P80", + "description": "The hot P80 tier." + }, + { + "name": "Hot", + "value": "Hot", + "description": "The hot access tier." + }, + { + "name": "Cool", + "value": "Cool", + "description": "The cool access tier." + }, + { + "name": "Archive", + "value": "Archive", + "description": "The archive access tier." + }, + { + "name": "Premium", + "value": "Premium", + "description": "The Premium access tier." + }, + { + "name": "Cold", + "value": "Cold", + "description": "The Cold access tier." + } + ] + }, + "x-ms-client-name": "tier" + }, + { + "name": "x-ms-rehydrate-priority", + "in": "header", + "description": "If an object is in rehydrate pending state then this header is returned with priority of rehydrate. Valid values are High and Standard.", + "required": false, + "type": "string", + "enum": [ + "High", + "Standard" + ], + "x-ms-enum": { + "name": "RehydratePriority", + "modelAsString": true, + "values": [ + { + "name": "High", + "value": "High", + "description": "The rehydrate priority is high." + }, + { + "name": "Standard", + "value": "Standard", + "description": "The rehydrate priority is standard." + } + ] + }, + "x-ms-client-name": "rehydratePriority" + }, + { + "name": "x-ms-source-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfModifiedSince" + }, + { + "name": "x-ms-source-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfUnmodifiedSince" + }, + { + "name": "x-ms-source-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfMatch" + }, + { + "name": "x-ms-source-if-none-match", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfNoneMatch" + }, + { + "name": "x-ms-source-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfTags" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-copy-source", + "in": "header", + "description": "Specifies the name of the source page blob snapshot. This value is a URL of up to 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would appear in a request URI. The source blob must either be public or must be authenticated via a shared access signature.", + "required": true, + "type": "string", + "x-ms-client-name": "copySource" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-tags", + "in": "header", + "description": "Optional. Used to set blob tags in various blob operations.", + "required": false, + "type": "string", + "x-ms-client-name": "BlobTagsString" + }, + { + "name": "x-ms-seal-blob", + "in": "header", + "description": "Overrides the sealed state of the destination blob. Service version 2019-12-12 and newer.", + "required": false, + "type": "boolean", + "x-ms-client-name": "sealBlob" + }, + { + "name": "x-ms-immutability-policy-until-date", + "in": "header", + "description": "Specifies the date time when the blobs immutability policy is set to expire.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "immutabilityPolicyExpiry" + }, + { + "name": "x-ms-immutability-policy-mode", + "in": "header", + "description": "Specifies the immutability policy mode to set on the blob.", + "required": false, + "type": "string", + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + }, + "x-ms-client-name": "immutabilityPolicyMode" + }, + { + "name": "x-ms-legal-hold", + "in": "header", + "description": "Specified if a legal hold should be set on the blob.", + "required": false, + "type": "boolean", + "x-ms-client-name": "legalHold" + }, + { + "name": "x-ms-requires-sync", + "in": "header", + "description": "This header indicates that this is a synchronous Copy Blob From URL instead of a Asynchronous Copy Blob.", + "required": true, + "type": "boolean", + "enum": [ + true + ], + "x-ms-client-name": "requiresSync" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + }, + "delete": { + "operationId": "Blob_Delete", + "description": "If the storage account's soft delete feature is disabled then, when a blob is deleted, it is permanently removed from the storage account. If the storage account's soft delete feature is enabled, then, when a blob is deleted, it is marked for deletion and becomes inaccessible immediately. However, the blob service retains the blob or snapshot for the number of days specified by the DeleteRetentionPolicy section of [Storage service properties] (Set-Blob-Service-Properties.md). After the specified number of days has passed, the blob's data is permanently removed from the storage account. Note that you continue to be charged for the soft-deleted blob's storage until it is permanently removed. Use the List Blobs API and specify the \\\"include=deleted\\\" query parameter to discover which blobs and snapshots have been soft deleted. You can then use the Undelete Blob API to restore a soft-deleted blob. All other operations on a soft-deleted blob or snapshot causes the service to return an HTTP status code of 404 (ResourceNotFound).", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-delete-snapshots", + "in": "header", + "description": "Required if the blob has associated snapshots. Specify one of the following two options: include: Delete the base blob and all of its snapshots. only: Delete only the blob's snapshots and not the blob itself", + "required": false, + "type": "string", + "enum": [ + "only", + "include" + ], + "x-ms-enum": { + "name": "DeleteSnapshotsOptionType", + "modelAsString": false, + "values": [ + { + "name": "Only", + "value": "only", + "description": "The delete snapshots include option is only." + }, + { + "name": "Include", + "value": "include", + "description": "The delete snapshots include option is include." + } + ] + }, + "x-ms-client-name": "deleteSnapshots" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "deletetype", + "in": "query", + "description": "Optional. Only possible value is 'permanent', which specifies to permanently delete a blob if blob soft delete is enabled.", + "required": false, + "type": "string", + "enum": [ + "Permanent" + ], + "x-ms-enum": { + "name": "BlobDeleteType", + "modelAsString": false, + "values": [ + { + "name": "Permanent", + "value": "Permanent", + "description": "Permanently delete the blob." + } + ] + }, + "x-ms-client-name": "blobDeleteType" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + }, + "head": { + "operationId": "Blob_GetProperties", + "description": "The Get Properties operation returns all user-defined metadata, standard HTTP properties, and system properties for the blob. It does not return the content of the blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Accept-Ranges": { + "type": "string", + "description": "Indicates that the service supports requests for partial blob content." + }, + "Cache-Control": { + "type": "string", + "description": "This header is returned if it was previously specified for the blob." + }, + "Content-Disposition": { + "type": "string", + "description": "This header returns the value that was specified for the 'x-ms-blob-content-disposition' header. The Content-Disposition response header field conveys additional information about how to process the response payload, and also can be used to attach additional metadata. For example, if set to attachment, it indicates that the user-agent should not display the response, but instead show a Save As dialog with a filename other than the blob name specified." + }, + "Content-Encoding": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Encoding request header" + }, + "Content-Language": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Language request header." + }, + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The number of bytes present in the response body." + }, + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-access-tier": { + "type": "string", + "description": "The tier of page blob on a premium storage account or tier of block blob on blob storage LRS accounts. For a list of allowed premium page blob tiers, see https://learn.microsoft.com/azure/virtual-machines/disks-types#premium-ssd. For blob storage LRS accounts, valid values are Hot/Cool/Archive." + }, + "x-ms-access-tier-change-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The time the tier was changed on the object. This is only returned if the tier on the block blob was ever set." + }, + "x-ms-access-tier-inferred": { + "type": "boolean", + "description": "For page blobs on a premium storage account only. If the access tier is not explicitly set on the blob, the tier is inferred based on its content length and this header will be returned with true value." + }, + "x-ms-archive-status": { + "type": "string", + "description": "For blob storage LRS accounts, valid values are rehydrate-pending-to-hot/rehydrate-pending-to-cool. If the blob is being rehydrated and is not complete then this header is returned indicating that rehydrate is pending and also tells the destination tier.", + "enum": [ + "rehydrate-pending-to-hot", + "rehydrate-pending-to-cool", + "rehydrate-pending-to-cold" + ], + "x-ms-enum": { + "name": "ArchiveStatus", + "modelAsString": true, + "values": [ + { + "name": "RehydratePendingToHot", + "value": "rehydrate-pending-to-hot", + "description": "The archive status is rehydrating pending to hot." + }, + { + "name": "RehydratePendingToCool", + "value": "rehydrate-pending-to-cool", + "description": "The archive status is rehydrating pending to cool." + }, + { + "name": "RehydratePendingToCold", + "value": "rehydrate-pending-to-cold", + "description": "The archive status is rehydrating pending to archive." + } + ] + } + }, + "x-ms-blob-committed-block-count": { + "type": "integer", + "format": "int32", + "description": "The number of committed blocks present in the blob. This header is returned only for append blobs." + }, + "x-ms-blob-sealed": { + "type": "boolean", + "description": "If this blob has been sealed" + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-blob-type": { + "type": "string", + "description": "The type of the blob.", + "enum": [ + "BlockBlob", + "PageBlob", + "AppendBlob" + ], + "x-ms-enum": { + "name": "BlobType", + "modelAsString": false, + "values": [ + { + "name": "BlockBlob", + "value": "BlockBlob", + "description": "The blob is a block blob." + }, + { + "name": "PageBlob", + "value": "PageBlob", + "description": "The blob is a page blob." + }, + { + "name": "AppendBlob", + "value": "AppendBlob", + "description": "The blob is an append blob." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-copy-completion-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Conclusion time of the last attempted Copy Blob operation where this blob was the destination blob. This value can specify the time of a completed, aborted, or failed copy attempt. This header does not appear if a copy is pending, if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-destination-snapshot": { + "type": "string", + "description": "Included if the blob is incremental copy blob or incremental copy snapshot, if x-ms-copy-status is success. Snapshot time of the last successful incremental copy snapshot for this blob." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-progress": { + "type": "string", + "description": "Contains the number of bytes copied and the total bytes in the source in the last attempted Copy Blob operation where this blob was the destination blob. Can show between 0 and Content-Length bytes copied. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-copy-source": { + "type": "string", + "description": "URL up to 2 KB in length that specifies the source blob or file used in the last attempted Copy Blob operation where this blob was the destination blob. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "x-ms-copy-status-description": { + "type": "string", + "description": "Only appears when x-ms-copy-status is failed or pending. Describes the cause of the last fatal or non-fatal copy operation failure. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-creation-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Returns the date and time the blob was created." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-expiry-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The time this blob will expire." + }, + "x-ms-immutability-policy-mode": { + "type": "string", + "description": "Indicates the immutability policy mode of the blob.", + "enum": [ + "Mutable", + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "BlobImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Mutable", + "value": "Mutable", + "description": "The immutability policy is mutable." + }, + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + } + }, + "x-ms-immutability-policy-until-date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the blob immutability policy will expire." + }, + "x-ms-incremental-copy": { + "type": "boolean", + "description": "Included if the blob is incremental copy blob." + }, + "x-ms-is-current-version": { + "type": "boolean", + "description": "The value of this header indicates whether version of this blob is a current version, see also x-ms-version-id header." + }, + "x-ms-last-access-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the blob was last read or written to" + }, + "x-ms-lease-duration": { + "type": "string", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "enum": [ + "infinite", + "fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": false, + "values": [ + { + "name": "Infinite", + "value": "infinite", + "description": "The lease is of infinite duration." + }, + { + "name": "Fixed", + "value": "fixed", + "description": "The lease is of fixed duration." + } + ] + } + }, + "x-ms-lease-state": { + "type": "string", + "description": "Lease state of the blob.", + "enum": [ + "available", + "leased", + "expired", + "breaking", + "broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": false, + "values": [ + { + "name": "Available", + "value": "available", + "description": "The lease is available." + }, + { + "name": "Leased", + "value": "leased", + "description": "The lease is currently leased." + }, + { + "name": "Expired", + "value": "expired", + "description": "The lease is expired." + }, + { + "name": "Breaking", + "value": "breaking", + "description": "The lease is breaking." + }, + { + "name": "Broken", + "value": "broken", + "description": "The lease is broken." + } + ] + } + }, + "x-ms-lease-status": { + "type": "string", + "description": "The lease status of the blob.", + "enum": [ + "unlocked", + "locked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": false, + "values": [ + { + "name": "Unlocked", + "value": "unlocked", + "description": "The lease is unlocked." + }, + { + "name": "Locked", + "value": "locked", + "description": "The lease is locked." + } + ] + } + }, + "x-ms-legal-hold": { + "type": "boolean", + "description": "Specifies the legal hold status to set on the blob." + }, + "x-ms-meta": { + "type": "string", + "description": "The metadata headers." + }, + "x-ms-or": { + "type": "string", + "description": "Optional. Only valid when Object Replication is enabled for the storage container and on the source blob of the replication. When retrieving this header, it will return the header with the policy id and rule id (e.g. x-ms-or-policyid_ruleid), and the value will be the status of the replication (e.g. complete, failed)." + }, + "x-ms-or-policy-id": { + "type": "string", + "description": "Optional. Only valid when Object Replication is enabled for the storage container and on the destination blob of the replication." + }, + "x-ms-rehydrate-priority": { + "type": "string", + "description": "If an object is in rehydrate pending state then this header is returned with priority of rehydrate. Valid values are High and Standard.", + "enum": [ + "High", + "Standard" + ], + "x-ms-enum": { + "name": "RehydratePriority", + "modelAsString": true, + "values": [ + { + "name": "High", + "value": "High", + "description": "The rehydrate priority is high." + }, + { + "name": "Standard", + "value": "Standard", + "description": "The rehydrate priority is standard." + } + ] + } + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-tag-count": { + "type": "integer", + "format": "int64", + "description": "The number of tags associated with the blob" + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + } + }, + "x-ms-paths": { + "/{containerName}?restype=container": { + "put": { + "operationId": "Container_Create", + "description": "Creates a new container under the specified account. If the container with the same name already exists, the operation fails.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "x-ms-blob-public-access", + "in": "header", + "description": "The public access setting for the container.", + "required": false, + "type": "string", + "enum": [ + "blob", + "container" + ], + "x-ms-enum": { + "name": "PublicAccessType", + "modelAsString": true, + "values": [ + { + "name": "Blob", + "value": "blob", + "description": "Blob access." + }, + { + "name": "Container", + "value": "container", + "description": "Container access." + } + ] + }, + "x-ms-client-name": "access" + }, + { + "name": "x-ms-default-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the default encryption scope to set on the container and use for all future writes.", + "required": false, + "type": "string", + "x-ms-client-name": "defaultEncryptionScope" + }, + { + "name": "x-ms-deny-encryption-scope-override", + "in": "header", + "description": "If a blob has a lease and the lease is of infinite duration then the value of this header is set to true, otherwise it is set to false.", + "required": false, + "type": "boolean", + "x-ms-client-name": "PreventEncryptionScopeOverride" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&_overload=getProperties": { + "get": { + "operationId": "Container_GetProperties", + "description": "returns all user-defined metadata and system properties for the specified container. The data returned does not include the container's list of blobs", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-public-access": { + "type": "string", + "description": "The public access setting for the container.", + "enum": [ + "blob", + "container" + ], + "x-ms-enum": { + "name": "PublicAccessType", + "modelAsString": true, + "values": [ + { + "name": "Blob", + "value": "blob", + "description": "Blob access." + }, + { + "name": "Container", + "value": "container", + "description": "Container access." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-default-encryption-scope": { + "type": "string", + "description": "The default encryption scope for the container." + }, + "x-ms-deny-encryption-scope-override": { + "type": "boolean", + "description": "If a blob has a lease and the lease is of infinite duration then the value of this header is set to true, otherwise it is set to false." + }, + "x-ms-has-immutability-policy": { + "type": "boolean", + "description": "Indicates whether the container has an immutability policy set on it." + }, + "x-ms-has-legal-hold": { + "type": "boolean", + "description": "Indicates whether the container has a legal hold." + }, + "x-ms-immutable-storage-with-versioning-enabled": { + "type": "boolean", + "description": "Indicates whether version level worm is enabled on a container" + }, + "x-ms-lease-duration": { + "type": "string", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "enum": [ + "infinite", + "fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": false, + "values": [ + { + "name": "Infinite", + "value": "infinite", + "description": "The lease is of infinite duration." + }, + { + "name": "Fixed", + "value": "fixed", + "description": "The lease is of fixed duration." + } + ] + } + }, + "x-ms-lease-state": { + "type": "string", + "description": "Lease state of the blob.", + "enum": [ + "available", + "leased", + "expired", + "breaking", + "broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": false, + "values": [ + { + "name": "Available", + "value": "available", + "description": "The lease is available." + }, + { + "name": "Leased", + "value": "leased", + "description": "The lease is currently leased." + }, + { + "name": "Expired", + "value": "expired", + "description": "The lease is expired." + }, + { + "name": "Breaking", + "value": "breaking", + "description": "The lease is breaking." + }, + { + "name": "Broken", + "value": "broken", + "description": "The lease is broken." + } + ] + } + }, + "x-ms-lease-status": { + "type": "string", + "description": "The lease status of the blob.", + "enum": [ + "unlocked", + "locked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": false, + "values": [ + { + "name": "Unlocked", + "value": "unlocked", + "description": "The lease is unlocked." + }, + { + "name": "Locked", + "value": "locked", + "description": "The lease is locked." + } + ] + } + }, + "x-ms-meta": { + "type": "string", + "description": "The metadata headers." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&_overload=delete": { + "delete": { + "operationId": "Container_Delete", + "description": "operation marks the specified container for deletion. The container and any blobs contained within it are later deleted during garbage collection", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=metadata": { + "put": { + "operationId": "Container_SetMetadata", + "description": "operation sets one or more user-defined name-value pairs for the specified container.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=acl": { + "get": { + "operationId": "Container_GetAccessPolicy", + "description": "gets the permissions for the specified container. The permissions indicate whether container data may be accessed publicly.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/SignedIdentifiers" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-public-access": { + "type": "string", + "description": "The public access setting for the container.", + "enum": [ + "blob", + "container" + ], + "x-ms-enum": { + "name": "PublicAccessType", + "modelAsString": true, + "values": [ + { + "name": "Blob", + "value": "blob", + "description": "Blob access." + }, + { + "name": "Container", + "value": "container", + "description": "Container access." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=acl&_overload=setAccessPolicy": { + "put": { + "operationId": "Container_SetAccessPolicy", + "description": "sets the permissions for the specified container. The permissions indicate whether blobs in a container may be accessed publicly.", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-public-access", + "in": "header", + "description": "The public access setting for the container.", + "required": false, + "type": "string", + "enum": [ + "blob", + "container" + ], + "x-ms-enum": { + "name": "PublicAccessType", + "modelAsString": true, + "values": [ + { + "name": "Blob", + "value": "blob", + "description": "Blob access." + }, + { + "name": "Container", + "value": "container", + "description": "Container access." + } + ] + }, + "x-ms-client-name": "access" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "containerAcl", + "in": "body", + "description": "The access control list for the container.", + "required": true, + "schema": { + "$ref": "#/definitions/SignedIdentifiers" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=undelete": { + "put": { + "operationId": "Container_Restore", + "description": "Restores a previously-deleted container.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "x-ms-deleted-container-name", + "in": "header", + "description": "Optional. Version 2019-12-12 and later. Specifies the name of the deleted container to restore.", + "required": false, + "type": "string", + "x-ms-client-name": "deletedContainerName" + }, + { + "name": "x-ms-deleted-container-version", + "in": "header", + "description": "Optional. Version 2019-12-12 and later. Specifies the version of the deleted container to restore.", + "required": false, + "type": "string", + "x-ms-client-name": "deletedContainerVersion" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=rename": { + "put": { + "operationId": "Container_Rename", + "description": "Renames an existing container.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "x-ms-source-container-name", + "in": "header", + "description": "Required. Specifies the name of the container to rename.", + "required": true, + "type": "string", + "x-ms-client-name": "sourceContainerName" + }, + { + "name": "x-ms-source-lease-id", + "in": "header", + "description": "A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceLeaseId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=batch": { + "post": { + "operationId": "Container_SubmitBatch", + "description": "The Batch operation allows multiple API calls to be embedded into a single HTTP request.", + "produces": [ + "multipart/mixed", + "application/xml" + ], + "consumes": [ + "multipart/mixed" + ], + "parameters": [ + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "name", + "in": "formData", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "formData", + "required": true, + "type": "file" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "schema": { + "type": "string" + }, + "headers": { + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=blobs": { + "get": { + "operationId": "Container_FilterBlobs", + "description": "The Filter Blobs operation enables callers to list blobs in a container whose tags match a given search expression. Filter blobs searches within the given container.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "where", + "in": "query", + "description": "Filters the results to return only to return only blobs whose tags match the specified expression.", + "required": false, + "type": "string" + }, + { + "name": "marker", + "in": "query", + "description": "A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client.", + "required": false, + "type": "string" + }, + { + "name": "maxresults", + "in": "query", + "description": "Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1 + }, + { + "name": "include", + "in": "query", + "description": "Include this parameter to specify one or more datasets to include in the response.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "none", + "versions" + ], + "x-ms-enum": { + "name": "FilterBlobsIncludeItem", + "modelAsString": false, + "values": [ + { + "name": "None", + "value": "none", + "description": "The filter includes no versions." + }, + { + "name": "Versions", + "value": "versions", + "description": "The filter includes n versions." + } + ] + } + }, + "collectionFormat": "csv" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/FilterBlobSegment" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?comp=lease&restype=container&acquire": { + "put": { + "operationId": "Container_AcquireLease", + "description": "The Acquire Lease operation requests a new lease on a container. The lease lock duration can be 15 to 60 seconds, or can be infinite.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "x-ms-lease-duration", + "in": "header", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "required": true, + "type": "integer", + "format": "int32", + "x-ms-client-name": "duration" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-proposed-lease-id", + "in": "header", + "description": "Optional. The proposed lease ID for the container.", + "required": false, + "type": "string", + "x-ms-client-name": "proposedLeaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "acquire" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-id": { + "type": "string", + "description": "Uniquely identifies a blobs' lease" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?comp=lease&restype=container&release": { + "put": { + "operationId": "Container_ReleaseLease", + "description": "The Release Lease operation frees the lease if it's no longer needed, so that another client can immediately acquire a lease against the container.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Required. A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match.", + "required": true, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "release" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?comp=lease&restype=container&renew": { + "put": { + "operationId": "Container_RenewLease", + "description": "The Renew Lease operation renews an existing lease.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Required. A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match.", + "required": true, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "renew" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-id": { + "type": "string", + "description": "Uniquely identifies a blobs' lease" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?comp=lease&restype=container&break": { + "put": { + "operationId": "Container_BreakLease", + "description": "The Break Lease operation ends a lease and ensures that another client can't acquire a new lease until the current lease period has expired.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-lease-break-period", + "in": "header", + "description": "For a break operation, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60. This break period is only used if it is shorter than the time remaining on the lease. If longer, the time remaining on the lease is used. A new lease will not be available before the break period has expired, but the lease may be held for longer than the break period. If this header does not appear with a break operation, a fixed-duration lease breaks after the remaining lease period elapses, and an infinite lease breaks immediately.", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-client-name": "breakPeriod" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "break" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-time": { + "type": "integer", + "format": "int32", + "description": "Approximate time remaining in the lease period, in seconds." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?comp=lease&restype=container&change": { + "put": { + "operationId": "Container_ChangeLease", + "description": "The Change Lease operation is used to change the ID of an existing lease.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Required. A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match.", + "required": true, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-proposed-lease-id", + "in": "header", + "description": "Required. The proposed lease ID for the container.", + "required": true, + "type": "string", + "x-ms-client-name": "proposedLeaseId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "change" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-id": { + "type": "string", + "description": "Uniquely identifies a blobs' lease" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=list&flat": { + "get": { + "operationId": "Container_ListBlobFlatSegment", + "description": "The List Blobs operation returns a list of the blobs under the specified container.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "prefix", + "in": "query", + "description": "Filters the results to return only containers whose name begins with the specified prefix.", + "required": false, + "type": "string" + }, + { + "name": "marker", + "in": "query", + "description": "A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client.", + "required": false, + "type": "string" + }, + { + "name": "maxresults", + "in": "query", + "description": "Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1 + }, + { + "name": "include", + "in": "query", + "description": "Include this parameter to specify one or more datasets to include in the response.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "copy", + "deleted", + "metadata", + "snapshots", + "uncommittedblobs", + "versions", + "tags", + "immutabilitypolicy", + "legalhold", + "deletedwithversions" + ], + "x-ms-enum": { + "name": "ListBlobsIncludeItem", + "modelAsString": false, + "values": [ + { + "name": "Copy", + "value": "copy", + "description": "The include copies." + }, + { + "name": "Deleted", + "value": "deleted", + "description": "The include deleted blobs." + }, + { + "name": "Metadata", + "value": "metadata", + "description": "The include metadata." + }, + { + "name": "Snapshots", + "value": "snapshots", + "description": "The include snapshots." + }, + { + "name": "UncommittedBlobs", + "value": "uncommittedblobs", + "description": "The include uncommitted blobs." + }, + { + "name": "Versions", + "value": "versions", + "description": "The include versions." + }, + { + "name": "Tags", + "value": "tags", + "description": "The include tags." + }, + { + "name": "ImmutabilityPolicy", + "value": "immutabilitypolicy", + "description": "The include immutable policy." + }, + { + "name": "LegalHold", + "value": "legalhold", + "description": "The include legal hold." + }, + { + "name": "DeletedWithVersions", + "value": "deletedwithversions", + "description": "The include deleted with versions." + } + ] + } + }, + "collectionFormat": "csv" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListBlobsFlatSegmentResponse" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=container&comp=list&hierarchy": { + "get": { + "operationId": "Container_ListBlobHierarchySegment", + "description": "The List Blobs operation returns a list of the blobs under the specified container. A delimiter can be used to traverse a virtual hierarchy of blobs as though it were a file system.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "delimiter", + "in": "query", + "description": "When the request includes this parameter, the operation returns a BlobPrefix element in the response body that acts as a placeholder for all blobs whose names begin with the same substring up to the appearance of the delimiter character. The delimiter may be a single character or a string.", + "required": true, + "type": "string" + }, + { + "name": "prefix", + "in": "query", + "description": "Filters the results to return only containers whose name begins with the specified prefix.", + "required": false, + "type": "string" + }, + { + "name": "marker", + "in": "query", + "description": "A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client.", + "required": false, + "type": "string" + }, + { + "name": "maxresults", + "in": "query", + "description": "Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1 + }, + { + "name": "include", + "in": "query", + "description": "Include this parameter to specify one or more datasets to include in the response.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "copy", + "deleted", + "metadata", + "snapshots", + "uncommittedblobs", + "versions", + "tags", + "immutabilitypolicy", + "legalhold", + "deletedwithversions" + ], + "x-ms-enum": { + "name": "ListBlobsIncludeItem", + "modelAsString": false, + "values": [ + { + "name": "Copy", + "value": "copy", + "description": "The include copies." + }, + { + "name": "Deleted", + "value": "deleted", + "description": "The include deleted blobs." + }, + { + "name": "Metadata", + "value": "metadata", + "description": "The include metadata." + }, + { + "name": "Snapshots", + "value": "snapshots", + "description": "The include snapshots." + }, + { + "name": "UncommittedBlobs", + "value": "uncommittedblobs", + "description": "The include uncommitted blobs." + }, + { + "name": "Versions", + "value": "versions", + "description": "The include versions." + }, + { + "name": "Tags", + "value": "tags", + "description": "The include tags." + }, + { + "name": "ImmutabilityPolicy", + "value": "immutabilitypolicy", + "description": "The include immutable policy." + }, + { + "name": "LegalHold", + "value": "legalhold", + "description": "The include legal hold." + }, + { + "name": "DeletedWithVersions", + "value": "deletedwithversions", + "description": "The include deleted with versions." + } + ] + } + }, + "collectionFormat": "csv" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListBlobsHierarchySegmentResponse" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}?restype=account&comp=properties": { + "get": { + "operationId": "Container_GetAccountInfo", + "description": "Returns the sku name and account kind", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-account-kind": { + "type": "string", + "description": "Identifies the account kind", + "enum": [ + "Storage", + "BlobStorage", + "StorageV2", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "AccountKind", + "modelAsString": false, + "values": [ + { + "name": "Storage", + "value": "Storage", + "description": "The storage account is a general-purpose account." + }, + { + "name": "BlobStorage", + "value": "BlobStorage", + "description": "The storage account is a blob storage account." + }, + { + "name": "StorageV2", + "value": "StorageV2", + "description": "The storage account is a storage V2 account." + }, + { + "name": "FileStorage", + "value": "FileStorage", + "description": "The storage account is a file storage account." + }, + { + "name": "BlockBlobStorage", + "value": "BlockBlobStorage", + "description": "The storage account is a block blob storage account." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-is-hns-enabled": { + "type": "boolean", + "description": "Version 2019-07-07 and newer. Indicates if the account has a hierarchical namespace enabled." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-sku-name": { + "type": "string", + "description": "Identifies the sku name of the account", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": false, + "values": [ + { + "name": "StandardLRS", + "value": "Standard_LRS", + "description": "The standard LRS SKU." + }, + { + "name": "StandardGRS", + "value": "Standard_GRS", + "description": "The standard GRS SKU." + }, + { + "name": "StandardRAGRS", + "value": "Standard_RAGRS", + "description": "The standard RAGRS SKU." + }, + { + "name": "StandardZRS", + "value": "Standard_ZRS", + "description": "The standard ZRS SKU." + }, + { + "name": "PremiumLRS", + "value": "Premium_LRS", + "description": "The premium LRS SKU." + } + ] + } + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=undelete": { + "put": { + "operationId": "Blob_Undelete", + "description": "Undelete a blob that was previously soft deleted", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=expiry": { + "put": { + "operationId": "Blob_SetExpiry", + "description": "Set the expiration time of a blob", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-expiry-option", + "in": "header", + "description": "Required. Indicates mode of the expiry time", + "required": true, + "type": "string", + "enum": [ + "NeverExpire", + "RelativeToCreation", + "RelativeToNow", + "Absolute" + ], + "x-ms-enum": { + "name": "BlobExpiryOptions", + "modelAsString": true, + "values": [ + { + "name": "NeverExpire", + "value": "NeverExpire", + "description": "Never expire." + }, + { + "name": "RelativeToCreation", + "value": "RelativeToCreation", + "description": "Relative to creation time." + }, + { + "name": "RelativeToNow", + "value": "RelativeToNow", + "description": "Relative to now." + }, + { + "name": "Absolute", + "value": "Absolute", + "description": "Absolute time." + } + ] + }, + "x-ms-client-name": "expiryOptions" + }, + { + "name": "x-ms-expiry-time", + "in": "header", + "description": "The time this blob will expire.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ExpiresOn" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=properties&SetHTTPHeaders": { + "put": { + "operationId": "Blob_SetProperties", + "description": "The Set HTTP Headers operation sets system properties on the blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-blob-cache-control", + "in": "header", + "description": "Optional. Sets the blob's cache control. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobCacheControl" + }, + { + "name": "x-ms-blob-content-type", + "in": "header", + "description": "Optional. Sets the blob's content type. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentType" + }, + { + "name": "x-ms-blob-content-md5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "blobContentMd5" + }, + { + "name": "x-ms-blob-content-encoding", + "in": "header", + "description": "Optional. Sets the blob's content encoding. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentEncoding" + }, + { + "name": "x-ms-blob-content-language", + "in": "header", + "description": "Optional. Set the blob's content language. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentLanguage" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-content-disposition", + "in": "header", + "description": "Optional. Sets the blob's content disposition. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentDisposition" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=immutabilityPolicies": { + "put": { + "operationId": "Blob_SetImmutabilityPolicy", + "description": "Set the immutability policy of a blob", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-immutability-policy-until-date", + "in": "header", + "description": "Specifies the date time when the blobs immutability policy is set to expire.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "immutabilityPolicyExpiry" + }, + { + "name": "x-ms-immutability-policy-mode", + "in": "header", + "description": "Specifies the immutability policy mode to set on the blob.", + "required": false, + "type": "string", + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + }, + "x-ms-client-name": "immutabilityPolicyMode" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-immutability-policy-mode": { + "type": "string", + "description": "Indicates the immutability policy mode of the blob.", + "enum": [ + "Mutable", + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "BlobImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Mutable", + "value": "Mutable", + "description": "The immutability policy is mutable." + }, + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + } + }, + "x-ms-immutability-policy-until-date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the blob immutability policy will expire." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=immutabilityPolicies&_overload=deleteImmutabilityPolicy": { + "delete": { + "operationId": "Blob_DeleteImmutabilityPolicy", + "description": "The Delete Immutability Policy operation deletes the immutability policy on the blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=legalhold": { + "put": { + "operationId": "Blob_SetLegalHold", + "description": "The Set Legal Hold operation sets a legal hold on the blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-legal-hold", + "in": "header", + "description": "Required. Specifies the legal hold status to set on the blob.", + "required": true, + "type": "boolean", + "x-ms-client-name": "legalHold" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-legal-hold": { + "type": "boolean", + "description": "Specifies the legal hold status to set on the blob." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=metadata": { + "put": { + "operationId": "Blob_SetMetadata", + "description": "The Set Metadata operation sets user-defined metadata for the specified blob as one or more name-value pairs.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=lease&acquire": { + "put": { + "operationId": "Blob_AcquireLease", + "description": "The Acquire Lease operation requests a new lease on a blob. The lease lock duration can be 15 to 60 seconds, or can be infinite.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-duration", + "in": "header", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "required": true, + "type": "integer", + "format": "int32", + "x-ms-client-name": "duration" + }, + { + "name": "x-ms-proposed-lease-id", + "in": "header", + "description": "Optional. The proposed lease ID for the container.", + "required": false, + "type": "string", + "x-ms-client-name": "proposedLeaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "acquire" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-id": { + "type": "string", + "description": "Uniquely identifies a blobs' lease" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=lease&release": { + "put": { + "operationId": "Blob_ReleaseLease", + "description": "The Release Lease operation frees the lease if it's no longer needed, so that another client can immediately acquire a lease against the blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Required. A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match.", + "required": true, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "release" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=lease&renew": { + "put": { + "operationId": "Blob_RenewLease", + "description": "The Renew Lease operation renews an existing lease.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Required. A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match.", + "required": true, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "renew" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-id": { + "type": "string", + "description": "Uniquely identifies a blobs' lease" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=lease&change": { + "put": { + "operationId": "Blob_ChangeLease", + "description": "The Change Lease operation is used to change the ID of an existing lease.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "Required. A lease ID for the source path. If specified, the source path must have an active lease and the lease ID must match.", + "required": true, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-proposed-lease-id", + "in": "header", + "description": "Required. The proposed lease ID for the container.", + "required": true, + "type": "string", + "x-ms-client-name": "proposedLeaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "change" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-id": { + "type": "string", + "description": "Uniquely identifies a blobs' lease" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=lease&break": { + "put": { + "operationId": "Blob_BreakLease", + "description": "The Break Lease operation ends a lease and ensures that another client can't acquire a new lease until the current lease period has expired.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-break-period", + "in": "header", + "description": "For a break operation, proposed duration the lease should continue before it is broken, in seconds, between 0 and 60. This break period is only used if it is shorter than the time remaining on the lease. If longer, the time remaining on the lease is used. A new lease will not be available before the break period has expired, but the lease may be held for longer than the break period. If this header does not appear with a break operation, a fixed-duration lease breaks after the remaining lease period elapses, and an infinite lease breaks immediately.", + "required": false, + "type": "integer", + "format": "int32", + "x-ms-client-name": "breakPeriod" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-lease-action", + "in": "header", + "description": "Describes what lease action to take.", + "required": true, + "type": "string", + "enum": [ + "break" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "action" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-lease-time": { + "type": "integer", + "format": "int32", + "description": "Approximate time remaining in the lease period, in seconds." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=snapshot": { + "put": { + "operationId": "Blob_CreateSnapshot", + "description": "The Create Snapshot operation creates a read-only snapshot of a blob", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-snapshot": { + "type": "string", + "description": "Uniquely identifies the snapshot and indicates the snapshot version. It may be used in subsequent requests to access the snapshot." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=copy&sync": { + "put": { + "operationId": "Blob_CopyFromUrl", + "description": "The Copy From URL operation copies a blob or an internet resource to a new blob. It will not return a response until the copy is complete.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "x-ms-access-tier", + "in": "header", + "description": "The tier to be set on the blob.", + "required": false, + "type": "string", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80", + "Hot", + "Cool", + "Archive", + "Premium", + "Cold" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The hot P4 tier." + }, + { + "name": "P6", + "value": "P6", + "description": "The hot P6 tier." + }, + { + "name": "P10", + "value": "P10", + "description": "The hot P10 tier." + }, + { + "name": "P15", + "value": "P15", + "description": "The hot P15 tier." + }, + { + "name": "P20", + "value": "P20", + "description": "The hot P20 tier." + }, + { + "name": "P30", + "value": "P30", + "description": "The hot P30 tier." + }, + { + "name": "P40", + "value": "P40", + "description": "The hot P40 tier." + }, + { + "name": "P50", + "value": "P50", + "description": "The hot P50 tier." + }, + { + "name": "P60", + "value": "P60", + "description": "The hot P60 tier." + }, + { + "name": "P70", + "value": "P70", + "description": "The hot P70 tier." + }, + { + "name": "P80", + "value": "P80", + "description": "The hot P80 tier." + }, + { + "name": "Hot", + "value": "Hot", + "description": "The hot access tier." + }, + { + "name": "Cool", + "value": "Cool", + "description": "The cool access tier." + }, + { + "name": "Archive", + "value": "Archive", + "description": "The archive access tier." + }, + { + "name": "Premium", + "value": "Premium", + "description": "The Premium access tier." + }, + { + "name": "Cold", + "value": "Cold", + "description": "The Cold access tier." + } + ] + }, + "x-ms-client-name": "tier" + }, + { + "name": "x-ms-source-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfModifiedSince" + }, + { + "name": "x-ms-source-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfUnmodifiedSince" + }, + { + "name": "x-ms-source-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfMatch" + }, + { + "name": "x-ms-source-if-none-match", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfNoneMatch" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-copy-source", + "in": "header", + "description": "Specifies the name of the source page blob snapshot. This value is a URL of up to 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would appear in a request URI. The source blob must either be public or must be authenticated via a shared access signature.", + "required": true, + "type": "string", + "x-ms-client-name": "copySource" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-source-content-md5", + "in": "header", + "description": "Specify the md5 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentMd5" + }, + { + "name": "x-ms-tags", + "in": "header", + "description": "Optional. Used to set blob tags in various blob operations.", + "required": false, + "type": "string", + "x-ms-client-name": "BlobTagsString" + }, + { + "name": "x-ms-immutability-policy-until-date", + "in": "header", + "description": "Specifies the date time when the blobs immutability policy is set to expire.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "immutabilityPolicyExpiry" + }, + { + "name": "x-ms-immutability-policy-mode", + "in": "header", + "description": "Specifies the immutability policy mode to set on the blob.", + "required": false, + "type": "string", + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + }, + "x-ms-client-name": "immutabilityPolicyMode" + }, + { + "name": "x-ms-legal-hold", + "in": "header", + "description": "Specified if a legal hold should be set on the blob.", + "required": false, + "type": "boolean", + "x-ms-client-name": "legalHold" + }, + { + "name": "x-ms-copy-source-authorization", + "in": "header", + "description": "Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.", + "required": false, + "type": "string", + "x-ms-client-name": "copySourceAuthorization" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-copy-source-tag-option", + "in": "header", + "description": "Optional, default 'replace'. Indicates if source tags should be copied or replaced with the tags specified by x-ms-tags.", + "required": false, + "type": "string", + "enum": [ + "REPLACE", + "COPY" + ], + "x-ms-enum": { + "name": "BlobCopySourceTags", + "modelAsString": false, + "values": [ + { + "name": "Replace", + "value": "REPLACE", + "description": "The replace blob source tags option." + }, + { + "name": "Copy", + "value": "COPY", + "description": "The copy blob source tags option." + } + ] + }, + "x-ms-client-name": "copySourceTags" + }, + { + "name": "x-ms-file-request-intent", + "in": "header", + "description": "Valid value is backup", + "required": false, + "type": "string", + "enum": [ + "backup" + ], + "x-ms-enum": { + "name": "FileShareTokenIntent", + "modelAsString": true, + "values": [ + { + "name": "Backup", + "value": "backup", + "description": "The file share token intent is backup." + } + ] + }, + "x-ms-client-name": "fileRequestIntent" + }, + { + "name": "x-ms-requires-sync", + "in": "header", + "description": "This header indicates that this is a synchronous Copy Blob From URL instead of a Asynchronous Copy Blob.", + "required": true, + "type": "string", + "enum": [ + "true" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "requiresSync" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "success" + ], + "x-ms-enum": { + "modelAsString": false + } + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=copy©id": { + "put": { + "operationId": "Blob_AbortCopyFromUrl", + "description": "The Abort Copy From URL operation aborts a pending Copy From URL operation, and leaves a destination blob with zero length and full metadata.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "copyid", + "in": "query", + "description": "The copy identifier provided in the x-ms-copy-id header of the original Copy Blob operation.", + "required": true, + "type": "string", + "x-ms-client-name": "copyId" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-copy-action", + "in": "header", + "description": "The copy action to be performed.", + "required": true, + "type": "string", + "enum": [ + "abort" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "copyActionAbortConstant" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. ", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=tier": { + "put": { + "operationId": "Blob_SetTier", + "description": "The Set Tier operation sets the tier on a block blob. The operation is allowed on a page blob or block blob, but not on an append blob. A block blob's tier determines Hot/Cool/Archive storage type. This operation does not update the blob's ETag.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-access-tier", + "in": "header", + "description": "Indicates the tier to be set on the blob.", + "required": true, + "type": "string", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80", + "Hot", + "Cool", + "Archive", + "Premium", + "Cold" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The hot P4 tier." + }, + { + "name": "P6", + "value": "P6", + "description": "The hot P6 tier." + }, + { + "name": "P10", + "value": "P10", + "description": "The hot P10 tier." + }, + { + "name": "P15", + "value": "P15", + "description": "The hot P15 tier." + }, + { + "name": "P20", + "value": "P20", + "description": "The hot P20 tier." + }, + { + "name": "P30", + "value": "P30", + "description": "The hot P30 tier." + }, + { + "name": "P40", + "value": "P40", + "description": "The hot P40 tier." + }, + { + "name": "P50", + "value": "P50", + "description": "The hot P50 tier." + }, + { + "name": "P60", + "value": "P60", + "description": "The hot P60 tier." + }, + { + "name": "P70", + "value": "P70", + "description": "The hot P70 tier." + }, + { + "name": "P80", + "value": "P80", + "description": "The hot P80 tier." + }, + { + "name": "Hot", + "value": "Hot", + "description": "The hot access tier." + }, + { + "name": "Cool", + "value": "Cool", + "description": "The cool access tier." + }, + { + "name": "Archive", + "value": "Archive", + "description": "The archive access tier." + }, + { + "name": "Premium", + "value": "Premium", + "description": "The Premium access tier." + }, + { + "name": "Cold", + "value": "Cold", + "description": "The Cold access tier." + } + ] + }, + "x-ms-client-name": "tier" + }, + { + "name": "x-ms-rehydrate-priority", + "in": "header", + "description": "If an object is in rehydrate pending state then this header is returned with priority of rehydrate. Valid values are High and Standard.", + "required": false, + "type": "string", + "enum": [ + "High", + "Standard" + ], + "x-ms-enum": { + "name": "RehydratePriority", + "modelAsString": true, + "values": [ + { + "name": "High", + "value": "High", + "description": "The rehydrate priority is high." + }, + { + "name": "Standard", + "value": "Standard", + "description": "The rehydrate priority is standard." + } + ] + }, + "x-ms-client-name": "rehydratePriority" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?restype=account&comp=properties&blob": { + "get": { + "operationId": "Blob_GetAccountInfo", + "description": "Returns the sku name and account kind", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-account-kind": { + "type": "string", + "description": "Identifies the account kind", + "enum": [ + "Storage", + "BlobStorage", + "StorageV2", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "AccountKind", + "modelAsString": false, + "values": [ + { + "name": "Storage", + "value": "Storage", + "description": "The storage account is a general-purpose account." + }, + { + "name": "BlobStorage", + "value": "BlobStorage", + "description": "The storage account is a blob storage account." + }, + { + "name": "StorageV2", + "value": "StorageV2", + "description": "The storage account is a storage V2 account." + }, + { + "name": "FileStorage", + "value": "FileStorage", + "description": "The storage account is a file storage account." + }, + { + "name": "BlockBlobStorage", + "value": "BlockBlobStorage", + "description": "The storage account is a block blob storage account." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-is-hns-enabled": { + "type": "boolean", + "description": "Version 2019-07-07 and newer. Indicates if the account has a hierarchical namespace enabled." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-sku-name": { + "type": "string", + "description": "Identifies the sku name of the account", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": false, + "values": [ + { + "name": "StandardLRS", + "value": "Standard_LRS", + "description": "The standard LRS SKU." + }, + { + "name": "StandardGRS", + "value": "Standard_GRS", + "description": "The standard GRS SKU." + }, + { + "name": "StandardRAGRS", + "value": "Standard_RAGRS", + "description": "The standard RAGRS SKU." + }, + { + "name": "StandardZRS", + "value": "Standard_ZRS", + "description": "The standard ZRS SKU." + }, + { + "name": "PremiumLRS", + "value": "Premium_LRS", + "description": "The premium LRS SKU." + } + ] + } + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=tags": { + "get": { + "operationId": "Blob_GetTags", + "description": "The Get Blob Tags operation enables users to get tags on a blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/BlobTags" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=tags&_overload=setTags": { + "put": { + "operationId": "Blob_SetTags", + "description": "The Set Tags operation enables users to set tags on a blob.", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "versionid", + "in": "query", + "description": "The version id parameter is an opaque DateTime value that, when present, specifies the version of the blob to operate on. It's for service version 2019-10-10 and newer.", + "required": false, + "type": "string", + "x-ms-client-name": "versionId" + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "x-ms-content-crc64", + "in": "header", + "description": "Specify the transactional crc64 for the body, to be validated by the service.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentCrc64" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "tags", + "in": "body", + "description": "The blob tags.", + "required": true, + "schema": { + "$ref": "#/definitions/BlobTags" + } + } + ], + "responses": { + "204": { + "description": "There is no content to send for this request, but the headers may be useful. ", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?_overload=create": { + "put": { + "operationId": "AppendBlob_Create", + "description": "The Create operation creates a new append blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-blob-content-type", + "in": "header", + "description": "Optional. Sets the blob's content type. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentType" + }, + { + "name": "x-ms-blob-content-encoding", + "in": "header", + "description": "Optional. Sets the blob's content encoding. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentEncoding" + }, + { + "name": "x-ms-blob-content-language", + "in": "header", + "description": "Optional. Set the blob's content language. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentLanguage" + }, + { + "name": "x-ms-blob-content-md5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "blobContentMd5" + }, + { + "name": "x-ms-blob-cache-control", + "in": "header", + "description": "Optional. Sets the blob's cache control. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobCacheControl" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-content-disposition", + "in": "header", + "description": "Optional. Sets the blob's content disposition. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentDisposition" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-tags", + "in": "header", + "description": "Optional. Used to set blob tags in various blob operations.", + "required": false, + "type": "string", + "x-ms-client-name": "BlobTagsString" + }, + { + "name": "x-ms-immutability-policy-until-date", + "in": "header", + "description": "Specifies the date time when the blobs immutability policy is set to expire.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "immutabilityPolicyExpiry" + }, + { + "name": "x-ms-immutability-policy-mode", + "in": "header", + "description": "Specifies the immutability policy mode to set on the blob.", + "required": false, + "type": "string", + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + }, + "x-ms-client-name": "immutabilityPolicyMode" + }, + { + "name": "x-ms-legal-hold", + "in": "header", + "description": "Specified if a legal hold should be set on the blob.", + "required": false, + "type": "boolean", + "x-ms-client-name": "legalHold" + }, + { + "name": "Content-Length", + "in": "header", + "description": "the initial size of the append blob", + "required": true, + "type": "number", + "enum": [ + 0 + ], + "x-ms-client-name": "contentLength" + }, + { + "name": "x-ms-blob-type", + "in": "header", + "description": "The type of the blob.", + "required": true, + "type": "string", + "enum": [ + "AppendBlob" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "blobType" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=page&update": { + "put": { + "operationId": "PageBlob_UploadPages", + "description": "The Upload Pages operation writes a range of pages to a page blob", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/octet-stream" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "x-ms-content-crc64", + "in": "header", + "description": "Specify the transactional crc64 for the body, to be validated by the service.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentCrc64" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Range", + "in": "header", + "description": "Bytes of data in the specified range.", + "required": true, + "type": "string", + "x-ms-client-name": "range" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-if-sequence-number-le", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has a sequence number less than or equal to the specified.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberLessThanOrEqualTo" + }, + { + "name": "x-ms-if-sequence-number-lt", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has a sequence number less than the specified.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberLessThan" + }, + { + "name": "x-ms-if-sequence-number-eq", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has the specified sequence number.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberEqualTo" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-structured-body", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the message schema version and properties.", + "required": false, + "type": "string", + "x-ms-client-name": "structuredBodyType" + }, + { + "name": "x-ms-structured-content-length", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the length of the blob/file content inside the message body. Will always be smaller than Content-Length.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "structuredContentLength" + }, + { + "name": "x-ms-page-write", + "in": "header", + "description": "Required. You may specify one of the following options:\\n - Update: Writes the bytes specified by the request body into the specified range. The Range and Content-Length headers must match to perform the update.\\n - Clear: Clears the specified range and releases the space used in storage for that range. To clear a range, set the Content-Length header to zero, and the Range header to a value that indicates the range to clear, up to maximum blob size.", + "required": true, + "type": "string", + "enum": [ + "update" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "pageWrite" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "body", + "in": "body", + "description": "The body of the request.", + "required": true, + "schema": { + "type": "string", + "format": "binary" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-structured-body": { + "type": "string", + "description": "Indicates the response body contains a structured message and specifies the message schema version and properties." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=page&clear": { + "put": { + "operationId": "PageBlob_ClearPages", + "description": "The Clear Pages operation clears a range of pages from a page blob", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "Content-Length", + "in": "header", + "description": "value must be 0 when x-ms-page-write is clear", + "required": true, + "type": "number", + "enum": [ + 0 + ], + "x-ms-client-name": "contentLength" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Range", + "in": "header", + "description": "Bytes of data in the specified range.", + "required": true, + "type": "string", + "x-ms-client-name": "range" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-if-sequence-number-le", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has a sequence number less than or equal to the specified.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberLessThanOrEqualTo" + }, + { + "name": "x-ms-if-sequence-number-lt", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has a sequence number less than the specified.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberLessThan" + }, + { + "name": "x-ms-if-sequence-number-eq", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has the specified sequence number.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberEqualTo" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-page-write", + "in": "header", + "description": "Required. You may specify one of the following options:\\n - Update: Writes the bytes specified by the request body into the specified range. The Range and Content-Length headers must match to perform the update.\\n - Clear: Clears the specified range and releases the space used in storage for that range. To clear a range, set the Content-Length header to zero, and the Range header to a value that indicates the range to clear, up to maximum blob size.", + "required": true, + "type": "string", + "enum": [ + "clear" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "pageWrite" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=page&update&fromUrl": { + "put": { + "operationId": "PageBlob_UploadPagesFromUrl", + "description": "The Upload Pages operation writes a range of pages to a page blob where the contents are read from a URL.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "x-ms-copy-source", + "in": "header", + "description": "Specify a URL to the copy source.", + "required": true, + "type": "string", + "x-ms-client-name": "sourceUrl" + }, + { + "name": "x-ms-source-range", + "in": "header", + "description": "Bytes of source data in the specified range. The length of this range should match the ContentLength header and x-ms-range/Range destination range header.", + "required": true, + "type": "string", + "x-ms-client-name": "sourceRange" + }, + { + "name": "x-ms-source-content-md5", + "in": "header", + "description": "Specify the md5 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentMd5" + }, + { + "name": "x-ms-source-content-crc64", + "in": "header", + "description": "Specify the crc64 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentCrc64" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-range", + "in": "header", + "description": "Bytes of source data in the specified range. The length of this range should match the ContentLength header and x-ms-range/Range destination range header.", + "required": true, + "type": "string", + "x-ms-client-name": "range" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-if-sequence-number-le", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has a sequence number less than or equal to the specified.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberLessThanOrEqualTo" + }, + { + "name": "x-ms-if-sequence-number-lt", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has a sequence number less than the specified.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberLessThan" + }, + { + "name": "x-ms-if-sequence-number-eq", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has the specified sequence number.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "ifSequenceNumberEqualTo" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-source-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfModifiedSince" + }, + { + "name": "x-ms-source-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfUnmodifiedSince" + }, + { + "name": "x-ms-source-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfMatch" + }, + { + "name": "x-ms-source-if-none-match", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfNoneMatch" + }, + { + "name": "x-ms-copy-source-authorization", + "in": "header", + "description": "Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.", + "required": false, + "type": "string", + "x-ms-client-name": "copySourceAuthorization" + }, + { + "name": "x-ms-file-request-intent", + "in": "header", + "description": "Valid value is backup", + "required": false, + "type": "string", + "enum": [ + "backup" + ], + "x-ms-enum": { + "name": "FileShareTokenIntent", + "modelAsString": true, + "values": [ + { + "name": "Backup", + "value": "backup", + "description": "The file share token intent is backup." + } + ] + }, + "x-ms-client-name": "fileRequestIntent" + }, + { + "name": "x-ms-page-write", + "in": "header", + "description": "Required. You may specify one of the following options:\\n - Update: Writes the bytes specified by the request body into the specified range. The Range and Content-Length headers must match to perform the update.\\n - Clear: Clears the specified range and releases the space used in storage for that range. To clear a range, set the Content-Length header to zero, and the Range header to a value that indicates the range to clear, up to maximum blob size.", + "required": true, + "type": "string", + "enum": [ + "update" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "pageWrite" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=pagelist": { + "get": { + "operationId": "PageBlob_GetPageRanges", + "description": "The Get Page Ranges operation returns the list of valid page ranges for a page blob or snapshot of a page blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Range", + "in": "header", + "description": "Return only the bytes of the blob in the specified range.", + "required": false, + "type": "string", + "x-ms-client-name": "range" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "marker", + "in": "query", + "description": "A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client.", + "required": false, + "type": "string" + }, + { + "name": "maxresults", + "in": "query", + "description": "Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/PageList" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-content-length": { + "type": "integer", + "format": "int64", + "description": "The size of the blob in bytes." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=pagelist&diff": { + "get": { + "operationId": "PageBlob_GetPageRangesDiff", + "description": "The Get Page Ranges Diff operation returns the list of valid page ranges for a page blob or snapshot of a page blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "prevsnapshot", + "in": "query", + "description": "Optional in version 2015-07-08 and newer. The prevsnapshot parameter is a DateTime value that specifies that the response will contain only pages that were changed between target blob and previous snapshot. Changed pages include both updated and cleared pages. The target blob may be a snapshot, as long as the snapshot specified by prevsnapshot is the older of the two. Note that incremental snapshots are currently supported only for blobs created on or after January 1, 2016.", + "required": false, + "type": "string" + }, + { + "name": "x-ms-previous-snapshot-url", + "in": "header", + "description": "Optional. This header is only supported in service versions 2019-04-19 and after and specifies the URL of a previous snapshot of the target blob. The response will only contain pages that were changed between the target blob and its previous snapshot.", + "required": false, + "type": "string", + "x-ms-client-name": "prevSnapshotUrl" + }, + { + "name": "Range", + "in": "header", + "description": "Return only the bytes of the blob in the specified range.", + "required": false, + "type": "string", + "x-ms-client-name": "range" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "marker", + "in": "query", + "description": "A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client.", + "required": false, + "type": "string" + }, + { + "name": "maxresults", + "in": "query", + "description": "Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/PageList" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-content-length": { + "type": "integer", + "format": "int64", + "description": "The size of the blob in bytes." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=properties&Resize": { + "put": { + "operationId": "PageBlob_Resize", + "description": "The Resize operation increases the size of the page blob to the specified size.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-blob-content-length", + "in": "header", + "description": "This header specifies the maximum size for the page blob, up to 1 TB. The page blob size must be aligned to a 512-byte boundary.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "blobContentLength" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=properties&UpdateSequenceNumber": { + "put": { + "operationId": "PageBlob_UpdateSequenceNumber", + "description": "The Update Sequence Number operation sets the blob's sequence number. The operation will fail if the specified sequence number is less than the current sequence number of the blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-sequence-number-action", + "in": "header", + "description": "Required if the x-ms-blob-sequence-number header is set for the request. This property applies to page blobs only. This property indicates how the service should modify the blob's sequence number", + "required": true, + "type": "string", + "enum": [ + "increment", + "max", + "update" + ], + "x-ms-enum": { + "name": "SequenceNumberActionType", + "modelAsString": false, + "values": [ + { + "name": "Increment", + "value": "increment", + "description": "Increment the sequence number." + }, + { + "name": "Max", + "value": "max", + "description": "Set the maximum for the sequence number." + }, + { + "name": "Update", + "value": "update", + "description": "Update the sequence number." + } + ] + }, + "x-ms-client-name": "sequenceNumberAction" + }, + { + "name": "x-ms-blob-sequence-number", + "in": "header", + "description": "Set for page blobs only. The sequence number is a user-controlled value that you can use to track requests. The value of the sequence number must be between 0 and 2^63 - 1.", + "required": false, + "type": "integer", + "format": "int64", + "default": 0, + "x-ms-client-name": "blobSequenceNumber" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=incrementalcopy": { + "put": { + "operationId": "PageBlob_CopyIncremental", + "description": "The Copy Incremental operation copies a snapshot of the source page blob to a destination page blob. The snapshot is copied such that only the differential changes between the previously copied snapshot are transferred to the destination. The copied snapshots are complete copies of the original snapshot and can be read or copied from as usual. This API is supported since REST version 2016-05-31.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-copy-source", + "in": "header", + "description": "Specifies the name of the source page blob snapshot. This value is a URL of up to 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would appear in a request URI. The source blob must either be public or must be authenticated via a shared access signature.", + "required": true, + "type": "string", + "x-ms-client-name": "copySource" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=appendblock": { + "put": { + "operationId": "AppendBlob_AppendBlock", + "description": "The Append Block operation commits a new block of data to the end of an append blob.", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/octet-stream" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "x-ms-content-crc64", + "in": "header", + "description": "Specify the transactional crc64 for the body, to be validated by the service.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentCrc64" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-condition-maxsize", + "in": "header", + "description": "Optional conditional header. The max length in bytes permitted for the append blob. If the Append Block operation would cause the blob to exceed that limit or if the blob size is already greater than the value specified in this header, the request will fail with MaxBlobSizeConditionNotMet error (HTTP status code 412 - Precondition Failed).", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "maxSize" + }, + { + "name": "x-ms-blob-condition-appendpos", + "in": "header", + "description": "Optional conditional header, used only for the Append Block operation. A number indicating the byte offset to compare. Append Block will succeed only if the append position is equal to this number. If it is not, the request will fail with the AppendPositionConditionNotMet error (HTTP status code 412 - Precondition Failed).", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "appendPosition" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-structured-body", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the message schema version and properties.", + "required": false, + "type": "string", + "x-ms-client-name": "structuredBodyType" + }, + { + "name": "x-ms-structured-content-length", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the length of the blob/file content inside the message body. Will always be smaller than Content-Length.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "structuredContentLength" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "body", + "in": "body", + "description": "The body of the request.", + "required": true, + "schema": { + "type": "string", + "format": "binary" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-append-offset": { + "type": "string", + "description": "This response header is returned only for append operations. It returns the offset at which the block was committed, in bytes." + }, + "x-ms-blob-committed-block-count": { + "type": "integer", + "format": "int32", + "description": "The number of committed blocks present in the blob. This header is returned only for append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-structured-body": { + "type": "string", + "description": "Indicates the response body contains a structured message and specifies the message schema version and properties." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=appendblock&fromUrl": { + "put": { + "operationId": "AppendBlob_AppendBlockFromUrl", + "description": "The Append Block From URL operation creates a new block to be committed as part of an append blob where the contents are read from a URL.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "x-ms-copy-source", + "in": "header", + "description": "Specify a URL to the copy source.", + "required": true, + "type": "string", + "x-ms-client-name": "sourceUrl" + }, + { + "name": "x-ms-source-range", + "in": "header", + "description": "Bytes of source data in the specified range.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceRange" + }, + { + "name": "x-ms-source-content-md5", + "in": "header", + "description": "Specify the md5 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentMd5" + }, + { + "name": "x-ms-source-content-crc64", + "in": "header", + "description": "Specify the crc64 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentCrc64" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-condition-maxsize", + "in": "header", + "description": "Optional conditional header. The max length in bytes permitted for the append blob. If the Append Block operation would cause the blob to exceed that limit or if the blob size is already greater than the value specified in this header, the request will fail with MaxBlobSizeConditionNotMet error (HTTP status code 412 - Precondition Failed).", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "maxSize" + }, + { + "name": "x-ms-blob-condition-appendpos", + "in": "header", + "description": "Optional conditional header, used only for the Append Block operation. A number indicating the byte offset to compare. Append Block will succeed only if the append position is equal to this number. If it is not, the request will fail with the AppendPositionConditionNotMet error (HTTP status code 412 - Precondition Failed).", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "appendPosition" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-source-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfModifiedSince" + }, + { + "name": "x-ms-source-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfUnmodifiedSince" + }, + { + "name": "x-ms-source-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfMatch" + }, + { + "name": "x-ms-source-if-none-match", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfNoneMatch" + }, + { + "name": "x-ms-copy-source-authorization", + "in": "header", + "description": "Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.", + "required": false, + "type": "string", + "x-ms-client-name": "copySourceAuthorization" + }, + { + "name": "x-ms-file-request-intent", + "in": "header", + "description": "Valid value is backup", + "required": false, + "type": "string", + "enum": [ + "backup" + ], + "x-ms-enum": { + "name": "FileShareTokenIntent", + "modelAsString": true, + "values": [ + { + "name": "Backup", + "value": "backup", + "description": "The file share token intent is backup." + } + ] + }, + "x-ms-client-name": "fileRequestIntent" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-append-offset": { + "type": "string", + "description": "This response header is returned only for append operations. It returns the offset at which the block was committed, in bytes." + }, + "x-ms-blob-committed-block-count": { + "type": "integer", + "format": "int32", + "description": "The number of committed blocks present in the blob. This header is returned only for append blobs." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=seal": { + "put": { + "operationId": "AppendBlob_Seal", + "description": "The Seal operation seals the Append Blob to make it read-only. Seal is supported only on version 2019-12-12 version or later.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-blob-condition-appendpos", + "in": "header", + "description": "Optional conditional header, used only for the Append Block operation. A number indicating the byte offset to compare. Append Block will succeed only if the append position is equal to this number. If it is not, the request will fail with the AppendPositionConditionNotMet error (HTTP status code 412 - Precondition Failed).", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "appendPosition" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-sealed": { + "type": "boolean", + "description": "If this blob has been sealed" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?_overload=upload": { + "put": { + "operationId": "BlockBlob_Upload", + "description": "The Upload Block Blob operation updates the content of an existing block blob. Updating an existing block blob overwrites any existing metadata on the blob. Partial updates are not supported with Put Blob; the content of the existing blob is overwritten with the content of the new blob. To perform a partial update of the content of a block blob, use the Put Block List operation.", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/octet-stream" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "x-ms-blob-content-type", + "in": "header", + "description": "Optional. Sets the blob's content type. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentType" + }, + { + "name": "x-ms-blob-content-encoding", + "in": "header", + "description": "Optional. Sets the blob's content encoding. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentEncoding" + }, + { + "name": "x-ms-blob-content-language", + "in": "header", + "description": "Optional. Set the blob's content language. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentLanguage" + }, + { + "name": "x-ms-blob-content-md5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "blobContentMd5" + }, + { + "name": "x-ms-blob-cache-control", + "in": "header", + "description": "Optional. Sets the blob's cache control. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobCacheControl" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-content-disposition", + "in": "header", + "description": "Optional. Sets the blob's content disposition. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentDisposition" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-access-tier", + "in": "header", + "description": "The tier to be set on the blob.", + "required": false, + "type": "string", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80", + "Hot", + "Cool", + "Archive", + "Premium", + "Cold" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The hot P4 tier." + }, + { + "name": "P6", + "value": "P6", + "description": "The hot P6 tier." + }, + { + "name": "P10", + "value": "P10", + "description": "The hot P10 tier." + }, + { + "name": "P15", + "value": "P15", + "description": "The hot P15 tier." + }, + { + "name": "P20", + "value": "P20", + "description": "The hot P20 tier." + }, + { + "name": "P30", + "value": "P30", + "description": "The hot P30 tier." + }, + { + "name": "P40", + "value": "P40", + "description": "The hot P40 tier." + }, + { + "name": "P50", + "value": "P50", + "description": "The hot P50 tier." + }, + { + "name": "P60", + "value": "P60", + "description": "The hot P60 tier." + }, + { + "name": "P70", + "value": "P70", + "description": "The hot P70 tier." + }, + { + "name": "P80", + "value": "P80", + "description": "The hot P80 tier." + }, + { + "name": "Hot", + "value": "Hot", + "description": "The hot access tier." + }, + { + "name": "Cool", + "value": "Cool", + "description": "The cool access tier." + }, + { + "name": "Archive", + "value": "Archive", + "description": "The archive access tier." + }, + { + "name": "Premium", + "value": "Premium", + "description": "The Premium access tier." + }, + { + "name": "Cold", + "value": "Cold", + "description": "The Cold access tier." + } + ] + }, + "x-ms-client-name": "tier" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-tags", + "in": "header", + "description": "Optional. Used to set blob tags in various blob operations.", + "required": false, + "type": "string", + "x-ms-client-name": "BlobTagsString" + }, + { + "name": "x-ms-immutability-policy-until-date", + "in": "header", + "description": "Specifies the date time when the blobs immutability policy is set to expire.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "immutabilityPolicyExpiry" + }, + { + "name": "x-ms-immutability-policy-mode", + "in": "header", + "description": "Specifies the immutability policy mode to set on the blob.", + "required": false, + "type": "string", + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + }, + "x-ms-client-name": "immutabilityPolicyMode" + }, + { + "name": "x-ms-legal-hold", + "in": "header", + "description": "Specified if a legal hold should be set on the blob.", + "required": false, + "type": "boolean", + "x-ms-client-name": "legalHold" + }, + { + "name": "x-ms-content-crc64", + "in": "header", + "description": "Specify the transactional crc64 for the body, to be validated by the service.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentCrc64" + }, + { + "name": "x-ms-structured-body", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the message schema version and properties.", + "required": false, + "type": "string", + "x-ms-client-name": "structuredBodyType" + }, + { + "name": "x-ms-structured-content-length", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the length of the blob/file content inside the message body. Will always be smaller than Content-Length.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "structuredContentLength" + }, + { + "name": "x-ms-blob-type", + "in": "header", + "description": "The type of the blob.", + "required": true, + "type": "string", + "enum": [ + "BlockBlob" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "blobType" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "body", + "in": "body", + "description": "The body of the request.", + "required": true, + "schema": { + "type": "string", + "format": "binary" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-structured-body": { + "type": "string", + "description": "Indicates the response body contains a structured message and specifies the message schema version and properties." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?BlockBlob&fromUrl": { + "put": { + "operationId": "BlockBlob_PutBlobFromUrl", + "description": "The Put Blob from URL operation creates a new Block Blob where the contents of the blob are read from a given URL. This API is supported beginning with the 2020-04-08 version. Partial updates are not supported with Put Blob from URL; the content of an existing blob is overwritten with the content of the new blob. To perform partial updates to a block blob’s contents using a source URL, use the Put Block from URL API in conjunction with Put Block List.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "x-ms-blob-content-type", + "in": "header", + "description": "Optional. Sets the blob's content type. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentType" + }, + { + "name": "x-ms-blob-content-encoding", + "in": "header", + "description": "Optional. Sets the blob's content encoding. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentEncoding" + }, + { + "name": "x-ms-blob-content-language", + "in": "header", + "description": "Optional. Set the blob's content language. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentLanguage" + }, + { + "name": "x-ms-blob-content-md5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "blobContentMd5" + }, + { + "name": "x-ms-blob-cache-control", + "in": "header", + "description": "Optional. Sets the blob's cache control. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobCacheControl" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-content-disposition", + "in": "header", + "description": "Optional. Sets the blob's content disposition. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentDisposition" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-access-tier", + "in": "header", + "description": "The tier to be set on the blob.", + "required": false, + "type": "string", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80", + "Hot", + "Cool", + "Archive", + "Premium", + "Cold" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The hot P4 tier." + }, + { + "name": "P6", + "value": "P6", + "description": "The hot P6 tier." + }, + { + "name": "P10", + "value": "P10", + "description": "The hot P10 tier." + }, + { + "name": "P15", + "value": "P15", + "description": "The hot P15 tier." + }, + { + "name": "P20", + "value": "P20", + "description": "The hot P20 tier." + }, + { + "name": "P30", + "value": "P30", + "description": "The hot P30 tier." + }, + { + "name": "P40", + "value": "P40", + "description": "The hot P40 tier." + }, + { + "name": "P50", + "value": "P50", + "description": "The hot P50 tier." + }, + { + "name": "P60", + "value": "P60", + "description": "The hot P60 tier." + }, + { + "name": "P70", + "value": "P70", + "description": "The hot P70 tier." + }, + { + "name": "P80", + "value": "P80", + "description": "The hot P80 tier." + }, + { + "name": "Hot", + "value": "Hot", + "description": "The hot access tier." + }, + { + "name": "Cool", + "value": "Cool", + "description": "The cool access tier." + }, + { + "name": "Archive", + "value": "Archive", + "description": "The archive access tier." + }, + { + "name": "Premium", + "value": "Premium", + "description": "The Premium access tier." + }, + { + "name": "Cold", + "value": "Cold", + "description": "The Cold access tier." + } + ] + }, + "x-ms-client-name": "tier" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-source-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfModifiedSince" + }, + { + "name": "x-ms-source-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfUnmodifiedSince" + }, + { + "name": "x-ms-source-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfMatch" + }, + { + "name": "x-ms-source-if-none-match", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfNoneMatch" + }, + { + "name": "x-ms-source-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfTags" + }, + { + "name": "x-ms-source-content-md5", + "in": "header", + "description": "Specify the md5 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentMd5" + }, + { + "name": "x-ms-tags", + "in": "header", + "description": "Optional. Used to set blob tags in various blob operations.", + "required": false, + "type": "string", + "x-ms-client-name": "BlobTagsString" + }, + { + "name": "x-ms-copy-source", + "in": "header", + "description": "Specifies the name of the source page blob snapshot. This value is a URL of up to 2 KB in length that specifies a page blob snapshot. The value should be URL-encoded as it would appear in a request URI. The source blob must either be public or must be authenticated via a shared access signature.", + "required": true, + "type": "string", + "x-ms-client-name": "copySource" + }, + { + "name": "x-ms-copy-source-blob-properties", + "in": "header", + "description": "Optional, default is true. Indicates if properties from the source blob should be copied.", + "required": false, + "type": "boolean", + "x-ms-client-name": "copySourceBlobProperties" + }, + { + "name": "x-ms-copy-source-authorization", + "in": "header", + "description": "Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.", + "required": false, + "type": "string", + "x-ms-client-name": "copySourceAuthorization" + }, + { + "name": "x-ms-copy-source-tag-option", + "in": "header", + "description": "Optional, default 'replace'. Indicates if source tags should be copied or replaced with the tags specified by x-ms-tags.", + "required": false, + "type": "string", + "enum": [ + "REPLACE", + "COPY" + ], + "x-ms-enum": { + "name": "BlobCopySourceTags", + "modelAsString": false, + "values": [ + { + "name": "Replace", + "value": "REPLACE", + "description": "The replace blob source tags option." + }, + { + "name": "Copy", + "value": "COPY", + "description": "The copy blob source tags option." + } + ] + }, + "x-ms-client-name": "copySourceTags" + }, + { + "name": "x-ms-blob-type", + "in": "header", + "description": "The type of the blob.", + "required": true, + "type": "string", + "enum": [ + "BlockBlob" + ], + "x-ms-enum": { + "modelAsString": false + }, + "x-ms-client-name": "blobType" + }, + { + "name": "x-ms-file-request-intent", + "in": "header", + "description": "Valid value is backup", + "required": false, + "type": "string", + "enum": [ + "backup" + ], + "x-ms-enum": { + "name": "FileShareTokenIntent", + "modelAsString": true, + "values": [ + { + "name": "Backup", + "value": "backup", + "description": "The file share token intent is backup." + } + ] + }, + "x-ms-client-name": "fileRequestIntent" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=block": { + "put": { + "operationId": "BlockBlob_StageBlock", + "description": "The Stage Block operation creates a new block to be committed as part of a blob", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/octet-stream" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "blockid", + "in": "query", + "description": "A valid Base64 string value that identifies the block. Prior to encoding, the string must be less than or equal to 64 bytes in size. For a given blob, the length of the value specified for the blockid parameter must be the same size for each block.", + "required": true, + "type": "string", + "format": "base64", + "x-ms-client-name": "blockId" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "x-ms-content-crc64", + "in": "header", + "description": "Specify the transactional crc64 for the body, to be validated by the service.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentCrc64" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-structured-body", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the message schema version and properties.", + "required": false, + "type": "string", + "x-ms-client-name": "structuredBodyType" + }, + { + "name": "x-ms-structured-content-length", + "in": "header", + "description": "Required if the request body is a structured message. Specifies the length of the blob/file content inside the message body. Will always be smaller than Content-Length.", + "required": false, + "type": "integer", + "format": "int64", + "x-ms-client-name": "structuredContentLength" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "body", + "in": "body", + "description": "The body of the request.", + "required": true, + "schema": { + "type": "string", + "format": "binary" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-structured-body": { + "type": "string", + "description": "Indicates the response body contains a structured message and specifies the message schema version and properties." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=block&fromURL": { + "put": { + "operationId": "BlockBlob_StageBlockFromUrl", + "description": "The Stage Block From URL operation creates a new block to be committed as part of a blob where the contents are read from a URL.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "blockid", + "in": "query", + "description": "A valid Base64 string value that identifies the block. Prior to encoding, the string must be less than or equal to 64 bytes in size. For a given blob, the length of the value specified for the blockid parameter must be the same size for each block.", + "required": true, + "type": "string", + "format": "base64", + "x-ms-client-name": "blockId" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "x-ms-copy-source", + "in": "header", + "description": "Specify a URL to the copy source.", + "required": true, + "type": "string", + "x-ms-client-name": "sourceUrl" + }, + { + "name": "x-ms-source-range", + "in": "header", + "description": "Bytes of source data in the specified range.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceRange" + }, + { + "name": "x-ms-source-content-md5", + "in": "header", + "description": "Specify the md5 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentMd5" + }, + { + "name": "x-ms-source-content-crc64", + "in": "header", + "description": "Specify the crc64 calculated for the range of bytes that must be read from the copy source.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "sourceContentCrc64" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-source-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfModifiedSince" + }, + { + "name": "x-ms-source-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "sourceIfUnmodifiedSince" + }, + { + "name": "x-ms-source-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfMatch" + }, + { + "name": "x-ms-source-if-none-match", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "x-ms-client-name": "sourceIfNoneMatch" + }, + { + "name": "x-ms-copy-source-authorization", + "in": "header", + "description": "Only Bearer type is supported. Credentials should be a valid OAuth access token to copy source.", + "required": false, + "type": "string", + "x-ms-client-name": "copySourceAuthorization" + }, + { + "name": "x-ms-file-request-intent", + "in": "header", + "description": "Valid value is backup", + "required": false, + "type": "string", + "enum": [ + "backup" + ], + "x-ms-enum": { + "name": "FileShareTokenIntent", + "modelAsString": true, + "values": [ + { + "name": "Backup", + "value": "backup", + "description": "The file share token intent is backup." + } + ] + }, + "x-ms-client-name": "fileRequestIntent" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=blocklist": { + "put": { + "operationId": "BlockBlob_CommitBlockList", + "description": "The Commit Block List operation writes a blob by specifying the list of block IDs that make up the blob. In order to be written as part of a blob, a block must have been successfully written to the server in a prior Put Block operation. You can call Put Block List to update a blob by uploading only those blocks that have changed, then committing the new and existing blocks together. You can do this by specifying whether to commit a block from the committed block list or from the uncommitted block list, or to commit the most recently uploaded version of the block, whichever list it may belong to.", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-blob-cache-control", + "in": "header", + "description": "Optional. Sets the blob's cache control. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobCacheControl" + }, + { + "name": "x-ms-blob-content-type", + "in": "header", + "description": "Optional. Sets the blob's content type. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentType" + }, + { + "name": "x-ms-blob-content-encoding", + "in": "header", + "description": "Optional. Sets the blob's content encoding. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentEncoding" + }, + { + "name": "x-ms-blob-content-language", + "in": "header", + "description": "Optional. Set the blob's content language. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentLanguage" + }, + { + "name": "x-ms-blob-content-md5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "blobContentMd5" + }, + { + "name": "Content-MD5", + "in": "header", + "description": "Optional. An MD5 hash of the blob content. Note that this hash is not validated, as the hashes for the individual blocks were validated when each was uploaded.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentMD5" + }, + { + "name": "x-ms-content-crc64", + "in": "header", + "description": "Specify the transactional crc64 for the body, to be validated by the service.", + "required": false, + "type": "string", + "format": "byte", + "x-ms-client-name": "transactionalContentCrc64" + }, + { + "name": "x-ms-meta", + "in": "header", + "description": "The metadata headers.", + "required": false, + "type": "string", + "x-ms-client-name": "metadata" + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-blob-content-disposition", + "in": "header", + "description": "Optional. Sets the blob's content disposition. If specified, this property is stored with the blob and returned with a read request.", + "required": false, + "type": "string", + "x-ms-client-name": "blobContentDisposition" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "x-ms-encryption-scope", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption scope to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionScope" + }, + { + "name": "x-ms-access-tier", + "in": "header", + "description": "The tier to be set on the blob.", + "required": false, + "type": "string", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80", + "Hot", + "Cool", + "Archive", + "Premium", + "Cold" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The hot P4 tier." + }, + { + "name": "P6", + "value": "P6", + "description": "The hot P6 tier." + }, + { + "name": "P10", + "value": "P10", + "description": "The hot P10 tier." + }, + { + "name": "P15", + "value": "P15", + "description": "The hot P15 tier." + }, + { + "name": "P20", + "value": "P20", + "description": "The hot P20 tier." + }, + { + "name": "P30", + "value": "P30", + "description": "The hot P30 tier." + }, + { + "name": "P40", + "value": "P40", + "description": "The hot P40 tier." + }, + { + "name": "P50", + "value": "P50", + "description": "The hot P50 tier." + }, + { + "name": "P60", + "value": "P60", + "description": "The hot P60 tier." + }, + { + "name": "P70", + "value": "P70", + "description": "The hot P70 tier." + }, + { + "name": "P80", + "value": "P80", + "description": "The hot P80 tier." + }, + { + "name": "Hot", + "value": "Hot", + "description": "The hot access tier." + }, + { + "name": "Cool", + "value": "Cool", + "description": "The cool access tier." + }, + { + "name": "Archive", + "value": "Archive", + "description": "The archive access tier." + }, + { + "name": "Premium", + "value": "Premium", + "description": "The Premium access tier." + }, + { + "name": "Cold", + "value": "Cold", + "description": "The Cold access tier." + } + ] + }, + "x-ms-client-name": "tier" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-tags", + "in": "header", + "description": "Optional. Used to set blob tags in various blob operations.", + "required": false, + "type": "string", + "x-ms-client-name": "BlobTagsString" + }, + { + "name": "x-ms-immutability-policy-until-date", + "in": "header", + "description": "Specifies the date time when the blobs immutability policy is set to expire.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "immutabilityPolicyExpiry" + }, + { + "name": "x-ms-immutability-policy-mode", + "in": "header", + "description": "Specifies the immutability policy mode to set on the blob.", + "required": false, + "type": "string", + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + }, + "x-ms-client-name": "immutabilityPolicyMode" + }, + { + "name": "x-ms-legal-hold", + "in": "header", + "description": "Specified if a legal hold should be set on the blob.", + "required": false, + "type": "boolean", + "x-ms-client-name": "legalHold" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "blocks", + "in": "body", + "description": "Blob Blocks.", + "required": true, + "schema": { + "$ref": "#/definitions/BlockLookupList" + } + } + ], + "responses": { + "201": { + "description": "The request has succeeded and a new resource has been created as a result.", + "headers": { + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-request-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + }, + "x-ms-version-id": { + "type": "string", + "description": "A DateTime value returned by the service that uniquely identifies the blob. The value of this header indicates the blob version, and may be used in subsequent requests to access this version of the blob." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=blocklist&_overload=getBlockList": { + "get": { + "operationId": "BlockBlob_GetBlockList", + "description": "The Get Block List operation retrieves the list of blocks that have been uploaded as part of a block blob.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "blocklisttype", + "in": "query", + "description": "Specifies whether to return the list of committed blocks, the list of uncommitted blocks, or both lists together.", + "required": true, + "type": "string", + "enum": [ + "committed", + "uncommitted", + "all" + ], + "x-ms-enum": { + "name": "BlockListType", + "modelAsString": false, + "values": [ + { + "name": "Committed", + "value": "committed", + "description": "The list of committed blocks." + }, + { + "name": "Uncommitted", + "value": "uncommitted", + "description": "The list of uncommitted blocks." + }, + { + "name": "All", + "value": "all", + "description": "Both lists together." + } + ] + }, + "x-ms-client-name": "listType" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/BlockList" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-content-length": { + "type": "integer", + "format": "int64", + "description": "The size of the blob in bytes." + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/{containerName}/{blobName}?comp=query": { + "post": { + "operationId": "BlockBlob_Query", + "description": "The Query operation enables users to select/project on blob data by providing simple query expressions.", + "produces": [ + "application/octet-stream", + "application/xml" + ], + "consumes": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "containerName", + "in": "path", + "description": "The name of the container.", + "required": true, + "type": "string" + }, + { + "name": "blobName", + "in": "path", + "description": "The name of the blob.", + "required": true, + "type": "string", + "minLength": 1, + "maxLength": 1024, + "pattern": "^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\\.[a-zA-Z0-9]+){0,1}$" + }, + { + "name": "snapshot", + "in": "query", + "description": "The snapshot parameter is an opaque DateTime value that, when present, specifies the blob snapshot to retrieve. For more information on working with blob snapshots, see Creating a Snapshot of a Blob.", + "required": false, + "type": "string" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-lease-id", + "in": "header", + "description": "If specified, the operation only succeeds if the resource's lease is active and matches this ID.", + "required": false, + "type": "string", + "x-ms-client-name": "leaseId" + }, + { + "name": "x-ms-encryption-key", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the encryption key to use to encrypt the data provided in the request. If not specified, the request will be encrypted with the root account key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKey" + }, + { + "name": "x-ms-encryption-key-sha256", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the SHA256 hash of the encryption key used to encrypt the data provided in the request. This header is only used for encryption with a customer-provided key. If the request is authenticated with a client token, this header should be specified using the SHA256 hash of the encryption key.", + "required": false, + "type": "string", + "x-ms-client-name": "encryptionKeySha256" + }, + { + "name": "x-ms-encryption-algorithm", + "in": "header", + "description": "Optional. Version 2019-07-07 and later. Specifies the algorithm to use for encryption. If not specified, the default is AES256.", + "required": false, + "type": "string", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + }, + "x-ms-client-name": "encryptionAlgorithm" + }, + { + "name": "If-Modified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "If-Unmodified-Since", + "in": "header", + "description": "A date-time value. A request is made under the condition that the resource has not been modified since the specified date-time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "If-None-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, + { + "name": "If-Match", + "in": "header", + "description": "A condition that must be met in order for the request to be processed.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-if-tags", + "in": "header", + "description": "Specify a SQL where clause on blob tags to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifTags" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "queryRequest", + "in": "body", + "description": "The query request", + "required": true, + "schema": { + "$ref": "#/definitions/QueryRequest" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "file" + }, + "headers": { + "Accept-Ranges": { + "type": "string", + "description": "Indicates that the service supports requests for partial blob content." + }, + "Cache-Control": { + "type": "string", + "description": "This header is returned if it was previously specified for the blob." + }, + "Content-Disposition": { + "type": "string", + "description": "This header returns the value that was specified for the 'x-ms-blob-content-disposition' header. The Content-Disposition response header field conveys additional information about how to process the response payload, and also can be used to attach additional metadata. For example, if set to attachment, it indicates that the user-agent should not display the response, but instead show a Save As dialog with a filename other than the blob name specified." + }, + "Content-Encoding": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Encoding request header" + }, + "Content-Language": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Language request header." + }, + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The number of bytes present in the response body." + }, + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Content-Range": { + "type": "string", + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the blob by setting the 'Range' request header." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-committed-block-count": { + "type": "integer", + "format": "int32", + "description": "The number of committed blocks present in the blob. This header is returned only for append blobs." + }, + "x-ms-blob-content-md5": { + "type": "string", + "format": "byte", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-blob-type": { + "type": "string", + "description": "The type of the blob.", + "enum": [ + "BlockBlob", + "PageBlob", + "AppendBlob" + ], + "x-ms-enum": { + "name": "BlobType", + "modelAsString": false, + "values": [ + { + "name": "BlockBlob", + "value": "BlockBlob", + "description": "The blob is a block blob." + }, + { + "name": "PageBlob", + "value": "PageBlob", + "description": "The blob is a page blob." + }, + { + "name": "AppendBlob", + "value": "AppendBlob", + "description": "The blob is an append blob." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-copy-completion-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Conclusion time of the last attempted Copy Blob operation where this blob was the destination blob. This value can specify the time of a completed, aborted, or failed copy attempt. This header does not appear if a copy is pending, if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-progress": { + "type": "string", + "description": "Contains the number of bytes copied and the total bytes in the source in the last attempted Copy Blob operation where this blob was the destination blob. Can show between 0 and Content-Length bytes copied. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-copy-source": { + "type": "string", + "description": "URL up to 2 KB in length that specifies the source blob or file used in the last attempted Copy Blob operation where this blob was the destination blob. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "x-ms-copy-status-description": { + "type": "string", + "description": "Only appears when x-ms-copy-status is failed or pending. Describes the cause of the last fatal or non-fatal copy operation failure. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-lease-duration": { + "type": "string", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "enum": [ + "infinite", + "fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": false, + "values": [ + { + "name": "Infinite", + "value": "infinite", + "description": "The lease is of infinite duration." + }, + { + "name": "Fixed", + "value": "fixed", + "description": "The lease is of fixed duration." + } + ] + } + }, + "x-ms-lease-state": { + "type": "string", + "description": "Lease state of the blob.", + "enum": [ + "available", + "leased", + "expired", + "breaking", + "broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": false, + "values": [ + { + "name": "Available", + "value": "available", + "description": "The lease is available." + }, + { + "name": "Leased", + "value": "leased", + "description": "The lease is currently leased." + }, + { + "name": "Expired", + "value": "expired", + "description": "The lease is expired." + }, + { + "name": "Breaking", + "value": "breaking", + "description": "The lease is breaking." + }, + { + "name": "Broken", + "value": "broken", + "description": "The lease is broken." + } + ] + } + }, + "x-ms-lease-status": { + "type": "string", + "description": "The lease status of the blob.", + "enum": [ + "unlocked", + "locked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": false, + "values": [ + { + "name": "Unlocked", + "value": "unlocked", + "description": "The lease is unlocked." + }, + { + "name": "Locked", + "value": "locked", + "description": "The lease is locked." + } + ] + } + }, + "x-ms-meta": { + "type": "string", + "description": "The metadata headers." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "206": { + "description": "Successful", + "schema": { + "type": "file" + }, + "headers": { + "Accept-Ranges": { + "type": "string", + "description": "Indicates that the service supports requests for partial blob content." + }, + "Cache-Control": { + "type": "string", + "description": "This header is returned if it was previously specified for the blob." + }, + "Content-Disposition": { + "type": "string", + "description": "This header returns the value that was specified for the 'x-ms-blob-content-disposition' header. The Content-Disposition response header field conveys additional information about how to process the response payload, and also can be used to attach additional metadata. For example, if set to attachment, it indicates that the user-agent should not display the response, but instead show a Save As dialog with a filename other than the blob name specified." + }, + "Content-Encoding": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Encoding request header" + }, + "Content-Language": { + "type": "string", + "description": "This header returns the value that was specified for the Content-Language request header." + }, + "Content-Length": { + "type": "integer", + "format": "int64", + "description": "The number of bytes present in the response body." + }, + "Content-MD5": { + "type": "string", + "format": "byte", + "description": "If the blob has an MD5 hash and this operation is to read the full blob, this response header is returned so that the client can check for message content integrity." + }, + "Content-Range": { + "type": "string", + "description": "Indicates the range of bytes returned in the event that the client requested a subset of the blob by setting the 'Range' request header." + }, + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "ETag": { + "type": "string", + "description": "The ETag contains a value that you can use to perform operations conditionally." + }, + "Last-Modified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date/time that the container was last modified." + }, + "x-ms-blob-committed-block-count": { + "type": "integer", + "format": "int32", + "description": "The number of committed blocks present in the blob. This header is returned only for append blobs." + }, + "x-ms-blob-content-md5": { + "type": "string", + "format": "byte", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-blob-sequence-number": { + "type": "integer", + "format": "int64", + "description": "The current sequence number for a page blob. This header is not returned for block blobs or append blobs." + }, + "x-ms-blob-type": { + "type": "string", + "description": "The type of the blob.", + "enum": [ + "BlockBlob", + "PageBlob", + "AppendBlob" + ], + "x-ms-enum": { + "name": "BlobType", + "modelAsString": false, + "values": [ + { + "name": "BlockBlob", + "value": "BlockBlob", + "description": "The blob is a block blob." + }, + { + "name": "PageBlob", + "value": "PageBlob", + "description": "The blob is a page blob." + }, + { + "name": "AppendBlob", + "value": "AppendBlob", + "description": "The blob is an append blob." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-content-crc64": { + "type": "string", + "format": "byte", + "description": "This response header is returned so that the client can check for the integrity of the copied content." + }, + "x-ms-copy-completion-time": { + "type": "string", + "format": "date-time-rfc7231", + "description": "Conclusion time of the last attempted Copy Blob operation where this blob was the destination blob. This value can specify the time of a completed, aborted, or failed copy attempt. This header does not appear if a copy is pending, if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-id": { + "type": "string", + "description": "String identifier for this copy operation. Use with Get Blob Properties to check the status of this copy operation, or pass to Abort Copy Blob to abort a pending copy." + }, + "x-ms-copy-progress": { + "type": "string", + "description": "Contains the number of bytes copied and the total bytes in the source in the last attempted Copy Blob operation where this blob was the destination blob. Can show between 0 and Content-Length bytes copied. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-copy-source": { + "type": "string", + "description": "URL up to 2 KB in length that specifies the source blob or file used in the last attempted Copy Blob operation where this blob was the destination blob. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List." + }, + "x-ms-copy-status": { + "type": "string", + "description": "State of the copy operation identified by x-ms-copy-id.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "x-ms-copy-status-description": { + "type": "string", + "description": "Only appears when x-ms-copy-status is failed or pending. Describes the cause of the last fatal or non-fatal copy operation failure. This header does not appear if this blob has never been the destination in a Copy Blob operation, or if this blob has been modified after a concluded Copy Blob operation using Set Blob Properties, Put Blob, or Put Block List" + }, + "x-ms-encryption-key-sha256": { + "type": "string", + "description": "The SHA-256 hash of the encryption key used to encrypt the blob. This header is only returned when the blob was encrypted with a customer-provided key." + }, + "x-ms-encryption-scope": { + "type": "string", + "description": "If the blob has a MD5 hash, and if request contains range header (Range or x-ms-range), this response header is returned with the value of the whole blob's MD5 value. This value may or may not be equal to the value returned in Content-MD5 header, with the latter calculated from the requested range" + }, + "x-ms-lease-duration": { + "type": "string", + "description": "Specifies the duration of the lease, in seconds, or negative one (-1) for a lease that never expires. A non-infinite lease can be between 15 and 60 seconds. A lease duration cannot be changed using renew or change.", + "enum": [ + "infinite", + "fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": false, + "values": [ + { + "name": "Infinite", + "value": "infinite", + "description": "The lease is of infinite duration." + }, + { + "name": "Fixed", + "value": "fixed", + "description": "The lease is of fixed duration." + } + ] + } + }, + "x-ms-lease-state": { + "type": "string", + "description": "Lease state of the blob.", + "enum": [ + "available", + "leased", + "expired", + "breaking", + "broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": false, + "values": [ + { + "name": "Available", + "value": "available", + "description": "The lease is available." + }, + { + "name": "Leased", + "value": "leased", + "description": "The lease is currently leased." + }, + { + "name": "Expired", + "value": "expired", + "description": "The lease is expired." + }, + { + "name": "Breaking", + "value": "breaking", + "description": "The lease is breaking." + }, + { + "name": "Broken", + "value": "broken", + "description": "The lease is broken." + } + ] + } + }, + "x-ms-lease-status": { + "type": "string", + "description": "The lease status of the blob.", + "enum": [ + "unlocked", + "locked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": false, + "values": [ + { + "name": "Unlocked", + "value": "unlocked", + "description": "The lease is unlocked." + }, + { + "name": "Locked", + "value": "locked", + "description": "The lease is locked." + } + ] + } + }, + "x-ms-meta": { + "type": "string", + "description": "The metadata headers." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-server-encrypted": { + "type": "boolean", + "description": "The value of this header is set to true if the contents of the request are successfully encrypted using the specified algorithm, and false otherwise." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?comp=batch": { + "post": { + "operationId": "SubmitBatch", + "description": "The Batch operation allows multiple API calls to be embedded into a single HTTP request.", + "produces": [ + "multipart/mixed", + "application/xml" + ], + "consumes": [ + "multipart/mixed" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "Content-Length", + "in": "header", + "description": "The length of the request.", + "required": true, + "type": "integer", + "format": "int64", + "x-ms-client-name": "contentLength" + }, + { + "name": "name", + "in": "formData", + "required": true, + "type": "string" + }, + { + "name": "body", + "in": "formData", + "required": true, + "type": "file" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "type": "string" + }, + "headers": { + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?comp=blobs": { + "get": { + "operationId": "FilterBlobs", + "description": "The Filter Blobs operation enables callers to list blobs across all containers whose tags match a given search expression.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "where", + "in": "query", + "description": "Filters the results to return only to return only blobs whose tags match the specified expression.", + "required": false, + "type": "string" + }, + { + "name": "marker", + "in": "query", + "description": "A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client.", + "required": false, + "type": "string" + }, + { + "name": "maxresults", + "in": "query", + "description": "Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1 + }, + { + "name": "include", + "in": "query", + "description": "Include this parameter to specify one or more datasets to include in the response.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "none", + "versions" + ], + "x-ms-enum": { + "name": "FilterBlobsIncludeItem", + "modelAsString": false, + "values": [ + { + "name": "None", + "value": "none", + "description": "The filter includes no versions." + }, + { + "name": "Versions", + "value": "versions", + "description": "The filter includes n versions." + } + ] + } + }, + "collectionFormat": "csv" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/FilterBlobSegment" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?comp=list": { + "get": { + "operationId": "ListContainersSegment", + "description": "The List Containers Segment operation returns a list of the containers under the specified account", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "prefix", + "in": "query", + "description": "Filters the results to return only containers whose name begins with the specified prefix.", + "required": false, + "type": "string" + }, + { + "name": "marker", + "in": "query", + "description": "A string value that identifies the portion of the list of containers to be returned with the next listing operation. The operation returns the NextMarker value within the response body if the listing operation did not return all containers remaining to be listed with the current page. The NextMarker value can be used as the value for the marker parameter in a subsequent call to request the next page of list items. The marker value is opaque to the client.", + "required": false, + "type": "string" + }, + { + "name": "maxresults", + "in": "query", + "description": "Specifies the maximum number of containers to return. If the request does not specify maxresults, or specifies a value greater than 5000, the server will return up to 5000 items.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 1 + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "include", + "in": "query", + "description": "Include this parameter to specify that the container's metadata be returned as part of the response body.", + "required": false, + "type": "array", + "items": { + "type": "string", + "enum": [ + "metadata", + "deleted", + "system" + ], + "x-ms-enum": { + "name": "ListContainersIncludeType", + "modelAsString": false, + "values": [ + { + "name": "metadata", + "value": "metadata", + "description": "Include metadata" + }, + { + "name": "deleted", + "value": "deleted", + "description": "Include deleted" + }, + { + "name": "system", + "value": "system", + "description": "Include system" + } + ] + } + }, + "collectionFormat": "csv" + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/ListContainersSegmentResponse" + }, + "headers": { + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?restype=account&comp=properties": { + "get": { + "operationId": "GetAccountInfo", + "description": "Returns the sku name and account kind.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-account-kind": { + "type": "string", + "description": "Identifies the account kind", + "enum": [ + "Storage", + "BlobStorage", + "StorageV2", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "AccountKind", + "modelAsString": false, + "values": [ + { + "name": "Storage", + "value": "Storage", + "description": "The storage account is a general-purpose account." + }, + { + "name": "BlobStorage", + "value": "BlobStorage", + "description": "The storage account is a blob storage account." + }, + { + "name": "StorageV2", + "value": "StorageV2", + "description": "The storage account is a storage V2 account." + }, + { + "name": "FileStorage", + "value": "FileStorage", + "description": "The storage account is a file storage account." + }, + { + "name": "BlockBlobStorage", + "value": "BlockBlobStorage", + "description": "The storage account is a block blob storage account." + } + ] + } + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-is-hns-enabled": { + "type": "boolean", + "description": "Version 2019-07-07 and newer. Indicates if the account has a hierarchical namespace enabled." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-sku-name": { + "type": "string", + "description": "Identifies the sku name of the account", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": false, + "values": [ + { + "name": "StandardLRS", + "value": "Standard_LRS", + "description": "The standard LRS SKU." + }, + { + "name": "StandardGRS", + "value": "Standard_GRS", + "description": "The standard GRS SKU." + }, + { + "name": "StandardRAGRS", + "value": "Standard_RAGRS", + "description": "The standard RAGRS SKU." + }, + { + "name": "StandardZRS", + "value": "Standard_ZRS", + "description": "The standard ZRS SKU." + }, + { + "name": "PremiumLRS", + "value": "Premium_LRS", + "description": "The premium LRS SKU." + } + ] + } + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?restype=service&comp=properties": { + "put": { + "operationId": "SetProperties", + "description": "Sets properties for a storage account's Blob service endpoint, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "storageServiceProperties", + "in": "body", + "description": "The storage service properties to set.", + "required": true, + "schema": { + "$ref": "#/definitions/StorageServiceProperties" + } + } + ], + "responses": { + "202": { + "description": "The request has been accepted for processing, but processing has not yet completed.", + "headers": { + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?restype=service&comp=properties&_overload=getProperties": { + "get": { + "operationId": "GetProperties", + "description": "Retrieves properties of a storage account's Blob service, including properties for Storage Analytics and CORS (Cross-Origin Resource Sharing) rules.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/StorageServiceProperties" + }, + "headers": { + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?restype=service&comp=stats": { + "get": { + "operationId": "GetStatistics", + "description": "Retrieves statistics related to replication for the Blob service. It is only available on the secondary location endpoint when read-access geo-redundant replication is enabled for the storage account.", + "produces": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/StorageServiceStats" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + }, + "/?restype=service&comp=userdelegationkey": { + "post": { + "operationId": "GetUserDelegationKey", + "description": "Retrieves a user delegation key for the Blob service. This is only a valid operation when using bearer token authentication.", + "produces": [ + "application/xml" + ], + "consumes": [ + "application/xml" + ], + "parameters": [ + { + "name": "x-ms-version", + "in": "header", + "description": "Specifies the version of the operation to use for this request.", + "required": true, + "type": "string", + "x-ms-client-name": "version" + }, + { + "name": "timeout", + "in": "query", + "description": "The timeout parameter is expressed in seconds. For more information, see Setting Timeouts for Blob Service Operations.", + "required": false, + "type": "integer", + "format": "int32", + "minimum": 0 + }, + { + "name": "x-ms-client-request-id", + "in": "header", + "description": "An opaque, globally-unique, client-generated string identifier for the request.", + "required": false, + "type": "string", + "format": "uuid", + "x-ms-client-name": "clientRequestId" + }, + { + "name": "keyInfo", + "in": "body", + "description": "Key information provided in the request", + "required": true, + "schema": { + "$ref": "#/definitions/KeyInfo" + } + } + ], + "responses": { + "200": { + "description": "The request has succeeded.", + "schema": { + "$ref": "#/definitions/UserDelegationKey" + }, + "headers": { + "Date": { + "type": "string", + "format": "date-time-rfc7231", + "description": "UTC date/time value generated by the service that indicates the time at which the response was initiated" + }, + "x-ms-client-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, client-generated string identifier for the request." + }, + "x-ms-request-id": { + "type": "string", + "format": "uuid", + "description": "An opaque, globally-unique, server-generated string identifier for the request." + }, + "x-ms-version": { + "type": "string", + "description": "Specifies the version of the operation to use for this request." + } + } + }, + "default": { + "description": "An unexpected error response.", + "schema": { + "$ref": "#/definitions/StorageError" + }, + "headers": { + "x-ms-copy-source-error-code": { + "type": "string", + "description": "The error code for the copy source." + }, + "x-ms-copy-source-status-code": { + "type": "integer", + "format": "int32", + "description": "The status code for the copy source." + }, + "x-ms-error-code": { + "type": "string", + "description": "The error code." + } + } + } + } + } + } + }, + "definitions": { + "AccessPolicy": { + "type": "object", + "description": "Represents an access policy.", + "properties": { + "start": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date-time the policy is active." + }, + "expiry": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date-time the policy expires." + }, + "permission": { + "type": "string", + "description": "The permissions for acl the policy." + } + }, + "required": [ + "start", + "expiry", + "permission" + ] + }, + "AccessTier": { + "type": "string", + "description": "The access tiers.", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80", + "Hot", + "Cool", + "Archive", + "Premium", + "Cold" + ], + "x-ms-enum": { + "name": "AccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The hot P4 tier." + }, + { + "name": "P6", + "value": "P6", + "description": "The hot P6 tier." + }, + { + "name": "P10", + "value": "P10", + "description": "The hot P10 tier." + }, + { + "name": "P15", + "value": "P15", + "description": "The hot P15 tier." + }, + { + "name": "P20", + "value": "P20", + "description": "The hot P20 tier." + }, + { + "name": "P30", + "value": "P30", + "description": "The hot P30 tier." + }, + { + "name": "P40", + "value": "P40", + "description": "The hot P40 tier." + }, + { + "name": "P50", + "value": "P50", + "description": "The hot P50 tier." + }, + { + "name": "P60", + "value": "P60", + "description": "The hot P60 tier." + }, + { + "name": "P70", + "value": "P70", + "description": "The hot P70 tier." + }, + { + "name": "P80", + "value": "P80", + "description": "The hot P80 tier." + }, + { + "name": "Hot", + "value": "Hot", + "description": "The hot access tier." + }, + { + "name": "Cool", + "value": "Cool", + "description": "The cool access tier." + }, + { + "name": "Archive", + "value": "Archive", + "description": "The archive access tier." + }, + { + "name": "Premium", + "value": "Premium", + "description": "The Premium access tier." + }, + { + "name": "Cold", + "value": "Cold", + "description": "The Cold access tier." + } + ] + } + }, + "AccountKind": { + "type": "string", + "description": "The account kind.", + "enum": [ + "Storage", + "BlobStorage", + "StorageV2", + "FileStorage", + "BlockBlobStorage" + ], + "x-ms-enum": { + "name": "AccountKind", + "modelAsString": false, + "values": [ + { + "name": "Storage", + "value": "Storage", + "description": "The storage account is a general-purpose account." + }, + { + "name": "BlobStorage", + "value": "BlobStorage", + "description": "The storage account is a blob storage account." + }, + { + "name": "StorageV2", + "value": "StorageV2", + "description": "The storage account is a storage V2 account." + }, + { + "name": "FileStorage", + "value": "FileStorage", + "description": "The storage account is a file storage account." + }, + { + "name": "BlockBlobStorage", + "value": "BlockBlobStorage", + "description": "The storage account is a block blob storage account." + } + ] + } + }, + "ArchiveStatus": { + "type": "string", + "description": "The archive status.", + "enum": [ + "rehydrate-pending-to-hot", + "rehydrate-pending-to-cool", + "rehydrate-pending-to-cold" + ], + "x-ms-enum": { + "name": "ArchiveStatus", + "modelAsString": true, + "values": [ + { + "name": "RehydratePendingToHot", + "value": "rehydrate-pending-to-hot", + "description": "The archive status is rehydrating pending to hot." + }, + { + "name": "RehydratePendingToCool", + "value": "rehydrate-pending-to-cool", + "description": "The archive status is rehydrating pending to cool." + }, + { + "name": "RehydratePendingToCold", + "value": "rehydrate-pending-to-cold", + "description": "The archive status is rehydrating pending to archive." + } + ] + } + }, + "ArrowConfiguration": { + "type": "object", + "description": "Represents the Apache Arrow configuration.", + "properties": { + "schema": { + "type": "array", + "description": "The Apache Arrow schema", + "items": { + "$ref": "#/definitions/ArrowField" + } + } + }, + "required": [ + "schema" + ] + }, + "ArrowField": { + "type": "object", + "description": "Represents an Apache Arrow field.", + "properties": { + "type": { + "type": "string", + "description": "The arrow field type." + }, + "name": { + "type": "string", + "description": "The arrow field name." + }, + "precision": { + "type": "integer", + "format": "int32", + "description": "The arrow field precision." + }, + "scale": { + "type": "integer", + "format": "int32", + "description": "The arrow field scale." + } + }, + "required": [ + "type" + ] + }, + "Azure.Core.uuid": { + "type": "string", + "format": "uuid", + "description": "Universally Unique Identifier" + }, + "BlobCopySourceTags": { + "type": "string", + "description": "The blob copy source tags types.", + "enum": [ + "REPLACE", + "COPY" + ], + "x-ms-enum": { + "name": "BlobCopySourceTags", + "modelAsString": false, + "values": [ + { + "name": "Replace", + "value": "REPLACE", + "description": "The replace blob source tags option." + }, + { + "name": "Copy", + "value": "COPY", + "description": "The copy blob source tags option." + } + ] + } + }, + "BlobDeleteType": { + "type": "string", + "description": "The type of blob deletions.", + "enum": [ + "Permanent" + ], + "x-ms-enum": { + "name": "BlobDeleteType", + "modelAsString": false, + "values": [ + { + "name": "Permanent", + "value": "Permanent", + "description": "Permanently delete the blob." + } + ] + } + }, + "BlobExpiryOptions": { + "type": "string", + "description": "The blob expiration options.", + "enum": [ + "NeverExpire", + "RelativeToCreation", + "RelativeToNow", + "Absolute" + ], + "x-ms-enum": { + "name": "BlobExpiryOptions", + "modelAsString": true, + "values": [ + { + "name": "NeverExpire", + "value": "NeverExpire", + "description": "Never expire." + }, + { + "name": "RelativeToCreation", + "value": "RelativeToCreation", + "description": "Relative to creation time." + }, + { + "name": "RelativeToNow", + "value": "RelativeToNow", + "description": "Relative to now." + }, + { + "name": "Absolute", + "value": "Absolute", + "description": "Absolute time." + } + ] + } + }, + "BlobFlatListSegment": { + "type": "object", + "description": "The blob flat list segment.", + "properties": { + "blobItems": { + "type": "array", + "description": "The blob items.", + "items": { + "$ref": "#/definitions/BlobItemInternal" + } + } + }, + "required": [ + "blobItems" + ] + }, + "BlobHierarchyListSegment": { + "type": "object", + "description": "Represents an array of blobs.", + "properties": { + "blobItems": { + "type": "array", + "description": "The blob items", + "items": { + "$ref": "#/definitions/BlobItemInternal" + } + }, + "blobPrefixes": { + "type": "array", + "description": "The blob prefixes.", + "items": { + "$ref": "#/definitions/BlobPrefix" + } + } + }, + "required": [ + "blobItems" + ] + }, + "BlobImmutabilityPolicyMode": { + "type": "string", + "description": "The immutability policy mode.", + "enum": [ + "Mutable", + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "BlobImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Mutable", + "value": "Mutable", + "description": "The immutability policy is mutable." + }, + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + } + }, + "BlobItemInternal": { + "type": "object", + "description": "An Azure Storage Blob", + "properties": { + "name": { + "$ref": "#/definitions/BlobName", + "description": "The name of the blob." + }, + "deleted": { + "type": "boolean", + "description": "Whether the blob is deleted." + }, + "snapshot": { + "type": "string", + "description": "The snapshot of the blob." + }, + "versionId": { + "type": "string", + "description": "The version id of the blob." + }, + "isCurrentVersion": { + "type": "boolean", + "description": "Whether the blob is the current version." + }, + "properties": { + "$ref": "#/definitions/BlobPropertiesInternal", + "description": "The properties of the blob." + }, + "metadata": { + "$ref": "#/definitions/BlobMetadata", + "description": "The metadata of the blob." + }, + "blobTags": { + "$ref": "#/definitions/BlobTags", + "description": "The tags of the blob." + }, + "objectReplicationMetadata": { + "$ref": "#/definitions/ObjectReplicationMetadata", + "description": "The object replication metadata of the blob." + }, + "hasVersionsOnly": { + "type": "boolean", + "description": "Whether the blog has versions only." + } + }, + "required": [ + "name", + "deleted", + "snapshot", + "properties" + ] + }, + "BlobMetadata": { + "type": "object", + "description": "The blob metadata.", + "properties": { + "encrypted": { + "type": "string", + "description": "Whether the blob metadata is encrypted." + } + }, + "additionalProperties": { + "type": "string" + } + }, + "BlobName": { + "type": "object", + "description": "Represents a blob name.", + "properties": { + "encoded": { + "type": "boolean", + "description": "Whether the blob name is encoded." + }, + "content": { + "type": "string", + "description": "The blob name." + } + } + }, + "BlobPrefix": { + "type": "object", + "description": "Represents a blob prefix.", + "properties": { + "name": { + "$ref": "#/definitions/BlobName", + "description": "The blob name." + } + }, + "required": [ + "name" + ] + }, + "BlobPropertiesInternal": { + "type": "object", + "description": "The properties of a blob.", + "properties": { + "creationTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date-time the blob was created in RFC1123 format." + }, + "lastModified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date-time the blob was last modified in RFC1123 format." + }, + "eTag": { + "type": "string", + "description": "The blog ETag." + }, + "contentLength": { + "type": "integer", + "format": "int64", + "description": "The content length of the blob." + }, + "contentType": { + "type": "string", + "description": "The content type of the blob." + }, + "contentEncoding": { + "type": "string", + "description": "The content encoding of the blob." + }, + "contentLanguage": { + "type": "string", + "description": "The content language of the blob." + }, + "contentMd5": { + "type": "string", + "format": "byte", + "description": "The content MD5 of the blob." + }, + "contentDisposition": { + "type": "string", + "description": "The content disposition of the blob." + }, + "cacheControl": { + "type": "string", + "description": "The cache control of the blob." + }, + "blobSequenceNumber": { + "type": "integer", + "format": "int64", + "description": "The sequence number of the blob." + }, + "blobType": { + "$ref": "#/definitions/BlobType", + "description": "The blob type." + }, + "leaseStatus": { + "$ref": "#/definitions/LeaseStatus", + "description": "The lease status of the blob." + }, + "leaseState": { + "$ref": "#/definitions/LeaseState", + "description": "The lease state of the blob." + }, + "leaseDuration": { + "$ref": "#/definitions/LeaseDuration", + "description": "The lease duration of the blob." + }, + "copyId": { + "type": "string", + "description": "The copy ID of the blob." + }, + "copyStatus": { + "$ref": "#/definitions/CopyStatus", + "description": "The copy status of the blob." + }, + "copySource": { + "type": "string", + "description": "The copy source of the blob." + }, + "copyProgress": { + "type": "string", + "description": "The copy progress of the blob." + }, + "copyCompletionTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The copy completion time of the blob." + }, + "copyStatusDescription": { + "type": "string", + "description": "The copy status description of the blob." + }, + "serverEncrypted": { + "type": "boolean", + "description": "Whether the blog is encrypted on the server." + }, + "incrementalCopy": { + "type": "boolean", + "description": "Whether the blog is incremental copy." + }, + "destinationSnapshot": { + "type": "string", + "description": "The name of the destination snapshot." + }, + "deletedTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The time the blob was deleted." + }, + "remainingRetentionDays": { + "type": "integer", + "format": "int32", + "description": "The remaining retention days of the blob." + }, + "accessTier": { + "$ref": "#/definitions/AccessTier", + "description": "The access tier of the blob." + }, + "accessTierInferred": { + "type": "boolean", + "description": "Whether the access tier is inferred." + }, + "archiveStatus": { + "$ref": "#/definitions/ArchiveStatus", + "description": "The archive status of the blob." + }, + "customerProvidedKeySha256": { + "type": "string", + "description": "Customer provided key sha256" + }, + "encryptionScope": { + "type": "string", + "description": "The encryption scope of the blob." + }, + "accessTierChangeTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The access tier change time of the blob." + }, + "tagCount": { + "type": "integer", + "format": "int32", + "description": "The number of tags for the blob." + }, + "expiryTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The expire time of the blob." + }, + "sealed": { + "type": "boolean", + "description": "Whether the blob is sealed." + }, + "rehydratePriority": { + "$ref": "#/definitions/RehydratePriority", + "description": "The rehydrate priority of the blob." + }, + "lastAccessTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The last access time of the blob." + }, + "immutabilityPolicyUntilDate": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The immutability policy until time of the blob." + }, + "immutabilityPolicyMode": { + "$ref": "#/definitions/BlobImmutabilityPolicyMode", + "description": "The immutability policy mode of the blob." + }, + "legalHold": { + "type": "boolean", + "description": "Whether the blob is under legal hold." + } + }, + "required": [ + "lastModified", + "eTag" + ] + }, + "BlobTag": { + "type": "object", + "description": "The blob tags.", + "properties": { + "key": { + "type": "string", + "description": "The key of the tag." + }, + "value": { + "type": "string", + "description": "The value of the tag." + } + }, + "required": [ + "key", + "value" + ] + }, + "BlobTags": { + "type": "object", + "description": "Represents blob tags.", + "properties": { + "blobTagSet": { + "type": "array", + "description": "Represents the blob tags.", + "items": { + "$ref": "#/definitions/BlobTag" + } + } + }, + "required": [ + "blobTagSet" + ] + }, + "BlobType": { + "type": "string", + "description": "The blob type.", + "enum": [ + "BlockBlob", + "PageBlob", + "AppendBlob" + ], + "x-ms-enum": { + "name": "BlobType", + "modelAsString": false, + "values": [ + { + "name": "BlockBlob", + "value": "BlockBlob", + "description": "The blob is a block blob." + }, + { + "name": "PageBlob", + "value": "PageBlob", + "description": "The blob is a page blob." + }, + { + "name": "AppendBlob", + "value": "AppendBlob", + "description": "The blob is an append blob." + } + ] + } + }, + "Block": { + "type": "object", + "description": "Represents a single block in a block blob. It describes the block's ID and size.", + "properties": { + "name": { + "$ref": "#/definitions/base64Bytes", + "description": "The base64 encoded block ID." + }, + "size": { + "type": "integer", + "format": "int64", + "description": "The block size in bytes." + } + }, + "required": [ + "name", + "size" + ] + }, + "BlockList": { + "type": "object", + "description": "Contains the committed and uncommitted blocks in a block blob.", + "properties": { + "committedBlocks": { + "type": "array", + "description": "The list of committed blocks.", + "items": { + "$ref": "#/definitions/Block" + } + }, + "uncommittedBlocks": { + "type": "array", + "description": "The list of uncommitted blocks.", + "items": { + "$ref": "#/definitions/Block" + } + } + } + }, + "BlockListType": { + "type": "string", + "description": "The block list types.", + "enum": [ + "committed", + "uncommitted", + "all" + ], + "x-ms-enum": { + "name": "BlockListType", + "modelAsString": false, + "values": [ + { + "name": "Committed", + "value": "committed", + "description": "The list of committed blocks." + }, + { + "name": "Uncommitted", + "value": "uncommitted", + "description": "The list of uncommitted blocks." + }, + { + "name": "All", + "value": "all", + "description": "Both lists together." + } + ] + } + }, + "BlockLookupList": { + "type": "object", + "description": "The Block lookup list.", + "properties": { + "committed": { + "type": "array", + "description": "The committed blocks", + "items": { + "$ref": "#/definitions/base64Bytes" + } + }, + "uncommitted": { + "type": "array", + "description": "The uncommitted blocks", + "items": { + "$ref": "#/definitions/base64Bytes" + } + }, + "latest": { + "type": "array", + "description": "The latest blocks", + "items": { + "$ref": "#/definitions/base64Bytes" + } + } + } + }, + "ClearRange": { + "type": "object", + "description": "The clear range.", + "properties": { + "start": { + "type": "integer", + "format": "int64", + "description": "The start of the byte range." + }, + "end": { + "type": "integer", + "format": "int64", + "description": "The end of the byte range." + } + }, + "required": [ + "start", + "end" + ] + }, + "ContainerItem": { + "type": "object", + "description": "An Azure Storage container.", + "properties": { + "name": { + "type": "string", + "description": "The name of the container." + }, + "delete": { + "type": "boolean", + "description": "Whether the container is deleted." + }, + "version": { + "type": "string", + "description": "The version of the container." + }, + "properties": { + "$ref": "#/definitions/ContainerProperties", + "description": "The properties of the container." + }, + "metadata": { + "type": "object", + "description": "The metadata of the container.", + "additionalProperties": { + "type": "string" + } + } + }, + "required": [ + "name", + "properties" + ] + }, + "ContainerProperties": { + "type": "object", + "description": "The properties of a container.", + "properties": { + "lastModified": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The date-time the container was last modified in RFC1123 format." + }, + "eTag": { + "type": "string", + "description": "The ETag of the container." + }, + "leaseStatus": { + "$ref": "#/definitions/LeaseStatus", + "description": "The lease status of the container." + }, + "leaseState": { + "$ref": "#/definitions/LeaseState", + "description": "The lease state of the container." + }, + "leaseDuration": { + "$ref": "#/definitions/LeaseDuration", + "description": "The lease duration of the container." + }, + "publicAccess": { + "$ref": "#/definitions/PublicAccessType", + "description": "The public access type of the container." + }, + "hasImmutabilityPolicy": { + "type": "boolean", + "description": "Whether it has an immutability policy." + }, + "hasLegalHold": { + "type": "boolean", + "description": "The has legal hold status of the container." + }, + "defaultEncryptionScope": { + "type": "string", + "description": "The default encryption scope of the container." + }, + "denyEncryptionScopeOverride": { + "type": "boolean", + "description": "Whether to prevent encryption scope override." + }, + "deletedTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "The deleted time of the container." + }, + "remainingRetentionDays": { + "type": "integer", + "format": "int32", + "description": "The remaining retention days of the container." + }, + "immutableStorageWithVersioningEnabled": { + "type": "boolean", + "description": "Whether immutable storage with versioning is enabled." + } + }, + "required": [ + "lastModified", + "eTag" + ] + }, + "CopyStatus": { + "type": "string", + "description": "The copy status.", + "enum": [ + "pending", + "success", + "failed", + "aborted" + ], + "x-ms-enum": { + "name": "CopyStatus", + "modelAsString": false, + "values": [ + { + "name": "Pending", + "value": "pending", + "description": "The copy operation is pending." + }, + { + "name": "Success", + "value": "success", + "description": "The copy operation succeeded." + }, + { + "name": "Failed", + "value": "failed", + "description": "The copy operation failed." + }, + { + "name": "Aborted", + "value": "aborted", + "description": "The copy operation is aborted." + } + ] + } + }, + "CorsRule": { + "type": "object", + "description": "CORS is an HTTP feature that enables a web application running under one domain to access resources in another domain. Web browsers implement a security restriction known as same-origin policy that prevents a web page from calling APIs in a different domain; CORS provides a secure way to allow one domain (the origin domain) to call APIs in another domain", + "properties": { + "allowedOrigins": { + "type": "string", + "description": "The allowed origins." + }, + "allowedMethods": { + "type": "string", + "description": "The allowed methods." + }, + "allowedHeaders": { + "type": "string", + "description": "The allowed headers." + }, + "exposedHeaders": { + "type": "string", + "description": "The exposed headers." + }, + "maxAgeInSeconds": { + "type": "integer", + "format": "int32", + "description": "The maximum age in seconds.", + "minimum": 0 + } + }, + "required": [ + "allowedOrigins", + "allowedMethods", + "allowedHeaders", + "exposedHeaders", + "maxAgeInSeconds" + ] + }, + "DeleteSnapshotsOptionType": { + "type": "string", + "description": "The delete snapshots option type.", + "enum": [ + "only", + "include" + ], + "x-ms-enum": { + "name": "DeleteSnapshotsOptionType", + "modelAsString": false, + "values": [ + { + "name": "Only", + "value": "only", + "description": "The delete snapshots include option is only." + }, + { + "name": "Include", + "value": "include", + "description": "The delete snapshots include option is include." + } + ] + } + }, + "DelimitedTextConfiguration": { + "type": "object", + "description": "Represents the delimited text configuration.", + "properties": { + "columnSeparator": { + "type": "string", + "description": "The string used to separate columns." + }, + "fieldQuote": { + "type": "string", + "description": "The string used to quote a specific field." + }, + "recordSeparator": { + "type": "string", + "description": "The string used to separate records." + }, + "escapeChar": { + "type": "string", + "description": "The string used to escape a quote character in a field." + }, + "headersPresent": { + "type": "boolean", + "description": "Represents whether the data has headers." + } + } + }, + "EncryptionAlgorithmType": { + "type": "string", + "description": "The algorithm used to produce the encryption key hash. Currently, the only accepted value is \\\"AES256\\\". Must be provided if the x-ms-encryption-key header is provided.", + "enum": [ + "AES256" + ], + "x-ms-enum": { + "name": "EncryptionAlgorithmType", + "modelAsString": false, + "values": [ + { + "name": "AES256", + "value": "AES256", + "description": "The AES256 encryption algorithm." + } + ] + } + }, + "FileShareTokenIntent": { + "type": "string", + "description": "The file share token intent types.", + "enum": [ + "backup" + ], + "x-ms-enum": { + "name": "FileShareTokenIntent", + "modelAsString": true, + "values": [ + { + "name": "Backup", + "value": "backup", + "description": "The file share token intent is backup." + } + ] + } + }, + "FilterBlobItem": { + "type": "object", + "description": "The filter blob item.", + "properties": { + "name": { + "type": "string", + "description": "The name of the blob." + }, + "containerName": { + "type": "string", + "description": "The properties of the blob." + }, + "tags": { + "$ref": "#/definitions/BlobTags", + "description": "The metadata of the blob." + }, + "versionId": { + "type": "string", + "description": "The version ID of the blob." + }, + "isCurrentVersion": { + "type": "boolean", + "description": "Whether it is the current version of the blob" + } + }, + "required": [ + "name", + "containerName" + ] + }, + "FilterBlobSegment": { + "type": "object", + "description": "The result of a Filter Blobs API call", + "properties": { + "serviceEndpoint": { + "type": "string", + "description": "The service endpoint." + }, + "where": { + "type": "string", + "description": "The filter for the blobs." + }, + "blobs": { + "type": "array", + "description": "The blob segment.", + "items": { + "$ref": "#/definitions/FilterBlobItem" + } + }, + "nextMarker": { + "type": "string", + "description": "The next marker of the blobs." + } + }, + "required": [ + "serviceEndpoint", + "where", + "blobs" + ] + }, + "FilterBlobsIncludeItem": { + "type": "string", + "description": "The filter blobs includes.", + "enum": [ + "none", + "versions" + ], + "x-ms-enum": { + "name": "FilterBlobsIncludeItem", + "modelAsString": false, + "values": [ + { + "name": "None", + "value": "none", + "description": "The filter includes no versions." + }, + { + "name": "Versions", + "value": "versions", + "description": "The filter includes n versions." + } + ] + } + }, + "GeoReplication": { + "type": "object", + "description": "Geo-Replication information for the Secondary Storage Service", + "properties": { + "status": { + "$ref": "#/definitions/GeoReplicationStatusType", + "description": "The status of the secondary location" + }, + "lastSyncTime": { + "type": "string", + "format": "date-time-rfc7231", + "description": "A GMT date/time value, to the second. All primary writes preceding this value are guaranteed to be available for read operations at the secondary. Primary writes after this point in time may or may not be available for reads." + } + }, + "required": [ + "status", + "lastSyncTime" + ] + }, + "GeoReplicationStatusType": { + "type": "string", + "description": "The geo replication status.", + "enum": [ + "live", + "bootstrap", + "unavailable" + ], + "x-ms-enum": { + "name": "GeoReplicationStatusType", + "modelAsString": true, + "values": [ + { + "name": "Live", + "value": "live", + "description": "The geo replication is live." + }, + { + "name": "Bootstrap", + "value": "bootstrap", + "description": "The geo replication is bootstrap." + }, + { + "name": "Unavailable", + "value": "unavailable", + "description": "The geo replication is unavailable." + } + ] + } + }, + "ImmutabilityPolicyMode": { + "type": "string", + "description": "The immutability policy mode used in requests.", + "enum": [ + "Locked", + "Unlocked" + ], + "x-ms-enum": { + "name": "ImmutabilityPolicyMode", + "modelAsString": false, + "values": [ + { + "name": "Locked", + "value": "Locked", + "description": "The immutability policy is locked." + }, + { + "name": "Unlocked", + "value": "Unlocked", + "description": "The immutability policy is unlocked." + } + ] + } + }, + "JsonTextConfiguration": { + "type": "object", + "description": "Represents the JSON text configuration.", + "properties": { + "recordSeparator": { + "type": "string", + "description": "The string used to separate records." + } + } + }, + "KeyInfo": { + "type": "object", + "description": "Key information", + "properties": { + "start": { + "type": "string", + "description": "The date-time the key is active." + }, + "expiry": { + "type": "string", + "description": "The date-time the key expires." + } + }, + "required": [ + "start", + "expiry" + ] + }, + "LeaseDuration": { + "type": "string", + "description": "The lease duration.", + "enum": [ + "infinite", + "fixed" + ], + "x-ms-enum": { + "name": "LeaseDuration", + "modelAsString": false, + "values": [ + { + "name": "Infinite", + "value": "infinite", + "description": "The lease is of infinite duration." + }, + { + "name": "Fixed", + "value": "fixed", + "description": "The lease is of fixed duration." + } + ] + } + }, + "LeaseState": { + "type": "string", + "description": "The lease state.", + "enum": [ + "available", + "leased", + "expired", + "breaking", + "broken" + ], + "x-ms-enum": { + "name": "LeaseState", + "modelAsString": false, + "values": [ + { + "name": "Available", + "value": "available", + "description": "The lease is available." + }, + { + "name": "Leased", + "value": "leased", + "description": "The lease is currently leased." + }, + { + "name": "Expired", + "value": "expired", + "description": "The lease is expired." + }, + { + "name": "Breaking", + "value": "breaking", + "description": "The lease is breaking." + }, + { + "name": "Broken", + "value": "broken", + "description": "The lease is broken." + } + ] + } + }, + "LeaseStatus": { + "type": "string", + "description": "The lease status.", + "enum": [ + "unlocked", + "locked" + ], + "x-ms-enum": { + "name": "LeaseStatus", + "modelAsString": false, + "values": [ + { + "name": "Unlocked", + "value": "unlocked", + "description": "The lease is unlocked." + }, + { + "name": "Locked", + "value": "locked", + "description": "The lease is locked." + } + ] + } + }, + "ListBlobsFlatSegmentResponse": { + "type": "object", + "description": "An enumeration of blobs.", + "properties": { + "serviceEndpoint": { + "type": "string", + "description": "The service endpoint." + }, + "containerName": { + "type": "string", + "description": "The container name." + }, + "prefix": { + "type": "string", + "description": "The prefix of the blobs." + }, + "marker": { + "type": "string", + "description": "The marker of the blobs." + }, + "maxResults": { + "type": "integer", + "format": "int32", + "description": "The max results of the blobs." + }, + "segment": { + "$ref": "#/definitions/BlobFlatListSegment", + "description": "The blob segment." + }, + "nextMarker": { + "type": "string", + "description": "The next marker of the blobs." + } + }, + "required": [ + "serviceEndpoint", + "containerName", + "segment" + ] + }, + "ListBlobsHierarchySegmentResponse": { + "type": "object", + "description": "An enumeration of blobs", + "properties": { + "serviceEndpoint": { + "type": "string", + "description": "The service endpoint." + }, + "containerName": { + "type": "string", + "description": "The container name." + }, + "delimiter": { + "type": "string", + "description": "The delimiter of the blobs." + }, + "prefix": { + "type": "string", + "description": "The prefix of the blobs." + }, + "marker": { + "type": "string", + "description": "The marker of the blobs." + }, + "maxResults": { + "type": "integer", + "format": "int32", + "description": "The max results of the blobs." + }, + "segment": { + "$ref": "#/definitions/BlobHierarchyListSegment", + "description": "The blob segment." + }, + "nextMarker": { + "type": "string", + "description": "The next marker of the blobs." + } + }, + "required": [ + "serviceEndpoint", + "containerName", + "segment" + ] + }, + "ListBlobsIncludeItem": { + "type": "string", + "description": "The list blob includes parameter values.", + "enum": [ + "copy", + "deleted", + "metadata", + "snapshots", + "uncommittedblobs", + "versions", + "tags", + "immutabilitypolicy", + "legalhold", + "deletedwithversions" + ], + "x-ms-enum": { + "name": "ListBlobsIncludeItem", + "modelAsString": false, + "values": [ + { + "name": "Copy", + "value": "copy", + "description": "The include copies." + }, + { + "name": "Deleted", + "value": "deleted", + "description": "The include deleted blobs." + }, + { + "name": "Metadata", + "value": "metadata", + "description": "The include metadata." + }, + { + "name": "Snapshots", + "value": "snapshots", + "description": "The include snapshots." + }, + { + "name": "UncommittedBlobs", + "value": "uncommittedblobs", + "description": "The include uncommitted blobs." + }, + { + "name": "Versions", + "value": "versions", + "description": "The include versions." + }, + { + "name": "Tags", + "value": "tags", + "description": "The include tags." + }, + { + "name": "ImmutabilityPolicy", + "value": "immutabilitypolicy", + "description": "The include immutable policy." + }, + { + "name": "LegalHold", + "value": "legalhold", + "description": "The include legal hold." + }, + { + "name": "DeletedWithVersions", + "value": "deletedwithversions", + "description": "The include deleted with versions." + } + ] + } + }, + "ListContainersIncludeType": { + "type": "string", + "description": "Include this parameter to specify that the container's metadata be returned as part of the response body.", + "enum": [ + "metadata", + "deleted", + "system" + ], + "x-ms-enum": { + "name": "ListContainersIncludeType", + "modelAsString": false, + "values": [ + { + "name": "metadata", + "value": "metadata", + "description": "Include metadata" + }, + { + "name": "deleted", + "value": "deleted", + "description": "Include deleted" + }, + { + "name": "system", + "value": "system", + "description": "Include system" + } + ] + } + }, + "ListContainersSegmentResponse": { + "type": "object", + "description": "The list container segment response", + "properties": { + "serviceEndpoint": { + "type": "string", + "description": "The service endpoint." + }, + "prefix": { + "type": "string", + "description": "The prefix of the containers." + }, + "marker": { + "type": "string", + "description": "The marker of the containers." + }, + "maxResults": { + "type": "integer", + "format": "int32", + "description": "The max results of the containers." + }, + "containerItems": { + "type": "array", + "description": "The container segment.", + "items": { + "$ref": "#/definitions/ContainerItem" + } + }, + "NextMarker": { + "type": "string", + "description": "The next marker of the containers." + } + }, + "required": [ + "serviceEndpoint", + "containerItems" + ] + }, + "Logging": { + "type": "object", + "description": "Azure Analytics Logging settings.", + "properties": { + "version": { + "type": "string", + "description": "The version of the logging properties." + }, + "delete": { + "type": "boolean", + "description": "Whether delete operation is logged." + }, + "read": { + "type": "boolean", + "description": "Whether read operation is logged." + }, + "write": { + "type": "boolean", + "description": "Whether write operation is logged." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "The retention policy of the logs." + } + }, + "required": [ + "version", + "delete", + "read", + "write", + "retentionPolicy" + ] + }, + "Metrics": { + "type": "object", + "description": "The metrics properties.", + "properties": { + "version": { + "type": "string", + "description": "The version of the metrics properties." + }, + "enabled": { + "type": "boolean", + "description": "Whether it is enabled." + }, + "includeApis": { + "type": "boolean", + "description": "Whether to include API in the metrics." + }, + "retentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "The retention policy of the metrics." + } + }, + "required": [ + "enabled" + ] + }, + "ObjectReplicationMetadata": { + "type": "object", + "description": "The object replication metadata.", + "additionalProperties": { + "type": "string" + } + }, + "PageList": { + "type": "object", + "description": "Represents a page list.", + "properties": { + "pageRange": { + "type": "array", + "description": "The page ranges.", + "items": { + "$ref": "#/definitions/PageRange" + } + }, + "clearRange": { + "type": "array", + "description": "The clear ranges.", + "items": { + "$ref": "#/definitions/ClearRange" + } + }, + "nextMarker": { + "type": "string", + "description": "The next marker." + } + } + }, + "PageRange": { + "type": "object", + "description": "The page range.", + "properties": { + "start": { + "type": "integer", + "format": "int64", + "description": "The start of the byte range." + }, + "end": { + "type": "integer", + "format": "int64", + "description": "The end of the byte range." + } + }, + "required": [ + "start", + "end" + ] + }, + "ParquetConfiguration": { + "type": "object", + "description": "Represents the Parquet configuration.", + "additionalProperties": {} + }, + "PremiumPageBlobAccessTier": { + "type": "string", + "description": "The premium page blob access tier types.", + "enum": [ + "P4", + "P6", + "P10", + "P15", + "P20", + "P30", + "P40", + "P50", + "P60", + "P70", + "P80" + ], + "x-ms-enum": { + "name": "PremiumPageBlobAccessTier", + "modelAsString": true, + "values": [ + { + "name": "P4", + "value": "P4", + "description": "The premium page blob access tier is P4." + }, + { + "name": "P6", + "value": "P6", + "description": "The premium page blob access tier is P6." + }, + { + "name": "P10", + "value": "P10", + "description": "The premium page blob access tier is P10." + }, + { + "name": "P15", + "value": "P15", + "description": "The premium page blob access tier is P15." + }, + { + "name": "P20", + "value": "P20", + "description": "The premium page blob access tier is P20." + }, + { + "name": "P30", + "value": "P30", + "description": "The premium page blob access tier is P30." + }, + { + "name": "P40", + "value": "P40", + "description": "The premium page blob access tier is P40." + }, + { + "name": "P50", + "value": "P50", + "description": "The premium page blob access tier is P50." + }, + { + "name": "P60", + "value": "P60", + "description": "The premium page blob access tier is P60." + }, + { + "name": "P70", + "value": "P70", + "description": "The premium page blob access tier is P70." + }, + { + "name": "P80", + "value": "P80", + "description": "The premium page blob access tier is P80." + } + ] + } + }, + "PublicAccessType": { + "type": "string", + "description": "The public access types.", + "enum": [ + "blob", + "container" + ], + "x-ms-enum": { + "name": "PublicAccessType", + "modelAsString": true, + "values": [ + { + "name": "Blob", + "value": "blob", + "description": "Blob access." + }, + { + "name": "Container", + "value": "container", + "description": "Container access." + } + ] + } + }, + "QueryFormat": { + "type": "object", + "description": "The query format settings.", + "properties": { + "type": { + "$ref": "#/definitions/QueryType", + "description": "The query type." + }, + "delimitedTextConfiguration": { + "$ref": "#/definitions/DelimitedTextConfiguration", + "description": "The delimited text configuration." + }, + "jsonTextConfiguration": { + "$ref": "#/definitions/JsonTextConfiguration", + "description": "The JSON text configuration." + }, + "arrowConfiguration": { + "$ref": "#/definitions/ArrowConfiguration", + "description": "The Apache Arrow configuration." + }, + "parquetTextConfiguration": { + "$ref": "#/definitions/ParquetConfiguration", + "description": "The Parquet configuration." + } + }, + "required": [ + "type" + ] + }, + "QueryRequest": { + "type": "object", + "description": "Groups the set of query request settings.", + "properties": { + "queryType": { + "$ref": "#/definitions/QueryRequestType", + "description": "Required. The type of the provided query expression." + }, + "expression": { + "type": "string", + "description": "The query expression in SQL. The maximum size of the query expression is 256KiB." + }, + "inputSerialization": { + "$ref": "#/definitions/QuerySerialization", + "description": "The input serialization settings." + }, + "outputSerialization": { + "$ref": "#/definitions/QuerySerialization", + "description": "The output serialization settings." + } + }, + "required": [ + "queryType", + "expression" + ] + }, + "QueryRequestType": { + "type": "string", + "description": "The query request, note only SQL supported", + "enum": [ + "SQL" + ], + "x-ms-enum": { + "name": "QueryRequestType", + "modelAsString": false, + "values": [ + { + "name": "SQL", + "value": "SQL", + "description": "The SQL request query type." + } + ] + } + }, + "QuerySerialization": { + "type": "object", + "description": "The query serialization settings.", + "properties": { + "format": { + "$ref": "#/definitions/QueryFormat", + "description": "The query format." + } + }, + "required": [ + "format" + ] + }, + "QueryType": { + "type": "string", + "description": "The query format type.", + "enum": [ + "delimited", + "json", + "arrow", + "parquet" + ], + "x-ms-enum": { + "name": "QueryType", + "modelAsString": false, + "values": [ + { + "name": "Delimited", + "value": "delimited", + "description": "The query format type is delimited." + }, + { + "name": "JSON", + "value": "json", + "description": "The query format type is JSON." + }, + { + "name": "Arrow", + "value": "arrow", + "description": "The query format type is Apache Arrow." + }, + { + "name": "Parquet", + "value": "parquet", + "description": "The query format type is Parquet." + } + ] + } + }, + "RehydratePriority": { + "type": "string", + "description": "If an object is in rehydrate pending state then this header is returned with priority of rehydrate. Valid values are High and Standard.", + "enum": [ + "High", + "Standard" + ], + "x-ms-enum": { + "name": "RehydratePriority", + "modelAsString": true, + "values": [ + { + "name": "High", + "value": "High", + "description": "The rehydrate priority is high." + }, + { + "name": "Standard", + "value": "Standard", + "description": "The rehydrate priority is standard." + } + ] + } + }, + "RetentionPolicy": { + "type": "object", + "description": "The retention policy.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether to enable the retention policy." + }, + "days": { + "type": "integer", + "format": "int32", + "description": "The number of days to retain the logs.", + "minimum": 1 + }, + "allowPermanentDelete": { + "type": "boolean", + "description": "Whether to allow permanent delete." + } + }, + "required": [ + "enabled" + ] + }, + "SequenceNumberActionType": { + "type": "string", + "description": "The sequence number actions.", + "enum": [ + "increment", + "max", + "update" + ], + "x-ms-enum": { + "name": "SequenceNumberActionType", + "modelAsString": false, + "values": [ + { + "name": "Increment", + "value": "increment", + "description": "Increment the sequence number." + }, + { + "name": "Max", + "value": "max", + "description": "Set the maximum for the sequence number." + }, + { + "name": "Update", + "value": "update", + "description": "Update the sequence number." + } + ] + } + }, + "SignedIdentifier": { + "type": "object", + "description": "The signed identifier.", + "properties": { + "id": { + "type": "string", + "description": "The unique ID for the signed identifier." + }, + "accessPolicy": { + "$ref": "#/definitions/AccessPolicy", + "description": "The access policy for the signed identifier." + } + }, + "required": [ + "id", + "accessPolicy" + ] + }, + "SignedIdentifiers": { + "type": "array", + "description": "Represents an array of signed identifiers", + "items": { + "$ref": "#/definitions/SignedIdentifier" + } + }, + "SkuName": { + "type": "string", + "description": "The SKU types", + "enum": [ + "Standard_LRS", + "Standard_GRS", + "Standard_RAGRS", + "Standard_ZRS", + "Premium_LRS" + ], + "x-ms-enum": { + "name": "SkuName", + "modelAsString": false, + "values": [ + { + "name": "StandardLRS", + "value": "Standard_LRS", + "description": "The standard LRS SKU." + }, + { + "name": "StandardGRS", + "value": "Standard_GRS", + "description": "The standard GRS SKU." + }, + { + "name": "StandardRAGRS", + "value": "Standard_RAGRS", + "description": "The standard RAGRS SKU." + }, + { + "name": "StandardZRS", + "value": "Standard_ZRS", + "description": "The standard ZRS SKU." + }, + { + "name": "PremiumLRS", + "value": "Premium_LRS", + "description": "The premium LRS SKU." + } + ] + } + }, + "StaticWebsite": { + "type": "object", + "description": "The properties that enable an account to host a static website", + "properties": { + "enabled": { + "type": "boolean", + "description": "Indicates whether this account is hosting a static website" + }, + "indexDocument": { + "type": "string", + "description": "The index document." + }, + "errorDocument404Path": { + "type": "string", + "description": "The error document." + }, + "defaultIndexDocumentPath": { + "type": "string", + "description": "Absolute path of the default index page" + } + }, + "required": [ + "enabled" + ] + }, + "StorageError": { + "type": "object", + "description": "The error response.", + "properties": { + "code": { + "type": "string", + "description": "The error code." + }, + "message": { + "type": "string", + "description": "The error message." + }, + "copySourceStatusCode": { + "type": "integer", + "format": "int32", + "description": "Copy source status code" + }, + "copySourceErrorCode": { + "type": "string", + "description": "Copy source error code" + }, + "copySourceErrorMessage": { + "type": "string", + "description": "Copy source error message" + } + } + }, + "StorageServiceProperties": { + "type": "object", + "description": "The service properties.", + "properties": { + "logging": { + "$ref": "#/definitions/Logging", + "description": "The logging properties." + }, + "hourMetrics": { + "$ref": "#/definitions/Metrics", + "description": "The hour metrics properties." + }, + "minuteMetrics": { + "$ref": "#/definitions/Metrics", + "description": "The minute metrics properties." + }, + "cors": { + "type": "array", + "description": "The CORS properties.", + "items": { + "$ref": "#/definitions/CorsRule" + } + }, + "defaultServiceVersion": { + "type": "string", + "description": "The default service version." + }, + "deleteRetentionPolicy": { + "$ref": "#/definitions/RetentionPolicy", + "description": "The delete retention policy." + }, + "staticWebsite": { + "$ref": "#/definitions/StaticWebsite", + "description": "The static website properties." + } + } + }, + "StorageServiceStats": { + "type": "object", + "description": "Stats for the storage service.", + "properties": { + "geoReplication": { + "$ref": "#/definitions/GeoReplication", + "description": "The geo replication stats." + } + } + }, + "UserDelegationKey": { + "type": "object", + "description": "A user delegation key.", + "properties": { + "signedOid": { + "$ref": "#/definitions/Azure.Core.uuid", + "description": "The Azure Active Directory object ID in GUID format." + }, + "signedTid": { + "$ref": "#/definitions/Azure.Core.uuid", + "description": "The Azure Active Directory tenant ID in GUID format." + }, + "signedStart": { + "type": "string", + "description": "The date-time the key is active." + }, + "signedExpiry": { + "type": "string", + "description": "The date-time the key expires." + }, + "signedService": { + "type": "string", + "description": "Abbreviation of the Azure Storage service that accepts the key." + }, + "signedVersion": { + "type": "string", + "description": "The service version that created the key." + }, + "value": { + "$ref": "#/definitions/base64Bytes", + "description": "The key as a base64 string." + } + }, + "required": [ + "signedOid", + "signedTid", + "signedStart", + "signedExpiry", + "signedService", + "signedVersion", + "value" + ] + }, + "base64Bytes": { + "type": "string", + "format": "base64" + } + }, + "parameters": { + "Azure.Core.ConditionalRequestHeaders.ifMatch": { + "name": "If-Match", + "in": "header", + "description": "The request should only proceed if an entity matches this string.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "x-ms-client-name": "ifMatch" + }, + "Azure.Core.ConditionalRequestHeaders.ifModifiedSince": { + "name": "If-Modified-Since", + "in": "header", + "description": "The request should only proceed if the entity was modified after this time.", + "required": false, + "type": "string", + "format": "date-time", + "x-ms-parameter-location": "method", + "x-ms-client-name": "ifModifiedSince" + }, + "Azure.Core.ConditionalRequestHeaders.ifNoneMatch": { + "name": "If-None-Match", + "in": "header", + "description": "The request should only proceed if no entity matches this string.", + "required": false, + "type": "string", + "x-ms-parameter-location": "method", + "x-ms-client-name": "ifNoneMatch" + }, + "Azure.Core.ConditionalRequestHeaders.ifUnmodifiedSince": { + "name": "If-Unmodified-Since", + "in": "header", + "description": "The request should only proceed if the entity was not modified after this time.", + "required": false, + "type": "string", + "format": "date-time", + "x-ms-parameter-location": "method", + "x-ms-client-name": "ifUnmodifiedSince" + } + } +} From 8aa580cece4474cb810bf64a640ecad01db418c7 Mon Sep 17 00:00:00 2001 From: catalinaperalta Date: Fri, 15 Aug 2025 10:59:17 -0700 Subject: [PATCH 2/4] regen swagger --- .../Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json index f260bab4ef8b..03ef34d067a0 100644 --- a/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json +++ b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json @@ -10654,7 +10654,7 @@ }, "/{containerName}/{blobName}?comp=properties&UpdateSequenceNumber": { "put": { - "operationId": "PageBlob_UpdateSequenceNumber", + "operationId": "PageBlob_SetSequenceNumber", "description": "The Update Sequence Number operation sets the blob's sequence number. The operation will fail if the specified sequence number is less than the current sequence number of the blob.", "produces": [ "application/xml" From d6dd368447fca7b5d29a273476b402579ceab00b Mon Sep 17 00:00:00 2001 From: catalinaperalta <9859037+catalinaperalta@users.noreply.github.com> Date: Fri, 29 Aug 2025 17:04:55 -0700 Subject: [PATCH 3/4] sync startFrom to tsp (#36698) Co-authored-by: catalinaperalta --- .../storage/Microsoft.BlobStorage/models.tsp | 8 ++++++++ .../storage/Microsoft.BlobStorage/routes.tsp | 2 ++ .../stable/2026-02-06/generated_blob.json | 14 ++++++++++++++ 3 files changed, 24 insertions(+) diff --git a/specification/storage/Microsoft.BlobStorage/models.tsp b/specification/storage/Microsoft.BlobStorage/models.tsp index 7cb37246a98b..bfe2ae056ead 100644 --- a/specification/storage/Microsoft.BlobStorage/models.tsp +++ b/specification/storage/Microsoft.BlobStorage/models.tsp @@ -6,6 +6,7 @@ import "@azure-tools/typespec-client-generator-core"; using Azure.Core; using TypeSpec.Http; +using TypeSpec.Versioning; using Azure.ClientGenerator.Core; namespace Storage.Blob; @@ -2321,3 +2322,10 @@ alias PageWriteParameter = { @header("x-ms-page-write") pageWrite: TPageWrite; }; + +alias ListBlobsStartFrom = { + /** Specifies the relative path to list paths from. For non-recursive list, only one entity level is supported; For recursive list, multiple entity levels are supported. (Inclusive) */ + @added(Versions.v2026_02_06) + @query + startFrom?: string; +}; diff --git a/specification/storage/Microsoft.BlobStorage/routes.tsp b/specification/storage/Microsoft.BlobStorage/routes.tsp index 8b437bf36645..a785ebd77d46 100644 --- a/specification/storage/Microsoft.BlobStorage/routes.tsp +++ b/specification/storage/Microsoft.BlobStorage/routes.tsp @@ -594,6 +594,7 @@ namespace Storage.Blob { ...MaxResultsParameter; ...ListBlobsIncludeParameter; ...TimeoutParameter; + ...ListBlobsStartFrom; }, { ...DateResponseHeader; @@ -622,6 +623,7 @@ namespace Storage.Blob { ...MaxResultsParameter; ...ListBlobsIncludeParameter; ...TimeoutParameter; + ...ListBlobsStartFrom; }, { ...DateResponseHeader; diff --git a/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json index 03ef34d067a0..ae6748da3501 100644 --- a/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json +++ b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json @@ -4532,6 +4532,13 @@ "format": "int32", "minimum": 0 }, + { + "name": "startFrom", + "in": "query", + "description": "Specifies the relative path to list paths from. For non-recursive list, only one entity level is supported; For recursive list, multiple entity levels are supported. (Inclusive)", + "required": false, + "type": "string" + }, { "name": "x-ms-client-request-id", "in": "header", @@ -4735,6 +4742,13 @@ "format": "int32", "minimum": 0 }, + { + "name": "startFrom", + "in": "query", + "description": "Specifies the relative path to list paths from. For non-recursive list, only one entity level is supported; For recursive list, multiple entity levels are supported. (Inclusive)", + "required": false, + "type": "string" + }, { "name": "x-ms-client-request-id", "in": "header", From c42ce3e2ced5d9c3f8911c90a7bbbffa00b4673f Mon Sep 17 00:00:00 2001 From: catalinaperalta <9859037+catalinaperalta@users.noreply.github.com> Date: Fri, 29 Aug 2025 17:12:02 -0700 Subject: [PATCH 4/4] sync tags headers (#36697) Co-authored-by: catalinaperalta --- .../storage/Microsoft.BlobStorage/models.tsp | 30 ++++++++ .../storage/Microsoft.BlobStorage/routes.tsp | 9 +++ .../stable/2026-02-06/generated_blob.json | 68 +++++++++++++++++++ 3 files changed, 107 insertions(+) diff --git a/specification/storage/Microsoft.BlobStorage/models.tsp b/specification/storage/Microsoft.BlobStorage/models.tsp index bfe2ae056ead..bd4fa92879b9 100644 --- a/specification/storage/Microsoft.BlobStorage/models.tsp +++ b/specification/storage/Microsoft.BlobStorage/models.tsp @@ -2323,6 +2323,36 @@ alias PageWriteParameter = { pageWrite: TPageWrite; }; +alias IfBlobMatchHeader = { + /** Specify an ETag value to operate only on blobs with a matching value. */ + @added(Versions.v2026_02_06) + @header("x-ms-blob-if-match") + ifMatch?: string; +}; + +alias IfBlobModifiedSinceHeader = { + /** Specify this header value to operate only on a blob if it has been modified since the specified date/time. */ + @added(Versions.v2026_02_06) + @header("x-ms-blob-if-modified-since") + @encode("rfc7231") + ifModifiedSince?: utcDateTime; +}; + +alias IfBlobNoneMatchHeader = { + /** Specify an ETag value to operate only on blobs without a matching value. */ + @added(Versions.v2026_02_06) + @header("x-ms-blob-if-none-match") + ifNoneMatch?: string; +}; + +alias IfBlobUnmodifiedSinceHeader = { + /** Specify this header value to operate only on a blob if it has not been modified since the specified date/time. */ + @added(Versions.v2026_02_06) + @header("x-ms-blob-if-unmodified-since") + @encode("rfc7231") + ifUnmodifiedSince?: utcDateTime; +}; + alias ListBlobsStartFrom = { /** Specifies the relative path to list paths from. For non-recursive list, only one entity level is supported; For recursive list, multiple entity levels are supported. (Inclusive) */ @added(Versions.v2026_02_06) diff --git a/specification/storage/Microsoft.BlobStorage/routes.tsp b/specification/storage/Microsoft.BlobStorage/routes.tsp index a785ebd77d46..da080db30133 100644 --- a/specification/storage/Microsoft.BlobStorage/routes.tsp +++ b/specification/storage/Microsoft.BlobStorage/routes.tsp @@ -1459,6 +1459,10 @@ namespace Storage.Blob { ...VersionIdParameter; ...LeaseIdOptionalParameter; ...IfTagsParameter; + ...IfBlobModifiedSinceHeader; + ...IfBlobUnmodifiedSinceHeader; + ...IfBlobMatchHeader; + ...IfBlobNoneMatchHeader; }, { ...DateResponseHeader; @@ -1487,6 +1491,11 @@ namespace Storage.Blob { /** The blob tags. */ @body tags: BlobTags; + + ...IfBlobModifiedSinceHeader; + ...IfBlobUnmodifiedSinceHeader; + ...IfBlobMatchHeader; + ...IfBlobNoneMatchHeader; }, { @statusCode statusCode: 204; diff --git a/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json index ae6748da3501..5c3f6d1df44e 100644 --- a/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json +++ b/specification/storage/data-plane/Microsoft.BlobStorage/stable/2026-02-06/generated_blob.json @@ -8441,6 +8441,40 @@ "type": "string", "x-ms-client-name": "ifTags" }, + { + "name": "x-ms-blob-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "x-ms-blob-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-blob-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-blob-if-none-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs without a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, { "name": "x-ms-client-request-id", "in": "header", @@ -8590,6 +8624,40 @@ "type": "string", "x-ms-client-name": "leaseId" }, + { + "name": "x-ms-blob-if-modified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifModifiedSince" + }, + { + "name": "x-ms-blob-if-unmodified-since", + "in": "header", + "description": "Specify this header value to operate only on a blob if it has not been modified since the specified date/time.", + "required": false, + "type": "string", + "format": "date-time-rfc7231", + "x-ms-client-name": "ifUnmodifiedSince" + }, + { + "name": "x-ms-blob-if-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs with a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifMatch" + }, + { + "name": "x-ms-blob-if-none-match", + "in": "header", + "description": "Specify an ETag value to operate only on blobs without a matching value.", + "required": false, + "type": "string", + "x-ms-client-name": "ifNoneMatch" + }, { "name": "x-ms-client-request-id", "in": "header",