---
title: "Digest Manifest Builder"
method: POST
path: "/v1/tools/build_digest_manifest"
tags: ["TODO_TAGS_REVIEW", "TODO_AP2_EXPORT_REVIEW"]
---

# Digest Manifest Builder

`POST /v1/tools/build_digest_manifest`

## Request

- Base URL: `https://ainumbers.co`
- URL: `https://ainumbers.co/v1/tools/build_digest_manifest`
- Auth: none declared

Binds N file digests into one canonical, hash-anchored manifest. manifest_sha256 is SHA-256 over the JCS-canonical sorted entries array. This builds flat manifests with no tree, which is a different job from verify_merkle_batch (cry-04, which verifies Merkle proofs); BrowserChain's log owns Merkle trees. Also serves the plain checksum-tool use case. Returns the manifest plus checks for duplicate names, duplicate digests, malformed hex, and path-like names that are flagged and basenamed. Feeds the conversion receipt builder. Zero network, zero PII.

**Tool URL:** https://ainumbers.co/chaingraph/art-194-digest-manifest-builder.html

## Request body

- object
  - `entries` unknown[]
    - unknown
  - `purpose` unknown
  - `sort` unknown

## Response `200`

Successful tool execution result

- object
  - `all_checks_pass` boolean
  - `checks` object[]
    - `check` string
    - `detail` string
    - `pass` boolean
  - `manifest` object
    - `entries` object[]
      - `bytes` integer
      - `media_type` string
      - `name` string
      - `sha256` string
    - `entry_count` integer
    - `manifest_sha256` string
    - `manifest_version` string
    - `purpose` string
    - `sort` string
    - `total_bytes` integer

---

[API](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite.md) · [All operations](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/llms.txt) · [OpenAPI document](https://skmtc.dev/ainumbers/apis/ainumbers-co-fintech-intelligence-suite/revisions/b462e4f5bb28?raw)
