Skip to main content
Prefers a fresh NSM attestation via qos_host (live), with a short in-process cache (60s). If live fetch fails, falls back to the latest stored boot proof’s awsAttestationDocB64. Never returns an empty success. For full pivot ↔ quorum-manifest verification (PCRs + multi-sig approvals), prefer get_latest_boot_proof plus client-side verifyBootProof / verifyLatestBootProof. Use verifyAttestationDocument from @0xkey-io/crypto when you only need the hardware attestation chain (Turnkey-style attestation-validator).
string
required
Unique identifier for a given Organization (fleet-wide evidence; used for API contract consistency only).
string
required
Enclave app to attest (case-insensitive). Accepted values:
  • signer
  • notarizer
  • tls-fetcher / fetcher
  • evm-parser / transaction-parser / parser
  • ump / policy-engine / policy — Turnkey alias ump maps to 0xkey policy-engine
A successful response returns the following fields:
string
required
Raw COSE Sign1 attestation document bytes (JSON transport encodes as base64 / byte).
  • INVALID_ARGUMENT — unknown enclaveType or invalid organizationId
  • FAILED_PRECONDITION — no live qos_host and no stored boot proof yet
  • UNAVAILABLE — live NSM failed and store is empty
After deploying coordinator with [qos_host_control] and booted enclaves:
  1. POST /public/v1/query/get_attestation with enclaveType: "signer" (stamped).
  2. Assert attestationDocument is non-empty base64.
  3. Decode bytes and run verifyAttestationDocument from @0xkey-io/crypto (asOf = now).
  4. Optionally also call get_latest_boot_proof + verifyBootProof for the full pivot↔manifest chain.