How can we export details of all blobs in an Azure Blob Storage container to a CSV file, including blob versions?

Shiv 0 Reputation points
2026-09-10T05:50:10.8366667+00:00

Hi Microsoft Team,

We need to export all blobs and their versions from an Azure Blob Storage containers into a CSV for migration/synchronization with Salesforce.

The storage could contain 1 TB+ of data and potentially millions of blobs/versions.

What is the recommended Azure-supported approach?
We need to generate a CSV containing metadata/details such as:

  • Storage account name
  • Container name
  • Blob name/path
  • Blob URL
  • Blob size
  • ETag
  • Last modified date
  • Blob type
  • Version ID
  • Version-specific ETag
  • Version-specific size
  • Version-specific last modified date
  • Metadata, if possible

Specifically, we need to know:

  • How to retrieve all blobs and all versions.
  • Whether Version ID is available for each version.
  • Maximum number of blobs returned per request and pagination limits.
  • Whether there are limits based on 1 TB+ storage or number of blobs.
  • Whether Azure Blob Inventory can generate this information as CSV/Parquet.
  • Which fields are available (blob name, size, ETag, last modified, Version ID, metadata, etc.).
  • The recommended approach for exporting millions of records efficiently without manually making one request per blob. Thank you.
Azure Blob Storage
Azure Blob Storage

An Azure service that stores unstructured data in the cloud as blobs.

0 comments No comments

1 answer

Sort by: Most helpful
  1. Deepanshu katara 18,230 Reputation points MVP Volunteer Moderator
    2026-09-10T09:04:04.45+00:00

    Hello , Welcome to MS Q&A

    .For 1 TB+ storage and potentially millions of blobs/versions, I would recommend using Azure Blob Inventory rather than making individual API calls for every blob.

    Blob Inventory is Azure’s native capability for generating a scheduled inventory of blobs and blob versions, and it can output the results in CSV or Parquet. It can include fields such as:

    • Blob name/path
    • Version ID
    • Current version indicator
    • Size
    • ETag
    • Last modified
    • Blob type
    • Metadata/properties

    The inventory can generate multiple output files for large datasets, along with a manifest that helps process all the generated files.

    Microsoft docs: Azure Blob Inventory – Microsoft Learn

    For the Blob URL, Storage Account and Container, these can be derived from the inventory context + blob name, so we don't need to call the API separately for every blob.

    If we need a real-time/on-demand export instead of a scheduled inventory, the alternative is List Blobs with include=versions and continuation tokens. Azure returns up to 5,000 blobs per request, so the process needs to handle pagination until all records are retrieved.

    Microsoft docs: Enumerating Blob Resources – Microsoft Learn

    So, in short:

    Millions of blobs/versions → Azure Blob Inventory → CSV/Parquet → Salesforce migration pipeline

    This would be the most Azure-native and scalable approach. If the requirement is an immediate snapshot rather than scheduled inventory, then we should go with the List Blobs + pagination approach.

    Pls check and let me know if any further ques

    Thanks

    Deepanshu

    Was this answer helpful?


Your answer

Answers can be marked as 'Accepted' by the question author and 'Recommended' by moderators, which helps users know the answer solved the author's problem.