Microsoft Azure Queue Storage

Microsoft Azure Queue Storage is a cloud-based service that allows users to store large amounts of messages in a queue for later processing. This service provides reliable and scalable message delivery for applications that need to decouple their components and scale independently. Azure Queue Storage can be used for tasks such as queuing up work items, passing messages between components, or handling asynchronous communication between different parts of an application.

OpenAPI Specification

azure-queue-storage-openapi-original.yml Raw ↑
swagger: '2.0'
info:
  title: Microsoft Azure Azure Queue Storage
  version: '2018-03-28'
  x-ms-code-generation-settings:
    header: MIT
    strictSpecAdherence: false
x-ms-parameterized-host:
  hostTemplate: '{url}'
  useSchemePrefix: false
  positionInOperation: first
  parameters:
    - $ref: '#/parameters/Url'
securityDefinitions:
  queue_shared_key:
    type: apiKey
    name: Authorization
    in: header
schemes:
  - https
consumes:
  - application/xml
produces:
  - application/xml
paths: {}
x-ms-paths:
  /?restype=service&comp=properties:
    put:
      tags:
        - service
      operationId: Service_SetProperties
      description: >-
        Sets properties for a storage account's Queue service endpoint,
        including properties for Storage Analytics and CORS (Cross-Origin
        Resource Sharing) rules
      parameters:
        - $ref: '#/parameters/StorageServiceProperties'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '202':
          description: Success (Accepted)
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    get:
      tags:
        - service
      operationId: Service_GetProperties
      description: >-
        gets the properties of a storage account's Queue service, including
        properties for Storage Analytics and CORS (Cross-Origin Resource
        Sharing) rules.
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '200':
          description: Success.
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
          schema:
            $ref: '#/definitions/StorageServiceProperties'
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - name: restype
        description: restype
        in: query
        required: true
        type: string
        enum:
          - service
      - name: comp
        description: comp
        in: query
        required: true
        type: string
        enum:
          - properties
  /?restype=service&comp=stats:
    get:
      tags:
        - service
      operationId: Service_GetStatistics
      description: >-
        Retrieves statistics related to replication for the Queue service. It is
        only available on the secondary location endpoint when read-access
        geo-redundant replication is enabled for the storage account.
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '200':
          description: Success.
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
          schema:
            $ref: '#/definitions/StorageServiceStats'
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - name: restype
        description: restype
        in: query
        required: true
        type: string
        enum:
          - service
      - name: comp
        description: comp
        in: query
        required: true
        type: string
        enum:
          - stats
  /?comp=list:
    get:
      tags:
        - service
      operationId: Service_ListQueuesSegment
      description: >-
        The List Queues Segment operation returns a list of the queues under the
        specified account
      parameters:
        - $ref: '#/parameters/Prefix'
        - $ref: '#/parameters/Marker'
        - $ref: '#/parameters/MaxResults'
        - $ref: '#/parameters/ListQueuesInclude'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '200':
          description: Success.
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
          schema:
            $ref: '#/definitions/ListQueuesSegmentResponse'
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
      x-ms-pageable:
        nextLinkName: NextMarker
    parameters:
      - name: comp
        description: comp
        in: query
        required: true
        type: string
        enum:
          - list
  /{queueName}:
    put:
      tags:
        - service
      operationId: Queue_Create
      description: creates a new queue under the given account.
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/Metadata'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '201':
          description: Success, queue created.
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        '204':
          description: Success, queue created.
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    delete:
      tags:
        - queue
      operationId: Queue_Delete
      description: operation permanently deletes the specified queue
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '204':
          description: No Content
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - $ref: '#/parameters/QueueName'
  /{queueName}?comp=metadata:
    get:
      tags:
        - queue
      operationId: Queue_GetProperties
      description: >-
        Retrieves user-defined metadata and queue properties on the specified
        queue. Metadata is associated with the queue as name-values pairs.
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '200':
          description: Success.
          headers:
            x-ms-meta:
              type: string
              x-ms-client-name: Metadata
              x-ms-header-collection-prefix: x-ms-meta-
            x-ms-approximate-messages-count:
              type: integer
              x-ms-client-name: ApproximateMessagesCount
              description: >-
                The approximate number of messages in the queue. This number is
                not lower than the actual number of messages in the queue, but
                could be higher.
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    put:
      tags:
        - queue
      operationId: Queue_SetMetadata
      description: >-
        sets user-defined metadata on the specified queue. Metadata is
        associated with the queue as name-value pairs.
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/Metadata'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '204':
          description: No Content
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - $ref: '#/parameters/QueueName'
      - name: comp
        description: comp
        in: query
        required: true
        type: string
        enum:
          - metadata
  /{queueName}?comp=acl:
    get:
      tags:
        - queue
      operationId: Queue_GetAccessPolicy
      description: >-
        returns details about any stored access policies specified on the queue
        that may be used with Shared Access Signatures.
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '200':
          description: Success
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
          schema:
            $ref: '#/definitions/SignedIdentifiers'
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    put:
      tags:
        - queue
      operationId: Queue_SetAccessPolicy
      description: >-
        sets stored access policies for the queue that may be used with Shared
        Access Signatures
      parameters:
        - $ref: '#/parameters/QueueAcl'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '204':
          description: No Content
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - $ref: '#/parameters/QueueName'
      - name: comp
        description: comp
        in: query
        required: true
        type: string
        enum:
          - acl
  /{queueName}/messages:
    get:
      tags:
        - message
      operationId: Messages_Dequeue
      description: >-
        The Dequeue operation retrieves one or more messages from the front of
        the queue.
      parameters:
        - $ref: '#/parameters/NumOfMessages'
        - $ref: '#/parameters/VisibilityTimeout'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '200':
          description: OK
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
          schema:
            $ref: '#/definitions/DequeuedMessagesList'
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    delete:
      tags:
        - message
      operationId: Messages_Clear
      description: The Clear operation deletes all messages from the specified queue.
      parameters:
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '204':
          description: No Content
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    post:
      tags:
        - message
      operationId: Messages_Enqueue
      description: >-
        The Enqueue operation adds a new message to the back of the message
        queue. A visibility timeout can also be specified to make the message
        invisible until the visibility timeout expires. A message must be in a
        format that can be included in an XML request with UTF-8 encoding. The
        encoded message can be up to 64 KB in size for versions 2011-08-18 and
        newer, or 8 KB in size for previous versions.
      parameters:
        - $ref: '#/parameters/RequiredQueueMessage'
        - $ref: '#/parameters/VisibilityTimeoutForEnqueue'
        - $ref: '#/parameters/MessageTTL'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '201':
          description: Created
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
          schema:
            $ref: '#/definitions/EnqueuedMessageList'
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - $ref: '#/parameters/QueueName'
  /{queueName}/messages?peekonly=true:
    get:
      tags:
        - message
      operationId: Messages_Peek
      description: >-
        The Peek operation retrieves one or more messages from the front of the
        queue, but does not alter the visibility of the message.
      parameters:
        - $ref: '#/parameters/NumOfMessages'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '200':
          description: OK
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
          schema:
            $ref: '#/definitions/PeekedMessagesList'
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - $ref: '#/parameters/QueueName'
      - name: peekonly
        description: Peek message(s).
        in: query
        required: true
        type: string
        enum:
          - 'true'
  /{queueName}/messages/{messageid}:
    put:
      tags:
        - messageId
      operationId: MessageId_Update
      description: >-
        The Update operation was introduced with version 2011-08-18 of the Queue
        service API. The Update Message operation updates the visibility timeout
        of a message. You can also use this operation to update the contents of
        a message. A message must be in a format that can be included in an XML
        request with UTF-8 encoding, and the encoded message can be up to 64KB
        in size.
      parameters:
        - $ref: '#/parameters/QueueMessage'
        - $ref: '#/parameters/PopReceipt'
        - $ref: '#/parameters/VisibilityTimeoutRequired'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '204':
          description: No Content
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
            x-ms-popreceipt:
              x-ms-client-name: PopReceipt
              type: string
              description: The pop receipt of the queue message.
            x-ms-time-next-visible:
              x-ms-client-name: TimeNextVisible
              type: string
              format: date-time-rfc1123
              description: >-
                A UTC date/time value that represents when the message will be
                visible on the queue.
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    delete:
      tags:
        - messageId
      operationId: MessageId_Delete
      description: The Delete operation deletes the specified message.
      parameters:
        - $ref: '#/parameters/PopReceipt'
        - $ref: '#/parameters/Timeout'
        - $ref: '#/parameters/ApiVersionParameter'
        - $ref: '#/parameters/ClientRequestId'
      responses:
        '204':
          description: No Content
          headers:
            x-ms-request-id:
              x-ms-client-name: RequestId
              type: string
              description: >-
                This header uniquely identifies the request that was made and
                can be used for troubleshooting the request.
            x-ms-version:
              x-ms-client-name: Version
              type: string
              description: >-
                Indicates the version of the Queue service used to execute the
                request. This header is returned for requests made against
                version 2009-09-19 and above.
            Date:
              type: string
              format: date-time-rfc1123
              description: >-
                UTC date/time value generated by the service that indicates the
                time at which the response was initiated
        default:
          description: Failure
          headers:
            x-ms-error-code:
              x-ms-client-name: ErrorCode
              type: string
          schema:
            $ref: '#/definitions/StorageError'
    parameters:
      - $ref: '#/parameters/QueueName'
      - $ref: '#/parameters/MessageId'
