Key Custody

Compute the SafeTx hash for a call from a passkey Safe

Runs the sanctions screen and spend policies on the call, reads the Safe's on-chain nonce (0 if not yet deployed), and returns the SafeTx hash — the raw 32 bytes are the WebAuthn challenge to sign with userVerification: "required".

post/v1/treasury/passkey-safes/{id}/prepare

Request

  • Base URL: https://api.1claw.co
  • URL: https://api.1claw.co/v1/treasury/passkey-safes/{id}/prepare
  • Auth: HTTP bearer

Request body

tostring required
value_weistring required
datastring

Hex calldata, optional.

Response

What to sign

safe_idstring uuid
safe_addressstring
chainstring
chain_idinteger
tostring
value_weistring
datastring
nonceinteger
operationinteger

Pass back to execute unchanged.

grant_idstring uuid

Present for grant setup / revoke; pass back to execute.

deploy_requiredboolean
safe_tx_hashstring

Hex SafeTx hash — the WebAuthn challenge (raw 32 bytes).

credential_idstring
transportsstring[] nullable

The passkey's registered transports (internal, hybrid, usb…) — pass as the allowCredentials hint so the browser asks the right authenticator.

passkey_namestring nullable
rp_idstring

Changes

No recorded changes to this operation across all 2 revisions of this API.