Azure Blob Storage Blobs API

Operations on blobs including get, put, delete, and metadata

Business capability
IT Infrastructure Management BC-600.50

Operations 19

PUT /{container}/{blob} Azure Blob Storage Put blob #
GET /{container}/{blob} Azure Blob Storage Get blob #
HEAD /{container}/{blob} Azure Blob Storage Get blob properties #
DELETE /{container}/{blob} Azure Blob Storage Delete blob #
GET /{container}/{blob}?comp=metadata Azure Blob Storage Get blob metadata #
PUT /{container}/{blob}?comp=metadata Azure Blob Storage Set blob metadata #
PUT /{container}/{blob}?comp=properties Azure Blob Storage Set blob HTTP headers #
GET /{container}/{blob}?comp=tags Azure Blob Storage Get blob tags #
PUT /{container}/{blob}?comp=tags Azure Blob Storage Set blob tags #
PUT /{container}/{blob}?comp=lease Azure Blob Storage Lease blob #
PUT /{container}/{blob}?comp=snapshot Azure Blob Storage Snapshot blob #
PUT /{container}/{blob}?comp=copy Azure Blob Storage Copy blob #
PUT /{container}/{blob}?comp=copy©id={copyId} Azure Blob Storage Abort copy blob #
PUT /{container}/{blob}?comp=undelete Azure Blob Storage Undelete blob #
PUT /{container}/{blob}?comp=tier Azure Blob Storage Set blob tier #
PUT /{container}/{blob}?comp=immutabilityPolicies Azure Blob Storage Set blob immutability policy #
DELETE /{container}/{blob}?comp=immutabilityPolicies Azure Blob Storage Delete blob immutability policy #
PUT /{container}/{blob}?comp=legalhold Azure Blob Storage Set blob legal hold #
PUT /{containerName}/{blob}?comp=tier Blob set tier #

Documentation

Specifications

SDKs

Code Examples

Other Resources

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/microsoft-azure-blob-storage:microsoft-azure-blob-storage-blobs-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

microsoft-azure-blob-storage-blobs-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Microsoft Azure Blob Storage Blobs API
  x-refined-note:
  - x-conversion differs across the merged source definitions and was not carried
  - x-ms-code-generation-settings differs across the merged source definitions and was not carried
  - x-source differs across the merged source definitions and was not carried
  version: '1.0'
  description: 'Operations tagged Blobs across 2 of this provider''s published API definitions: azure-blob-storage-rest-openapi.yml, microsoft-azure-blob-storage-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://{accountName}.blob.core.windows.net
  description: Azure Blob Storage endpoint
  variables:
    accountName:
      description: The name of the Azure Storage account
      default: mystorageaccount
tags:
- name: Blobs
  description: Operations on blobs including get, put, delete, and metadata
