Skip to main content
POST
private/transfer_spot_debug

Body

application/json
amount
string<decimal>
required

Transfer amount in units of the asset, as a decimal string (e.g. "1.5") or JSON number.

asset_name
string
required
max_fee_usd
string<decimal>
required

Maximum sequencer fee the signer authorises, in USD, as a decimal string (e.g. "1.5") or a JSON number.

new_subaccount_manager
integer<uint32>
required

Non-zero → create a new sender-owned subaccount under this manager id.

Required range: x >= 0
nonce
string
required
signature
string
required
signature_expiry_sec
integer<uint64>
required
Required range: x >= 0
signer
string
required
sub_id
integer<uint128>
required
Required range: x >= 0
subaccount_id
integer<uint64>
required
Required range: x >= 0
to_subaccount_id
integer<uint64>
required

Existing destination subaccount. Ignored when new_subaccount_manager != 0.

Required range: x >= 0

Response

Success

Debug-route payload for one rebuilt action: the EIP-712 hashes plus the action input fields.

action_hash
string
required

EIP-712 struct hash of the Action: keccak256(abi.encode(action_typehash, …, encoded_data_hashed, …)).

action_typehash
string
required

ACTION_TYPEHASH — keccak of the Action struct type string; invariant across deployments.

domain_separator
string
required

EIP-712 domain separator of the Matching contract for this deployment.

encoded_data
string
required

ABI-encoded, module-specific action payload (the data bytes), 0x-hex.

encoded_data_hashed
string
required

keccak256(encoded_data) — the value packed into the struct hash.

expected_signer
string
required

The signer the signature is checked against.

input_data
object
required

The rebuilt Action envelope and its decoded module-specific data.

module
string
required

Per-action module contract address bound into the signed struct.

owner
string
required

Wallet that owns the subaccount the action applies to.

typed_data_hash
string
required

Final EIP-712 digest the client signs: keccak256(0x1901 || domain_separator || action_hash).

recovered_signer
string | null

null on the debug routes (no signature is checked there); on a signature-mismatch error this is the address actually recovered.