Get a signed root commitment

Return the signed Merkle Sum Tree root commitment for one asset in your platform's tree.

The tree is always your own: the platform is taken from your authenticated identity and cannot be supplied in the request, so another platform's roots are not addressable through this endpoint.

Verify the response by checking signature over the raw bytes of commitment_cbor using the key whose key_id matches signing_key_id in GET /por/keys, then decoding commitment_cbor and reading the committed values from it. The sibling JSON fields are an unsigned convenience view, and they are not a complete rendering of the signed payload.

This API does not cache these responses and sets no Cache-Control, but responses do carry a weak ETag, so a request sending If-None-Match can receive 304 Not Modified with no body. Nothing here suppresses caching by an intermediary, so treat latest as a moving target.

No rate limit is applied on these routes by this API. Edge limits may still apply, so handle 429 and honour Retry-After rather than assuming an unlimited budget.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
string
required
length ≥ 1

Chain-qualified asset identifier. A bare symbol denotes the asset on its home chain; a dotted form denotes the bridged asset on that chain.

string
required
length ≥ 1

Which root to return. Either the literal latest or a db_snapshot_id hex string to pin a specific historical snapshot.

latest resolves to the commitment with the highest publication_seq for this tree. To pin: take db_snapshot_id from a prior response and pass it here — the service looks up that exact snapshot.

Headers
string
required

HMAC-SHA256 signature of the request, base64-encoded. See the Authentication guide for the exact signing formula.

string
required

Current Unix timestamp in seconds. Must be within 60 seconds of server time or the request is rejected.

uuid

Optional client-supplied request ID used for tracing and idempotency. Must be a UUID v4. When omitted, zerohash generates one and returns it in the response X-Request-Id header.

string
enum
Defaults to application/json

Generated from available response content types

Allowed:
Responses

304

Your If-None-Match matched the current weak ETag. No body is returned.

Language
Credentials
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json
text/html
text/plain