paths:
  /{container}/{blob}:
    put:
      operationId: putBlob
      summary: Azure Blob Storage Put blob
      description: Creates a new blob or replaces an existing blob within a container. The type of blob to create is specified in the x-ms-blob-type header. For block blobs up to 5000 MiB, the entire content can be uploaded in a single request.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-blob-type
        in: header
        required: true
        description: The type of blob to create.
        schema:
          type: string
          enum:
          - BlockBlob
          - PageBlob
          - AppendBlob
      - name: Content-Length
        in: header
        description: The length of the request body in bytes. Required for page blobs (set to 0 with x-ms-blob-content-length for the actual size).
        schema:
          type: integer
      - name: Content-Type
        in: header
        description: The MIME content type of the blob.
        schema:
          type: string
      - name: x-ms-blob-content-type
        in: header
        description: The content type to set for the blob.
        schema:
          type: string
      - name: x-ms-access-tier
        in: header
        description: The tier to set on the blob.
        schema:
          type: string
          enum:
          - Hot
          - Cool
          - Cold
          - Archive
      - name: x-ms-blob-content-length
        in: header
        description: Required for page blobs. Specifies the maximum size for the page blob, up to 8 TiB. Must be aligned to a 512-byte boundary.
        schema:
          type: integer
          format: int64
      requestBody:
        description: The blob content. Not applicable for page blobs where content is uploaded through Put Page operations.
        content:
          application/octet-stream:
            schema:
              type: string
              format: binary
      responses:
        '201':
          description: Blob created or replaced successfully
        '409':
          description: Conflict - blob exists and has an active lease
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    get:
      operationId: getBlob
      summary: Azure Blob Storage Get blob
      description: Reads or downloads a blob from Blob Storage, including its user-defined metadata and system properties. A range of bytes can be requested using the Range header.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: Range
        in: header
        description: Return only the bytes of the blob in the specified range, for example bytes=0-1023.
        schema:
          type: string
      - name: snapshot
        in: query
        description: The snapshot identifier. When specified, the operation returns the snapshot of the blob.
        schema:
          type: string
      - name: versionid
        in: query
        description: The version ID. When specified, the operation returns the specified version of the blob.
        schema:
          type: string
      responses:
        '200':
          description: Blob content returned
          content:
            application/octet-stream:
              schema:
                type: string
                format: binary
        '206':
          description: Partial blob content returned for range request
        '404':
          description: Blob not found
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    head:
      operationId: getBlobProperties
      summary: Azure Blob Storage Get blob properties
      description: Returns all system properties and user-defined metadata on the blob. Does not return the blob content. Properties are returned as response headers.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Blob properties returned in response headers
        '404':
          description: Blob not found
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    delete:
      operationId: deleteBlob
      summary: Azure Blob Storage Delete blob
      description: Marks the specified blob or snapshot for deletion. The blob is later deleted during garbage collection. If soft delete is enabled, the blob can be restored within the retention period.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-delete-snapshots
        in: header
        description: Required if the blob has associated snapshots. Specifies whether to delete the blob and all snapshots (include) or only the snapshots (only).
        schema:
          type: string
          enum:
          - include
          - only
      - name: snapshot
        in: query
        description: The snapshot identifier. When specified, only the snapshot is deleted.
        schema:
          type: string
      responses:
        '202':
          description: Blob marked for deletion
        '404':
          description: Blob not found
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=metadata:
    get:
      operationId: getBlobMetadata
      summary: Azure Blob Storage Get blob metadata
      description: Retrieves all user-defined metadata of an existing blob or snapshot. Metadata is returned as x-ms-meta- response headers.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Blob metadata returned in response headers
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    put:
      operationId: setBlobMetadata
      summary: Azure Blob Storage Set blob metadata
      description: Sets user-defined metadata for the specified blob as one or more name-value pairs. Existing metadata is replaced entirely.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Blob metadata set successfully
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=properties:
    put:
      operationId: setBlobHTTPHeaders
      summary: Azure Blob Storage Set blob HTTP headers
      description: Sets system properties defined for an existing blob such as content type, content encoding, content language, content disposition, and cache control.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-blob-content-type
        in: header
        description: The MIME content type of the blob.
        schema:
          type: string
      - name: x-ms-blob-content-encoding
        in: header
        description: The content encoding of the blob.
        schema:
          type: string
      - name: x-ms-blob-content-language
        in: header
        description: The content language of the blob.
        schema:
          type: string
      - name: x-ms-blob-cache-control
        in: header
        description: The cache control directive for the blob.
        schema:
          type: string
      - name: x-ms-blob-content-disposition
        in: header
        description: The content disposition of the blob.
        schema:
          type: string
      responses:
        '200':
          description: Blob HTTP headers set successfully
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=tags:
    get:
      operationId: getBlobTags
      summary: Azure Blob Storage Get blob tags
      description: Retrieves user-defined blob index tags. Tags form a secondary index that can be queried using the Find Blobs by Tags operation.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Blob tags returned
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    put:
      operationId: setBlobTags
      summary: Azure Blob Storage Set blob tags
      description: Sets user-defined blob index tags on an existing blob. Tags are key-value pairs that form a secondary index, enabling efficient querying across all blobs in a storage account.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '204':
          description: Blob tags set successfully
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=lease:
    put:
      operationId: leaseBlob
      summary: Azure Blob Storage Lease blob
      description: Establishes and manages a lock on write and delete operations for a blob. The lock can be infinite or between 15 and 60 seconds.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-lease-action
        in: header
        required: true
        description: The lease action to perform.
        schema:
          type: string
          enum:
          - acquire
          - renew
          - change
          - release
          - break
      responses:
        '200':
          description: Lease operation completed
        '201':
          description: Lease acquired
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=snapshot:
    put:
      operationId: snapshotBlob
      summary: Azure Blob Storage Snapshot blob
      description: Creates a read-only snapshot of a blob. A snapshot is a version of a blob that is captured at a point in time. Snapshots share the same blob name and are distinguished by the snapshot query parameter.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '201':
          description: Snapshot created
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=copy:
    put:
      operationId: copyBlob
      summary: Azure Blob Storage Copy blob
      description: Copies a source blob to a destination blob within the same storage account or across storage accounts. The copy operation is asynchronous and the status can be checked using Get Blob Properties.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-copy-source
        in: header
        required: true
        description: URL of the source blob, up to 2 KiB in length.
        schema:
          type: string
          format: uri
      - name: x-ms-access-tier
        in: header
        description: The tier to set on the destination blob.
        schema:
          type: string
          enum:
          - Hot
          - Cool
          - Cold
          - Archive
      responses:
        '202':
          description: Copy operation initiated
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=copy&copyid={copyId}:
    put:
      operationId: abortCopyBlob
      summary: Azure Blob Storage Abort copy blob
      description: Aborts a pending Copy Blob operation and leaves the destination blob with zero length and full metadata. The copy must be in a pending state.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: copyId
        in: query
        required: true
        description: The copy operation identifier returned by the Copy Blob response.
        schema:
          type: string
      - name: x-ms-copy-action
        in: header
        required: true
        schema:
          type: string
          enum:
          - abort
      responses:
        '204':
          description: Copy operation aborted
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=undelete:
    put:
      operationId: undeleteBlob
      summary: Azure Blob Storage Undelete blob
      description: Restores the contents and metadata of a soft-deleted blob and any associated soft-deleted snapshots. This is only available when soft delete is enabled and the retention period has not expired.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Blob undeleted successfully
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=tier:
    put:
      operationId: setBlobTier
      summary: Azure Blob Storage Set blob tier
      description: Sets the access tier of a block blob or page blob. For block blobs, supported tiers are Hot, Cool, Cold, and Archive. Moving a blob from Archive tier requires rehydration, which can take hours.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-access-tier
        in: header
        required: true
        description: The access tier to set for the blob.
        schema:
          type: string
          enum:
          - Hot
          - Cool
          - Cold
          - Archive
      - name: x-ms-rehydrate-priority
        in: header
        description: Priority of rehydration when moving a blob out of the Archive tier. Standard priority may take up to 15 hours, High priority within 1 hour at a higher cost.
        schema:
          type: string
          enum:
          - High
          - Standard
      responses:
        '200':
          description: Blob tier set successfully
        '202':
          description: Tier change accepted with rehydration pending
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=immutabilityPolicies:
    put:
      operationId: setBlobImmutabilityPolicy
      summary: Azure Blob Storage Set blob immutability policy
      description: Sets the immutability policy on a blob. Immutability policies prevent blob modification and deletion for a specified retention period. Supports unlocked and locked policy modes.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-immutability-policy-until-date
        in: header
        required: true
        description: The date until which the immutability policy is in effect.
        schema:
          type: string
          format: date-time
      - name: x-ms-immutability-policy-mode
        in: header
        required: true
        description: The mode of the immutability policy.
        schema:
          type: string
          enum:
          - Unlocked
          - Locked
          - Mutable
      responses:
        '200':
          description: Immutability policy set successfully
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    delete:
      operationId: deleteBlobImmutabilityPolicy
      summary: Azure Blob Storage Delete blob immutability policy
      description: Deletes the immutability policy on a blob. The policy must be in Unlocked mode to be deleted.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Immutability policy deleted
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{container}/{blob}?comp=legalhold:
    put:
      operationId: setBlobLegalHold
      summary: Azure Blob Storage Set blob legal hold
      description: Sets or clears a legal hold on a blob. A legal hold prevents the blob from being modified or deleted regardless of the immutability policy.
      tags:
      - Blobs
      parameters:
      - $ref: '#/components/parameters/ContainerName'
      - $ref: '#/components/parameters/BlobName'
      - $ref: '#/components/parameters/ApiVersion'
      - name: x-ms-legal-hold
        in: header
        required: true
        description: Whether to set or clear the legal hold.
        schema:
          type: boolean
      responses:
        '200':
          description: Legal hold set or cleared
      security:
      - sharedKey: []
      - bearerAuth: []
      - sharedAccessSignature: []
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: Azure Blob Storage endpoint
      variables:
        accountName:
          description: The name of the Azure Storage account
          default: mystorageaccount
  /{containerName}/{blob}?comp=tier:
    parameters:
    - $ref: '#/components/parameters/ContainerName_2'
    - $ref: '#/components/parameters/Blob'
    - name: comp
      description: comp
      in: query
      required: true
      schema:
        type: string
        enum:
        - tier
    put:
      tags:
      - Blobs
      operationId: Blob_SetTier
      description: The Set Tier operation sets the tier on a blob. The operation is allowed on a page blob in a premium storage account and on a block blob in a blob storage account (locally redundant storage only). A premium page blob's tier determines the allowed size, IOPS, and bandwidth of the blob. A block blob's tier determines Hot/Cool/Archive storage type. This operation does not update the blob's ETag.
      parameters:
      - $ref: '#/components/parameters/Snapshot'
      - $ref: '#/components/parameters/VersionId'
      - $ref: '#/components/parameters/Timeout'
      - $ref: '#/components/parameters/AccessTierRequired'
      - $ref: '#/components/parameters/RehydratePriority'
      - $ref: '#/components/parameters/ApiVersionParameter'
      - $ref: '#/components/parameters/ClientRequestId'
      - $ref: '#/components/parameters/LeaseIdOptional'
      - $ref: '#/components/parameters/IfTags'
      responses:
        '200':
          description: The new tier will take effect immediately.
          headers:
            x-ms-client-request-id:
              x-ms-client-name: ClientRequestId
              description: If a client request id header is sent in the request, this header will be present in the response with the same value.
              schema:
                type: string
            x-ms-request-id:
              x-ms-client-name: RequestId
              description: This header uniquely identifies the request that was made and can be used for troubleshooting the request.
              schema:
                type: string
            x-ms-version:
              x-ms-client-name: Version
              description: Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and newer.
              schema:
                type: string
        '202':
          description: The transition to the new tier is pending.
          headers:
            x-ms-client-request-id:
              x-ms-client-name: ClientRequestId
              description: If a client request id header is sent in the request, this header will be present in the response with the same value.
              schema:
                type: string
            x-ms-request-id:
              x-ms-client-name: RequestId
              description: This header uniquely identifies the request that was made and can be used for troubleshooting the request.
              schema:
                type: string
            x-ms-version:
              x-ms-client-name: Version
              description: Indicates the version of the Blob service used to execute the request. This header is returned for requests made against version 2009-09-19 and newer.
              schema:
                type: string
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              schema:
                type: string
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/StorageError'
      summary: Blob set tier
      x-summary-source: derived
    servers:
    - url: https://{accountName}.blob.core.windows.net
      description: 'Azure Blob Storage account endpoint (per docs: https://learn.microsoft.com/en-us/rest/api/storageservices/blob-service-rest-api)'
      variables:
        accountName:
          default: myaccount
          description: Storage account name
