Azure Blob Storage Azure Blob Storage REST API

The Azure Blob Storage REST API API from Azure Blob Storage — 1 operation(s) for azure blob storage rest api.

Business capability
IT Infrastructure Management BC-600.50

Operations 7

GET / Azure Blob Storage List containers #
GET /?restype=service&comp=properties Azure Blob Storage Get Blob service properties #
PUT /?restype=service&comp=properties Azure Blob Storage Set Blob service properties #
GET /?restype=service&comp=stats Azure Blob Storage Get Blob service stats #
POST /?restype=service&comp=userdelegationkey Azure Blob Storage Get user delegation key #
POST /?restype=service&comp=batch Azure Blob Storage Submit blob batch #
GET /?comp=blobs Azure Blob Storage Find blobs by tags #

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-azure-blob-storage-rest-api-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

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-azure-blob-storage-rest-api-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Azure Blob Storage REST API
  description: The Azure Blob Storage REST API provides programmatic access to unstructured data storage in Azure. It supports operations on the Blob service, containers, and blobs, including block blobs, append blobs, and page blobs. Blobs can store any type of text or binary data such as documents, media files, and application installers. Blob Storage is optimized for storing massive amounts of unstructured data accessible via HTTP or HTTPS from anywhere in the world.
  version: '2024-11-04'
  contact:
    name: Microsoft Azure Support
    url: https://azure.microsoft.com/en-us/support/
  termsOfService: https://azure.microsoft.com/en-us/support/legal/
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
security:
- sharedKey: []
- bearerAuth: []
- sharedAccessSignature: []
tags:
- name: Azure Blob Storage REST API
paths:
  /:
    get:
      operationId: listContainers
      summary: Azure Blob Storage List containers
      description: Returns a list of containers under the specified storage account. Results can be filtered by prefix and paginated using marker and maxresults parameters.
      tags:
      - Azure Blob Storage REST API
      parameters:
      - $ref: '#/components/parameters/ApiVersion'
      - name: comp
        in: query
        required: true
        schema:
          type: string
          enum:
          - list
      - name: prefix
        in: query
        description: Filters results to return only containers whose names begin with the specified prefix.
        schema:
          type: string
      - name: marker
        in: query
        description: Continuation token for retrieving the next page of results. Returned in the NextMarker element of a previous response.
        schema:
          type: string
      - name: maxresults
        in: query
        description: Maximum number of containers to return in a single response. Defaults to 5000 if not specified.
        schema:
          type: integer
          minimum: 1
          maximum: 5000
      - name: include
        in: query
        description: Specifies additional datasets to include in the response such as metadata, deleted containers, or system containers.
        schema:
          type: string
          enum:
          - metadata
          - deleted
          - system
      responses:
        '200':
          description: Successfully listed containers
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/ContainerList'
        '403':
          description: Forbidden - authentication or authorization failure
  /?restype=service&comp=properties:
    get:
      operationId: getBlobServiceProperties
      summary: Azure Blob Storage Get Blob service properties
      description: Retrieves the properties of the Blob service, including logging, metrics, CORS rules, the default service version, and soft delete settings.
      tags:
      - Azure Blob Storage REST API
      parameters:
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Blob service properties returned successfully
          content:
            application/xml:
              schema:
                $ref: '#/components/schemas/StorageServiceProperties'
    put:
      operationId: setBlobServiceProperties
      summary: Azure Blob Storage Set Blob service properties
      description: Sets the properties of the Blob service, including logging, metrics, CORS rules, the default service version, and soft delete settings.
      tags:
      - Azure Blob Storage REST API
      parameters:
      - $ref: '#/components/parameters/ApiVersion'
      requestBody:
        required: true
        content:
          application/xml:
            schema:
              $ref: '#/components/schemas/StorageServiceProperties'
      responses:
        '202':
          description: Properties accepted and being applied
  /?restype=service&comp=stats:
    get:
      operationId: getBlobServiceStats
      summary: Azure Blob Storage Get Blob service stats
      description: Retrieves statistics related to replication for Blob Storage. This operation is only available on the secondary location endpoint when read-access geo-redundant replication is enabled for the storage account.
      tags:
      - Azure Blob Storage REST API
      parameters:
      - $ref: '#/components/parameters/ApiVersion'
      responses:
        '200':
          description: Replication statistics returned
  /?restype=service&comp=userdelegationkey:
    post:
      operationId: getUserDelegationKey
      summary: Azure Blob Storage Get user delegation key
      description: Obtains a key that can be used to sign a user delegation shared access signature (SAS), granting access to blob resources using Microsoft Entra ID credentials. The key is valid for the specified time range.
      tags:
      - Azure Blob Storage REST API
      parameters:
      - $ref: '#/components/parameters/ApiVersion'
      requestBody:
        required: true
        content:
          application/xml:
            schema:
              type: object
              properties:
                Start:
                  type: string
                  format: date-time
                  description: The start time for the user delegation key validity
                Expiry:
                  type: string
                  format: date-time
                  description: The expiry time for the user delegation key validity
      responses:
        '200':
          description: User delegation key returned
  /?restype=service&comp=batch:
    post:
      operationId: submitBlobBatch
      summary: Azure Blob Storage Submit blob batch
      description: Submits a batch request containing multiple subrequests. The batch request body is a multipart MIME message containing individual subrequests. Currently supports batch delete blob and batch set blob tier operations.
      tags:
      - Azure Blob Storage REST API
      parameters:
      - $ref: '#/components/parameters/ApiVersion'
      requestBody:
        required: true
        content:
          multipart/mixed:
            schema:
              type: string
              format: binary
      responses:
        '202':
          description: Batch request accepted and processed
  /?comp=blobs:
    get:
      operationId: findBlobsByTags
      summary: Azure Blob Storage Find blobs by tags
      description: Finds blobs in the storage account whose tags match a given search expression. The search expression uses a SQL-like syntax against blob index tags.
      tags:
      - Azure Blob Storage REST API
      parameters:
      - $ref: '#/components/parameters/ApiVersion'
      - name: where
        in: query
        required: true
        description: SQL-like filter expression for blob index tags, for example "tagkey"='tagvalue'.
        schema:
          type: string
      - name: marker
        in: query
        description: Continuation token for pagination.
        schema:
          type: string
      - name: maxresults
        in: query
        description: Maximum number of blobs to return.
        schema:
          type: integer
          minimum: 1
          maximum: 5000
      responses:
        '200':
          description: Blobs matching the tag filter expression returned
