> **Can't find what you're looking for?** Use `search_docs` on the docs MCP server at `https://v3.viem.sh/api/mcp` to find what you need.

# Blobs

:::info
`Blobs` is a re-export of ox's [`Blobs`](https://oxlib.sh/api/Blobs). Refer to the ox documentation for the full reference.
:::

Utility functions for working with [EIP-4844](https://eips.ethereum.org/EIPS/eip-4844) Blobs.

## Functions

| Name                | Description                         |
| ------------------- | ----------------------------------- |
| [`Blobs.commitmentsToVersionedHashes`](/docs/utilities/blobs/commitmentsToVersionedHashes) | Transform a list of Commitments to Blob Versioned Hashes. |
| [`Blobs.commitmentToVersionedHash`](/docs/utilities/blobs/commitmentToVersionedHash) | Transform a Commitment to its Blob Versioned Hash. |
| [`Blobs.from`](/docs/utilities/blobs/from) | Transforms arbitrary data to [`Blobs.Blobs`](/docs/utilities/blobs/types#blobs). |
| [`Blobs.to`](/docs/utilities/blobs/to) | Transforms Ox-shaped [`Blobs.Blobs`](/docs/utilities/blobs/types#blobs) into the originating data. |
| [`Blobs.toBytes`](/docs/utilities/blobs/toBytes) | Transforms Ox-shaped [`Blobs.Blobs`](/docs/utilities/blobs/types#blobs) into the originating data. |
| [`Blobs.toCellProofs`](/docs/utilities/blobs/toCellProofs) | Compute the flat list of PeerDAS (EIP-7594) cell KZG proofs for a list of [`Blobs.Blobs`](/docs/utilities/blobs/types#blobs). Returns `128 * blobs.length` proofs, where `proofs[i * 128 + j]` is the proof for cell `j` of `blobs[i]`'s extended form. |
| [`Blobs.toCommitments`](/docs/utilities/blobs/toCommitments) | Compute commitments from a list of [`Blobs.Blobs`](/docs/utilities/blobs/types#blobs). |
| [`Blobs.toHex`](/docs/utilities/blobs/toHex) | Transforms Ox-shaped [`Blobs.Blobs`](/docs/utilities/blobs/types#blobs) into the originating data. |
| [`Blobs.toVersionedHashes`](/docs/utilities/blobs/toVersionedHashes) | Compute Blob Versioned Hashes from a list of [`Blobs.Blobs`](/docs/utilities/blobs/types#blobs). |

## Errors

| Name                | Description                         |
| ------------------- | ----------------------------------- |
| [`Blobs.BlobSizeTooLargeError`](/docs/utilities/blobs/errors#blobsblobsizetoolargeerror) | Thrown when the blob size is too large. |
| [`Blobs.EmptyBlobError`](/docs/utilities/blobs/errors#blobsemptybloberror) | Thrown when the blob is empty. |
| [`Blobs.EmptyBlobVersionedHashesError`](/docs/utilities/blobs/errors#blobsemptyblobversionedhasheserror) | Thrown when the blob versioned hashes are empty. |
| [`Blobs.InvalidVersionedHashSizeError`](/docs/utilities/blobs/errors#blobsinvalidversionedhashsizeerror) | Thrown when the blob versioned hash size is invalid. |
| [`Blobs.InvalidVersionedHashVersionError`](/docs/utilities/blobs/errors#blobsinvalidversionedhashversionerror) | Thrown when the blob versioned hash version is invalid. |

## Types

| Name                | Description                         |
| ------------------- | ----------------------------------- |
| [`Blobs.Blob`](/docs/utilities/blobs/types#blobsblob) | Root type for a Blob. |
| [`Blobs.Blobs`](/docs/utilities/blobs/types#blobsblobs) | A list of [`Blobs.Blob`](/docs/utilities/blobs/types#blob). |
