Skip to main content
GET
/api/v1/x402/transactions/{walletAddress}

Authorizations

SIGN-IN-WITH-X
string
header
required

Wallet-based authentication using the x402 sign-in-with-x extension. Supports EVM wallets on Base (EIP-4361 SIWE, including EIP-1271 smart contract wallets) and Ed25519 wallets on Solana mainnet.

Header format: Base64-encoded JSON proof with these fields:

  • domain — api.venice.ai
  • address — EVM or Solana wallet address
  • uri — URL of the requested resource
  • version — "1"
  • chainId — "eip155:8453" for Base or "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp" for Solana
  • type — "eip191" for EVM wallets or "ed25519" for Solana
  • nonce — the nonce from the latest 402 challenge (extensions["sign-in-with-x"].info.nonce), or 32 random hex characters. Each nonce works once.
  • issuedAt — ISO 8601 time the proof was signed. Proofs older than 5 minutes are rejected.
  • expirationTime, notBefore, statement, resources — optional
  • signature — signature over the message built from these fields: an EIP-4361 SIWE message for EVM (hex) or the Solana sign-in message (base58)

Venice rebuilds the signed message from these fields, with the bare reference on its Chain ID line (8453, 5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp). Proofs from older clients that send the signed message itself are still accepted.

Example (TypeScript, viem):

SDK: npm install venice-x402-client provides VeniceClient and createAuthFetch which handle this automatically.

Billing: x402 users pay from a prepaid x402 credit balance. Top up via POST /x402/top-up. When balance is insufficient, endpoints return 402 with structured top-up instructions.

Headers

SIGN-IN-WITH-X
string
required

base64-encoded JSON SIWX payload proving EVM or Solana wallet ownership. The legacy X-Sign-In-With-X header is also accepted during migration.

Example:

"siwx_example_token"

Path Parameters

walletAddress
string
required

EVM or Solana wallet address.

Pattern: ^(0x[a-fA-F0-9]{40}|[1-9A-HJ-NP-Za-km-z]{32,44})$
Example:

"0xYOUR_WALLET_ADDRESS"

Query Parameters

limit
integer
default:50

Maximum number of transactions to return.

Required range: 1 <= x <= 100
Example:

50

offset
integer | null
default:0

Number of transactions to skip before returning results.

Required range: 0 <= x <= 9007199254740991
Example:

0

Response

x402 transaction history for the wallet.

success
enum<boolean>
required
Available options:
true
data
object
required