definitions:
  AccessPolicy:
    type: object
    description: An Access policy
    properties:
      Start:
        description: the date-time the policy is active
        type: string
        format: date-time
      Expiry:
        description: the date-time the policy expires
        type: string
        format: date-time
      Permission:
        description: the permissions for the acl policy
        type: string
  ListQueuesSegmentResponse:
    xml:
      name: EnumerationResults
    description: The object returned when calling List Queues on a Queue Service.
    type: object
    required:
      - ServiceEndpoint
      - Prefix
      - MaxResults
      - NextMarker
    properties:
      ServiceEndpoint:
        type: string
        xml:
          attribute: true
      Prefix:
        type: string
      Marker:
        type: string
      MaxResults:
        type: integer
      QueueItems:
        xml:
          wrapped: true
          name: Queues
        type: array
        items:
          $ref: '#/definitions/QueueItem'
      NextMarker:
        type: string
  CorsRule:
    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
    type: object
    required:
      - AllowedOrigins
      - AllowedMethods
      - AllowedHeaders
      - ExposedHeaders
      - MaxAgeInSeconds
    properties:
      AllowedOrigins:
        description: >-
          The origin domains that are permitted to make a request against the
          storage service via CORS. The origin domain is the domain from which
          the request originates. Note that the origin must be an exact
          case-sensitive match with the origin that the user age sends to the
          service. You can also use the wildcard character '*' to allow all
          origin domains to make requests via CORS.
        type: string
      AllowedMethods:
        description: >-
          The methods (HTTP request verbs) that the origin domain may use for a
          CORS request. (comma separated)
        type: string
      AllowedHeaders:
        description: >-
          the request headers that the origin domain may specify on the CORS
          request.
        type: string
      ExposedHeaders:
        description: >-
          The respon

# --- truncated at 32 KB (51 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/microsoft-azure/refs/heads/main/openapi/azure-queue-storage-openapi-original.yml