Authentication & request signing
Every request needs an x-api-key and an HMAC-SHA256 x-signature.
Authentication & request signing
Every API request must include two headers:
x-api-key: <prefix>.<secret>— the key minted for your partner. The prefix is shown in the API Keys tab; the secret is only shown once, on creation.x-signature: sha256=<hex>— an HMAC-SHA256 of the raw request body, using your key's secret as the HMAC key.
Computing the signature
# bash: sign the raw JSON body
SECRET="your_key_secret"
BODY='{"did":"did:fullness:abcd1234","consent_token":"ct_opaque"}'
SIG=$(printf '%s' "$BODY" | openssl dgst -sha256 -hmac "$SECRET" -binary | xxd -p -c 256)
echo "x-signature: sha256=$SIG"
The same signature scheme is used across all Tier-0 endpoints. Keep your secret server-side — never embed it in a browser or mobile client.