Create wallet transaction challenge
Handles POST /v1/auth/wallet/transaction-challenge via post.v1.auth.wallet.transaction_challenge.
Body
JSON request payload for post.v1.auth.wallet.transaction_challenge.
Solana wallet pubkey the caller intends to authenticate as. The challenge transaction is built with this pubkey as the fee payer / sole signer.
Response
Challenge issued
RFC3339 timestamp at which this challenge expires.
Opaque server-issued nonce identifier. Echo on the subsequent login call.
Base64-encoded unsigned Solana legacy transaction (bincode wire format) containing a single Memo program instruction that encodes the login challenge. Wallets are allowed to include additional ComputeBudget or Lighthouse instructions before signing (some inject these automatically, in arbitrary positions), but the Memo instruction, the recent blockhash, and the wallet's required-signer slot must be preserved. The transaction uses a deterministic, non-recent blockhash and is never submitted on-chain.