Skip to main content
POST
Prepare ERC-8004 agent URI update
Prepares unsigned transactions for updating an ERC-8004 agent profile URI. This facade maps to agentSetURI.

Authentication

Preparing charges the first half of the operation price, and POST /send-transactions charges the rest. Each paid call answers 402 Payment Required with a PAYMENT-REQUIRED header describing the chain, asset, transfer method, amount, recipient, and timeout. Sign each payment locally and retry with X-PAYMENT. A valid x-api-key is accepted instead of paying, on both steps. See Authentication for the full credential matrix.

Key Fields

Response

Returns prepared unsigned transactions and txId. Sign the transaction locally and submit it to POST /send-transactions as { txId, signedTransactions }.

Next step

Preparing does not touch the chain. The response gives you txId, the unsigned transactions, and an x402Requirements quote.
1

Choose who broadcasts

client-signed (the default) — you sign the transaction and Brickken broadcasts it. client-broadcast — you sign and broadcast it yourself, then confirm with txHash. Either way the operation price is split evenly: half at prepare, half at send.
2

Submit it and settle the payment

POST to /send-transactions. The first attempt answers 402 Payment Required; read PAYMENT-REQUIRED, sign the payment locally, and retry with X-PAYMENT. An x-api-key is accepted here instead of paying.
3

Poll until it confirms

Call GET /get-transaction-status with the txId. Your payment settles only after the operation confirms, and is released if it reverts.
See Authentication for the payment handshake and Pricing for the per-operation cost.

Authorizations

X-Payment
string
header
required

Base64-encoded x402 payment payload. Supported for x402-eligible agentic methods on /x402/... facades, /prepare-transactions, and eligible /send-transactions retries.

Body

application/json
chainId
string
default:8453
required

Target operation chain ID. Use 8453 on Base mainnet or 84532 on Base Sepolia.

Examples:

"8453"

"84532"

executionMode
enum<string>
default:client-signed

Execution mode. Use brickken-relayed to let Brickken's relayer sign, pay gas, and broadcast (omit signerAddress). Use client-signed to sign the prepared transaction yourself.

Available options:
brickken-relayed,
client-signed
signerAddress
string

Wallet that signs the prepared blockchain transaction. Required only in client-signed mode; omit in brickken-relayed mode.

Pattern: ^0x[a-fA-F0-9]{40}$
gasLimit

Optional explicit gas limit.

nonce
number

Optional explicit nonce when managing nonces manually.

privateRpcUrl
string

Optional private RPC URL override.

ownerEmail
string<email>

Optional owner attribution email.

email
string<email>

Alias for ownerEmail where supported.

agentUuid
string

Stored tokenized agent UUID returned by agentRegister.

agentId
string

On-chain ERC-8004 agent ID.

name
string
description
string
image
string<uri>
services
object[]
metadata
object
aiModelName
string
aiModelProvider
string
tags
string[]
version
string
documentation
string<uri>
sourceCode
string<uri>
license
string
agentType
string
supportedTrust
string[]
x402Support
boolean
active
boolean
registrations
object[]

Response

Prepared unsigned transaction payload.

transactions
object
txId
string
info
object