components:
  parameters:
    BlobName:
      name: blob
      in: path
      required: true
      description: The blob name. Can contain any combination of characters and may include path separators (/) for organizing blobs in a virtual directory hierarchy.
      schema:
        type: string
    ApiVersion:
      name: x-ms-version
      in: header
      required: true
      description: Specifies the version of the Azure Storage REST API to use for the request.
      schema:
        type: string
        default: '2024-11-04'
    ContainerName:
      name: container
      in: path
      required: true
      description: The container name. Must be a valid DNS name, 3 to 63 characters, starting with a letter or number, and containing only lowercase letters, numbers, and hyphens.
      schema:
        type: string
        pattern: ^[a-z0-9](?!.*--)[a-z0-9-]{1,61}[a-z0-9]$
    Snapshot:
      name: snapshot
      in: query
      required: false
      x-ms-parameter-location: method
      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 <a href="https://learn.microsoft.com/rest/api/storageservices/creating-a-snapshot-of-a-blob">Creating a Snapshot of a Blob.</a>
      schema:
        type: string
    ClientRequestId:
      name: x-ms-client-request-id
      x-ms-client-name: requestId
      in: header
      required: false
      x-ms-parameter-location: method
      description: Provides a client-generated, opaque value with a 1 KB character limit that is recorded in the analytics logs when storage analytics logging is enabled.
      schema:
        type: string
    Blob:
      name: blob
      in: path
      required: true
      x-ms-parameter-location: method
      description: The blob name.
      schema:
        type: string
        minLength: 1
        maxLength: 1024
        pattern: ^[a-zA-Z0-9]+(?:/[a-zA-Z0-9]+)*(?:\.[a-zA-Z0-9]+){0,1}$
    VersionId:
      name: versionid
      x-ms-client-name: versionId
      in: query
      required: false
      x-ms-parameter-location: method
      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.
      schema:
        type: string
    ContainerName_2:
      name: containerName
      in: path
      required: true
      x-ms-parameter-location: method
      description: The container name.
      schema:
        type: string
    IfTags:
      name: x-ms-if-tags
      x-ms-client-name: ifTags
      in: header
      required: false
      x-ms-parameter-location: method
      x-ms-parameter-grouping:
        name: modified-access-conditions
      description: Specify a SQL where clause on blob tags to operate only on blobs with a matching value.
      schema:
        type: string
    Timeout:
      name: timeout
      in: query
      required: false
      x-ms-parameter-location: method
      description: The timeout parameter is expressed in seconds. For more information, see <a href="https://learn.microsoft.com/rest/api/storageservices/setting-timeouts-for-blob-service-operations">Setting Timeouts for Blob Service Operations.</a>
      schema:
        type: integer
        minimum: 0
    RehydratePriority:
      name: x-ms-rehydrate-priority
      x-ms-client-name: rehydratePriority
      in: header
      required: false
      x-ms-enum:
        name: RehydratePriority
        modelAsString: true
      x-ms-parameter-location: method
      description: 'Optional: Indicates the priority with which to rehydrate an archived blob.'
      schema:
        type: string
        enum:
        - High
        - Standard
    AccessTierRequired:
      name: x-ms-access-tier
      x-ms-client-name: tier
      in: header
      required: true
      x-ms-enum:
        name: AccessTier
        modelAsString: true
      x-ms-parameter-location: method
      description: Indicates the tier to be set on the blob.
      schema:
        type: string
        enum:
        - P4
        - P6
        - P10
        - P15
        - P20
        - P30
        - P40
        - P50
        - P60
        - P70
        - P80
        - Hot
        - Cool
        - Archive
        - Cold
        - Smart
    LeaseIdOptional:
      name: x-ms-lease-id
      x-ms-client-name: leaseId
      in: header
      required: false
      x-ms-parameter-location: method
      x-ms-parameter-grouping:
        name: lease-access-conditions
      description: If specified, the operation only succeeds if the resource's lease is active and matches this ID.
      schema:
        type: string
    ApiVersionParameter:
      name: x-ms-version
      x-ms-parameter-location: client
      x-ms-client-name: version
      in: header
      required: true
      description: Specifies the version of the operation to use for this request.
      schema:
        type: string
  schemas:
    StorageError:
      type: object
      properties:
        Message:
          type: string
        CopySourceStatusCode:
          type: integer
          format: int32
        CopySourceErrorCode:
          type: string
        CopySourceErrorMessage:
          type: string
  securitySchemes:
    sharedKey:
      type: apiKey
      in: header
      name: Authorization
      description: Azure Storage shared key authorization using the storage account access key.
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Microsoft Entra ID OAuth 2.0 bearer token for accessing blob resources.
    sharedAccessSignature:
      type: apiKey
      in: query
      name: sig
      description: Shared access signature (SAS) token granting delegated access to blob resources.
externalDocs:
  description: Azure Blob Storage REST API Documentation
  url: https://learn.microsoft.com/en-us/rest/api/storageservices/blob-service-rest-api
x-refined-from:
- azure-blob-storage-rest-openapi.yml
- microsoft-azure-blob-storage-openapi.yml