ROOSTby Axowl

Docs

HTTPS gateway API

Use a trusted loopback service or an authenticated HTTPS gateway that authorizes the caller to use the chosen identifier. A key identifier alone grants no tenant isolation.

POST /v1/sign

{ "hash": "<SHA-256 hex digest>", "keyId": "release-ledger" }
{ "signature": "IRON3:<base64(kid1:ctr1:sig1|kid2:ctr2:sig2)>",
  "quorum": "2/3",
  "signers": [{ "kid": "...", "ctr": 42, "sig": "..." }],
  "missing": ["<kid>"] }

Fewer than two voters: 503 {"error":"QUORUM_NOT_MET","have":1,"need":2}.

POST /v1/verify

{ "data": "<the same SHA-256 hex digest>", "keyId": "release-ledger", "signature": "IRON3:..." }

Answers {"valid": true} when enough voters confirm. A receipt naming an unknown voter answers {"valid": false, "reason": "UNKNOWN_KID"}.

Hashing

The SDKs hash raw message bytes with SHA-256. If you call the API directly, send the digest. Passing the text of an existing digest to an SDK hashes it again.

Other endpoints

GET /v1/health and GET /v1/kill-switch report the proxy state.