{"slug":"chain-tools-use-x402atlas-com-merkle-build-1e5614","title":"Keccak Merkle tree and proof builder — generate indexed sorted-pair inclusion pr","host":"chain-tools.use.x402atlas.com","method":"POST","resource":"https://chain-tools.use.x402atlas.com/merkle/build","category":"other","description":"Keccak Merkle tree and proof builder — generate indexed sorted-pair inclusion proofs with domain separation and explicit odd-node promotion.","price_listed":0.01,"price_asked":0.01,"state":"answering","state_label":"Answering","checks_7d":1,"answered_7d":1,"latency_ms_median":605,"reported_calls_30d":2,"reported_payers_30d":1,"networks":["eip155:137","eip155:42161","eip155:8453"],"badge":"unverified","paid_checks_7d":0,"paid_ok_7d":0,"example_input":{"body":{"leaves":["0x616c706861","0x62657461","0x67616d6d61"]},"bodyType":"json","method":"POST","type":"http"},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"body":{"additionalProperties":false,"properties":{"leaves":{"description":"Raw leaves in stable caller order; duplicate values remain distinct by zero-based index","items":{"description":"Zero to 4096 raw bytes as even-length 0x hexadecimal","maxLength":8194,"pattern":"^0x(?:[0-9a-fA-F]{2})*$","type":"string"},"maxItems":1024,"minItems":1,"type":"array"}},"required":["leaves"],"type":"object"},"bodyType":{"enum":["json","form-data","text"],"type":"string"},"method":{"enum":["POST"],"type":"string"},"type":{"const":"http","type":"string"}},"required":["type","method","bodyType","body"],"type":"object"},"output":{"properties":{"example":{"additionalProperties":false,"properties":{"_atlas":{"additionalProperties":false,"description":"Atlas documentation and related-route metadata added after deployment","properties":{"docs":{"description":"Documentation URL for this bridge","format":"uri","maxLength":512,"type":"string"},"related":{"description":"Bounded related Atlas routes","items":{"additionalProperties":false,"description":"One related Atlas route","properties":{"bridge":{"description":"Related bridge name","maxLength":64,"type":"string"},"docs":{"description":"Related bridge documentation URL","format":"uri","maxLength":512,"type":"string"},"summary":{"description":"Short capability summary","maxLength":256,"type":"string"},"url":{"description":"Related route URL","format":"uri","maxLength":512,"type":"string"}},"required":["bridge","url","docs","summary"],"type":"object"},"maxItems":3,"type":"array"}},"required":["docs"],"type":"object"},"algorithm_version":{"const":"keccak256-sorted-pairs-v1","description":"Atlas domain-separated sorted-pair profile","type":"string"},"leaf_count":{"description":"Number of original leaves","maximum":1024,"minimum":1,"type":"integer"},"leaf_hashes":{"description":"Domain-separated leaf hashes in original order","items":{"description":"Leaf hash","pattern":"^0x[0-9a-f]{64}$","type":"string"},"maxItems":1024,"minItems":1,"type":"array"},"operation":{"const":"merkle-build","description":"Stable route operation","type":"string"},"proofs":{"description":"Exactly one proof for every original index","items":{"additionalProperties":false,"properties":{"index":{"description":"Zero-based original leaf index","maximum":1023,"minimum":0,"type":"integer"},"steps":{"description":"Sibling hashes in leaf-to-root order; odd promotions add no step","items":{"additionalProperties":false,"properties":{"hash":{"description":"Sibling node hash; direction is unnecessary because pairs sort by hash","pattern":"^0x[0-9a-f]{64}$","type":"string"}},"required":["hash"],"type":"object"},"maxItems":10,"type":"array"}},"required":["index","steps"],"type":"object"},"maxItems":1024,"minItems":1,"type":"array"},"root":{"description":"Tree root","pattern":"^0x[0-9a-f]{64}$","type":"string"},"warnings":{"description":"Always empty","items":{"description":"Warning","type":"string"},"maxItems":0,"type":"array"}},"required":["operation","algorithm_version","leaf_count","root","leaf_hashes","proofs","warnings"],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"},"history":[{"day":"2026-09-24","reachable":true,"status":402,"valid_402":true,"asked_usdc":0.01,"price_match":true,"latency_ms":605,"error":null}],"description_full":"Keccak Merkle tree and proof builder — generate indexed sorted-pair inclusion proofs with domain separation and explicit odd-node promotion.","last_updated":"2026-09-15T06:32:31.311Z","schemes":["exact"]}