← The evidence ledger
Evidence row 127216
Observed , by baseline/1.
- Kind
- listing
- About
- source_record x402_bazaar:https://yield.trdefi.com/v1/positions
- Recorded
- Previous row
- None: the first of its kind about this subject
- Body SHA-256
- ab8a42034e972095cfbfbc41571f0399f7af6b33a167b1ffd475eb2165c708af
- Leaf
- 0x6b7f575be13babc72c466d415c9337b0ed7bcc81b8ca5f0d405234a1f37ab9e7
What was observed
{
"endpoints": [
[
"x402",
"https://yield.trdefi.com/v1/positions"
]
],
"name": "yield.trdefi.com/v1/positions",
"owner_address": "0x4c96da02d7120bfb81594d0e924b237e0c74660d",
"raw": {
"accepts": [
{
"amount": "20000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"description": "TRDEFI prepare request",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxAmountRequired": "20000",
"maxTimeoutSeconds": 3600,
"mimeType": "application/json",
"network": "eip155:8453",
"payTo": "0x4C96dA02d7120BFb81594d0e924B237e0c74660d",
"resource": "https://yield.trdefi.com/v1/positions",
"scheme": "exact"
},
{
"amount": "20000",
"asset": "0x3600000000000000000000000000000000000000",
"description": "TRDEFI prepare request",
"extra": {
"name": "USDC",
"version": "2"
},
"maxAmountRequired": "20000",
"maxTimeoutSeconds": 3600,
"mimeType": "application/json",
"network": "eip155:5042",
"payTo": "0x4C96dA02d7120BFb81594d0e924B237e0c74660d",
"resource": "https://yield.trdefi.com/v1/positions",
"scheme": "exact"
}
],
"description": "TRDEFI prepare request",
"extensions": {
"bazaar": {
"description": "Create a non-custodial stablecoin market-making position and earn the swap fees it collects. Give a wallet, a stablecoin pair and a maker fee; get back unsigned transactions that ship the position on-chain. Use this when an agent or treasury wants to earn yield on USDC/USDT without depositing funds anywhere: the money never leaves the wallet, and revoking the allowance closes the position. TRDEFI never signs and never takes custody, and keeps a 0.05% protocol fee inside the order.",
"info": {
"input": {
"body": {
"example": {
"chain": "base",
"deposits": [
{
"amount": "1000000",
"symbol": "USDC"
},
{
"amount": "900000",
"symbol": "EURC"
}
],
"makerFeeBps": 30000,
"wallet": "0x0000000000000000000000000000000000000000"
},
"properties": {
"chain": {
"description": "Network to ship on. Exactly these three keys: `base` (8453), `arc` (5042), `baseSepolia` (84532). Any other value is rejected with 422.",
"enum": [
"base",
"arc",
"baseSepolia"
],
"type": "string"
},
"checkBalances": {
"default": false,
"description": "Add live balance checks to `preflight` so you can tell a human the transfer will succeed before asking them to approve.",
"type": "boolean"
},
"deposits": {
"description": "REQUIRED. Exactly two tokens, and they must be different symbols. Each `amount` is an integer string in base units — never a float. You supply both sides, so we never have to guess a price.",
"items": {
"properties": {
"amount": {
"description": "Amount in base units, as an integer string, e.g. \"1000000\" for 1 USDC.",
"type": "string"
},
"symbol": {
"description": "Token symbol or address, e.g. \"USDC\".",
"type": "string"
}
},
"required": [
"symbol",
"amount"
],
"type": "object"
},
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"includeApprovals": {
"default": true,
"description": "Set `false` to receive only the `ship` step. By default the `approve` steps are included only where your live allowance is short.",
"type": "boolean"
},
"makerFeeBps": {
"default": 0,
"description": "Fee you keep per swap, in the protocol's 1e7 scale (`30000` = 0.30%). Independent of, and on top of, the 0.05% protocol fee. Optional; defaults to 0.",
"maximum": 2000000,
"minimum": 0,
"type": "integer"
},
"wallet": {
"description": "Your own EVM address. The position belongs to it; funds never leave it.",
"pattern": "^0x[a-fA-F0-9]{40}$",
"type": "string"
}
},
"required": [
"chain",
"wallet",
"deposits"
],
"type": "object"
},
"method": "POST",
"type": "http"
},
"output": {
"description": "Unsigned transactions plus the strategy hash they will produce.",
"example": {
"chain": "base",
"note": "Sign with your own wallet. TRDEFI cannot sign or broadcast these.",
"strategyHash": "0x5928c6b6c24c08615ddde8b832e6f4b135550601e2bb903dba4123c1b8ff8f2c",
"transactions": [
{
"data": "0x095ea7b3...",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"value": "0"
}
]
},
"type": "object"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"properties": {
"body": {
"example": {
"chain": "base",
"deposits": [
{
"amount": "1000000",
"symbol": "USDC"
},
{
"amount": "900000",
"symbol": "EURC"
}
],
"makerFeeBps": 30000,
"wallet": "0x0000000000000000000000000000000000000000"
},
"properties": {
"chain": {
"description": "Network to ship on. Exactly these three keys: `base` (8453), `arc` (5042), `baseSepolia` (84532). Any other value is rejected with 422.",
"enum": [
"base",
"arc",
"baseSepolia"
],
"type": "string"
},
"checkBalances": {
"default": false,
"description": "Add live balance checks to `preflight` so you can tell a human the transfer will succeed before asking them to approve.",
"type": "boolean"
},
"deposits": {
"description": "REQUIRED. Exactly two tokens, and they must be different symbols. Each `amount` is an integer string in base units — never a float. You supply both sides, so we never have to guess a price.",
"items": {
"properties": {
"amount": {
"description": "Amount in base units, as an integer string, e.g. \"1000000\" for 1 USDC.",
"type": "string"
},
"symbol": {
"description": "Token symbol or address, e.g. \"USDC\".",
"type": "string"
}
},
"required": [
"symbol",
"amount"
],
"type": "object"
},
"maxItems": 2,
"minItems": 2,
"type": "array"
},
"includeApprovals": {
"default": true,
"description": "Set `false` to receive only the `ship` step. By default the `approve` steps are included only where your live allowance is short.",
"type": "boolean"
},
"makerFeeBps": {
"default": 0,
"description": "Fee you keep per swap, in the protocol's 1e7 scale (`30000` = 0.30%). Independent of, and on top of, the 0.05% protocol fee. Optional; defaults to 0.",
"maximum": 2000000,
"minimum": 0,
"type": "integer"
},
"wallet": {
"description": "Your own EVM address. The position belongs to it; funds never leave it.",
"pattern": "^0x[a-fA-F0-9]{40}$",
"type": "string"
}
},
"required": [
"chain",
"wallet",
"deposits"
],
"type": "object"
},
"method": {
"const": "POST"
},
"type": {
"const": "http"
}
},
"type": "object"
},
"output": {
"description": "Unsigned transactions plus the strategy hash they will produce.",
"example": {
"chain": "base",
"note": "Sign with your own wallet. TRDEFI cannot sign or broadcast these.",
"strategyHash": "0x5928c6b6c24c08615ddde8b832e6f4b135550601e2bb903dba4123c1b8ff8f2c",
"transactions": [
{
"data": "0x095ea7b3...",
"to": "0xa0b86991c6218b36c1d19d4a2e9eb0ce3606eb48",
"value": "0"
}
]
},
"type": "object"
}
},
"type": "object"
},
"serviceName": "TRDEFI create maker position",
"tags": [
"non-custodial yield",
"stablecoin liquidity",
"usdc usdt market making",
"earn swap fees",
"liquidity provision",
"defi yield",
"treasury yield",
"no custody",
"prepare transaction"
]
}
},
"lastUpdated": "2026-10-11T17:47:38.117Z",
"quality": {
"l30DaysTotalCalls": 7,
"l30DaysUniquePayers": 3,
"lastCalledAt": "2026-10-11T17:47:35.552Z"
},
"resource": "https://yield.trdefi.com/v1/positions",
"type": "http",
"x402Version": 2
},
"source": "x402_bazaar",
"summary": "TRDEFI prepare request"
}What the leaf hashes
{"body":"ab8a42034e972095cfbfbc41571f0399f7af6b33a167b1ffd475eb2165c708af","id":127216,"kind":"listing","method":"baseline/1","observed_us":1793025637663102,"prev":null,"subject":"x402_bazaar:https://yield.trdefi.com/v1/positions","subject_kind":"source_record"}Proof
Fold these into the leaf in order, hashing each sorted pair with keccak256, to reach the root of (296695 rows).
- 0x6b7f50570b0771d6b29f8ce8f27efe7251a7819a140d82cb7636ed6298aa4b3c
- 0x5297a6fb1824359b33d0abb108c18e624b7c62ff61dfc113db189259b2cb73dc
- 0x1bf866e6be39b4b85d20d7e3a657afc85f85bbcf07690f453b7c6e231399bb05
- 0xedb0abb1f2707ef742abad86fa85f56c2206f86a7506b70f756118c1738108e5
- 0x2940641ffe32aaa1c33c47ddb51e7e8ff92a6f0456825ddcc7a8f01b4a0d0a1b
- 0xc8c97922123f7cc31a364c1f4f5aa9589dad6e246712747ba27aa87ddc719378
- 0x1a507ea3a755d086d5887bbfe6867fbbed9e8212fe98fe5a8856cf77e1484eae
- 0x966c3b8dfcaf31f7df801a208e54f3d1a19321c3195baadb1d7014d4eb4c2396
- 0x959ad25eceb864e98140a3c5d86b87e2e87047d2132bf498fed758e10dc5218e
- 0x87894636102384a23857842def741b3253d54af0afaff0b11e7117549ccd8002
- 0xdfaea4285192101e7ab6e8e71853c71cef08df31a416be7a9f92f34cf897e13e
- 0x2a304c51963b65e3ca818b638b2e9a98297b7d6b6a3e14ecca2501aa13b9f556
- 0x9dc4d6f64bc3c323d2c45a28209068cd473b6979bd632a0d694bf94d19bc39df
- 0xfc9b5a81a7a83a1c735a4fe64590beb9db14d2366f463161358af28c3ea9a81d
- 0xa2d436d488e3600b0e5c3e3ed9c9234cd52853c59830b786334fd0c4292d9f40
- 0x47b89901b0f07938a6b9a66ddf35683903f79d756a7c7763665fd632758b08d0
- 0x9a83be955a206deb65b995adfd92c58fa31c95fbbf926bd199d300e70b08b26d
- 0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d
- 0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a
- Day root
- 0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8
- Chained
- 0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a
- Published
- On Arc Testnet, block 69251483: 0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae