Azure Blob Storage · Capability

Azure Blob Storage REST API — Page Blobs

Azure Blob Storage REST API — Page Blobs. 4 operations. Lead operation: Azure Blob Storage Incremental copy blob. Self-contained Naftiko capability covering one Azure Blob Storage business surface.

Azure Blob Storage REST API — Page Blobs is a Naftiko capability published by Azure Blob Storage, one of 6 capabilities the APIs.io network indexes for this provider. It bundles 4 operations across the PUT and GET methods rooted at /v1/{…}.

The capability includes 2 read-only operations and 2 state-changing operations. Lead operation: Azure Blob Storage Incremental copy blob. Can be deployed as a REST endpoint, MCP tool, or Agent Skill via Naftiko.

Tagged areas include Azure Blob Storage and Page Blobs.

Run with Naftiko Azure Blob StoragePage Blobs

What You Can Do

PUT
Incrementalcopyblob — Azure Blob Storage Incremental copy blob
/v1/{container}/blob-comp-incrementalcopy
PUT
Putpage — Azure Blob Storage Put page
/v1/{container}/blob-comp-page
GET
Getpageranges — Azure Blob Storage Get page ranges
/v1/{container}/blob-comp-pagelist
GET
Getpagerangesdiff — Azure Blob Storage Get page ranges diff
/v1/{container}/blob-comp-pagelist-diff

MCP Tools

azure-blob-storage-incremental-copy

Azure Blob Storage Incremental copy blob

idempotent
azure-blob-storage-put-page

Azure Blob Storage Put page

idempotent
azure-blob-storage-get-page

Azure Blob Storage Get page ranges

read-only idempotent
azure-blob-storage-get-page-2

Azure Blob Storage Get page ranges diff

read-only idempotent

Capability Spec

rest-page-blobs.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Azure Blob Storage REST API — Page Blobs
  description: 'Azure Blob Storage REST API — Page Blobs. 4 operations. Lead operation: Azure Blob Storage Incremental copy
    blob. Self-contained Naftiko capability covering one Azure Blob Storage business surface.'
  tags:
  - Azure Blob Storage
  - Page Blobs
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    AZURE_BLOB_STORAGE_API_KEY: AZURE_BLOB_STORAGE_API_KEY
capability:
  consumes:
  - type: http
    namespace: rest-page-blobs
    baseUri: https://{accountName}.blob.core.windows.net
    description: Azure Blob Storage REST API — Page Blobs business capability. Self-contained, no shared references.
    resources:
    - name: container-blob}?comp=incrementalcopy
      path: /{container}/{blob}?comp=incrementalcopy
      operations:
      - name: incrementalcopyblob
        method: PUT
        description: Azure Blob Storage Incremental copy blob
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: x-ms-copy-source
          in: header
          type: string
          description: URL of the source page blob snapshot.
          required: true
    - name: container-blob}?comp=page
      path: /{container}/{blob}?comp=page
      operations:
      - name: putpage
        method: PUT
        description: Azure Blob Storage Put page
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: x-ms-page-write
          in: header
          type: string
          description: The page write operation type.
          required: true
        - name: x-ms-range
          in: header
          type: string
          description: The byte range for the page write operation. Must be aligned to 512-byte boundaries. Format is bytes=startByte-endByte.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: container-blob}?comp=pagelist
      path: /{container}/{blob}?comp=pagelist
      operations:
      - name: getpageranges
        method: GET
        description: Azure Blob Storage Get page ranges
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: x-ms-range
          in: header
          type: string
          description: Return only page ranges within the specified byte range.
    - name: container-blob}?comp=pagelist&diff
      path: /{container}/{blob}?comp=pagelist&diff
      operations:
      - name: getpagerangesdiff
        method: GET
        description: Azure Blob Storage Get page ranges diff
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: prevsnapshot
          in: query
          type: string
          description: The snapshot identifier for the previous snapshot.
          required: true
    authentication:
      type: bearer
      token: '{{env.AZURE_BLOB_STORAGE_API_KEY}}'
  exposes:
  - type: rest
    namespace: rest-page-blobs-rest
    port: 8080
    description: REST adapter for Azure Blob Storage REST API — Page Blobs. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/{container}/blob-comp-incrementalcopy
      name: container-blob-comp-incrementalcopy
      description: REST surface for container-blob}?comp=incrementalcopy.
      operations:
      - method: PUT
        name: incrementalcopyblob
        description: Azure Blob Storage Incremental copy blob
        call: rest-page-blobs.incrementalcopyblob
        with:
          x-ms-copy-source: rest.x-ms-copy-source
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{container}/blob-comp-page
      name: container-blob-comp-page
      description: REST surface for container-blob}?comp=page.
      operations:
      - method: PUT
        name: putpage
        description: Azure Blob Storage Put page
        call: rest-page-blobs.putpage
        with:
          x-ms-page-write: rest.x-ms-page-write
          x-ms-range: rest.x-ms-range
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{container}/blob-comp-pagelist
      name: container-blob-comp-pagelist
      description: REST surface for container-blob}?comp=pagelist.
      operations:
      - method: GET
        name: getpageranges
        description: Azure Blob Storage Get page ranges
        call: rest-page-blobs.getpageranges
        with:
          x-ms-range: rest.x-ms-range
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{container}/blob-comp-pagelist-diff
      name: container-blob-comp-pagelist-diff
      description: REST surface for container-blob}?comp=pagelist&diff.
      operations:
      - method: GET
        name: getpagerangesdiff
        description: Azure Blob Storage Get page ranges diff
        call: rest-page-blobs.getpagerangesdiff
        with:
          prevsnapshot: rest.prevsnapshot
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: rest-page-blobs-mcp
    port: 9090
    transport: http
    description: MCP adapter for Azure Blob Storage REST API — Page Blobs. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: azure-blob-storage-incremental-copy
      description: Azure Blob Storage Incremental copy blob
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: rest-page-blobs.incrementalcopyblob
      with:
        x-ms-copy-source: tools.x-ms-copy-source
      outputParameters:
      - type: object
        mapping: $.
    - name: azure-blob-storage-put-page
      description: Azure Blob Storage Put page
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: rest-page-blobs.putpage
      with:
        x-ms-page-write: tools.x-ms-page-write
        x-ms-range: tools.x-ms-range
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: azure-blob-storage-get-page
      description: Azure Blob Storage Get page ranges
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-page-blobs.getpageranges
      with:
        x-ms-range: tools.x-ms-range
      outputParameters:
      - type: object
        mapping: $.
    - name: azure-blob-storage-get-page-2
      description: Azure Blob Storage Get page ranges diff
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-page-blobs.getpagerangesdiff
      with:
        prevsnapshot: tools.prevsnapshot
      outputParameters:
      - type: object
        mapping: $.