components:
  schemas:
    Container:
      type: object
      description: A blob container in Azure Storage.
      properties:
        Name:
          type: string
          description: The container name
        Properties:
          type: object
          description: System properties of the container
          properties:
            Last-Modified:
              type: string
              format: date-time
              description: Last modification timestamp
            Etag:
              type: string
              description: The ETag value for conditional operations
            LeaseStatus:
              type: string
              enum:
              - locked
              - unlocked
              description: The lease status of the container
            LeaseState:
              type: string
              enum:
              - available
              - leased
              - expired
              - breaking
              - broken
              description: The lease state of the container
            LeaseDuration:
              type: string
              enum:
              - infinite
              - fixed
              description: The duration type of the lease
            PublicAccess:
              type: string
              enum:
              - container
              - blob
              description: The public access level
            HasImmutabilityPolicy:
              type: boolean
              description: Whether an immutability policy exists on the container
            HasLegalHold:
              type: boolean
              description: Whether a legal hold is in effect
            DefaultEncryptionScope:
              type: string
              description: The default encryption scope for the container
            DenyEncryptionScopeOverride:
              type: boolean
              description: Whether blob-level encryption scope override is denied
            ImmutableStorageWithVersioningEnabled:
              type: boolean
              description: Whether version-level immutability is enabled
        Metadata:
          type: object
          description: User-defined key-value metadata pairs
          additionalProperties:
            type: string
    CorsRule:
      type: object
      description: A CORS rule for the Blob service.
      properties:
        AllowedOrigins:
          type: string
          description: Comma-separated list of allowed origin domains, or * for all
        AllowedMethods:
          type: string
          description: Comma-separated list of allowed HTTP methods (GET, PUT, etc.)
        AllowedHeaders:
          type: string
          description: Comma-separated list of allowed request headers
        ExposedHeaders:
          type: string
          description: Comma-separated list of response headers exposed to the client
        MaxAgeInSeconds:
          type: integer
          description: Maximum number of seconds the browser should cache the preflight response
    ContainerList:
      type: object
      description: The list of containers returned by the List Containers operation.
      properties:
        ServiceEndpoint:
          type: string
          description: The service endpoint URL
        MaxResults:
          type: integer
          description: Maximum number of results requested
        Prefix:
          type: string
          description: The prefix filter applied
        Containers:
          type: array
          description: The list of containers
          items:
            $ref: '#/components/schemas/Container'
        NextMarker:
          type: string
          description: Continuation token for the next page of results
    RetentionPolicy:
      type: object
      description: The retention policy configuration.
      properties:
        Enabled:
          type: boolean
          description: Whether the retention policy is enabled
        Days:
          type: integer
          minimum: 1
          maximum: 365
          description: Number of days data is retained
    StorageServiceProperties:
      type: object
      description: Properties of the Blob service.
      properties:
        Logging:
          type: object
          description: Azure Analytics logging settings
          properties:
            Version:
              type: string
              description: The version of analytics logging
            Read:
              type: boolean
              description: Whether read requests are logged
            Write:
              type: boolean
              description: Whether write requests are logged
            Delete:
              type: boolean
              description: Whether delete requests are logged
            RetentionPolicy:
              $ref: '#/components/schemas/RetentionPolicy'
        HourMetrics:
          $ref: '#/components/schemas/Metrics'
        MinuteMetrics:
          $ref: '#/components/schemas/Metrics'
        Cors:
          type: array
          description: CORS rules for the Blob service
          items:
            $ref: '#/components/schemas/CorsRule'
        DefaultServiceVersion:
          type: string
          description: The default REST API version for requests without a version
        DeleteRetentionPolicy:
          $ref: '#/components/schemas/RetentionPolicy'
        StaticWebsite:
          type: object
          description: Static website configuration
          properties:
            Enabled:
              type: boolean
              description: Whether static website hosting is enabled
            IndexDocument:
              type: string
              description: The default index document path
            ErrorDocument404Path:
              type: string
              description: The path to the 404 error document
    Metrics:
      type: object
      description: Azure Analytics metrics settings.
      properties:
        Version:
          type: string
          description: The version of metrics
        Enabled:
          type: boolean
          description: Whether metrics are enabled
        IncludeAPIs:
          type: boolean
          description: Whether to include API-level metrics
        RetentionPolicy:
          $ref: '#/components/schemas/RetentionPolicy'
  parameters:
    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'
  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