SPB Git

Repository Public

testnet-live-proof.json 5.1 KB 164 lines json

1{2 "recordedAt": "2026-11-11T04:32:24.615Z",3 "network": "testnet",4 "note": "throwaway seed generated in memory by scripts/hl-live-testnet.mts; the account never existed on the venue",5 "account": "0xe06252f11d8beac14b7f8a026dd02febdba1400f",6 "agent": "0x78d1c6e0bee0f04b2ca06d5e03f14f20f15cf5c8",7 "exchanges": [8  {9   "step": "API authorization/approve (signer signs approveAgent with the wallet key; the API sends it to the testnet)",10   "status": 422,11   "answer": {12    "error": "venue_rejected",13    "message": "the venue did not register the trading key: hyperliquid: Must deposit before performing actions. User: 0xe06252f11d8beac14b7f8a026dd02febdba1400f — the authorization was revoked on the signer, nothing can trade. Fund the venue account first if the venue asks for a deposit, then prepare a new authorization."14   }15  },16  {17   "step": "approveAgent signed by the wallet key (user-signed action)",18   "request": {19    "action": {20     "type": "approveAgent",21     "hyperliquidChain": "Testnet",22     "signatureChainId": "0x66eee",23     "agentAddress": "0x78d1c6e0bee0f04b2ca06d5e03f14f20f15cf5c8",24     "agentName": "spw-live valid_until 1794457941000",25     "nonce": 179437154166526    },27    "nonce": 1794371541665,28    "signature": {29     "r": "0xa378701c373874428d426855d738e8513d01a37afa8652bfc7d5e1b3e3332345",30     "s": "0x2eadf78d2bc6130f57e96b877f103b25d68b75b2811d16fbcd81883f6bc2264e",31     "v": 2732    },33    "vaultAddress": null,34    "expiresAfter": null35   },36   "status": 200,37   "answer": {38    "status": "err",39    "response": "Must deposit before performing actions. User: 0xe06252f11d8beac14b7f8a026dd02febdba1400f"40   }41  },42  {43   "step": "order signed by the trading key (expiresAfter = nonce + 90 s)",44   "request": {45    "action": {46     "type": "order",47     "orders": [48      {49       "a": 3,50       "b": true,51       "p": "73070",52       "s": "0.0002",53       "r": false,54       "t": {55        "limit": {56         "tif": "Alo"57        }58       },59       "c": "0x5d36245d4a22d2c75f3ec09f78653a56"60      }61     ],62     "grouping": "na"63    },64    "nonce": 1794371542788,65    "signature": {66     "r": "0x79cba3e8518c405edb8d5d4325789a600fb3f1347ab122cf5124925fc3f0c088",67     "s": "0x5b8e01c1ad459a735e706ee86ecddfd4029c296ee1899fbb5f5207a54e3e6974",68     "v": 2869    },70    "vaultAddress": null,71    "expiresAfter": 179437163278872   },73   "status": 200,74   "answer": {75    "status": "err",76    "response": "User or API Wallet 0x78d1c6e0bee0f04b2ca06d5e03f14f20f15cf5c8 does not exist."77   }78  },79  {80   "step": "cancelByCloid signed by the trading key",81   "request": {82    "action": {83     "type": "cancelByCloid",84     "cancels": [85      {86       "asset": 3,87       "cloid": "0x5d36245d4a22d2c75f3ec09f78653a56"88      }89     ]90    },91    "nonce": 1794371543427,92    "signature": {93     "r": "0xa5724676b8fd483273352abfb24d4cc75b21f03090987c55afeef44b6f7a407f",94     "s": "0x7964c0e384046d1d37f081951647e233795debd9767565879e59c8addfaf3f2d",95     "v": 2796    },97    "vaultAddress": null,98    "expiresAfter": 179437163342799   },100   "status": 200,101   "answer": {102    "status": "err",103    "response": "User or API Wallet 0x78d1c6e0bee0f04b2ca06d5e03f14f20f15cf5c8 does not exist."104   }105  },106  {107   "step": "updateLeverage signed by the trading key",108   "request": {109    "action": {110     "type": "updateLeverage",111     "asset": 3,112     "isCross": true,113     "leverage": 3114    },115    "nonce": 1794371543905,116    "signature": {117     "r": "0x7d18e12ce80ecb4164ae82056501b5c5fe7ef9e052f317312a653d608d1656f1",118     "s": "0x143bc91c9ec692a8ccdf21430a520bf8d5f45cda147d602e989c1c806d6bb37f",119     "v": 28120    },121    "vaultAddress": null,122    "expiresAfter": 1794371633905123   },124   "status": 200,125   "answer": {126    "status": "err",127    "response": "User or API Wallet 0x78d1c6e0bee0f04b2ca06d5e03f14f20f15cf5c8 does not exist."128   }129  },130  {131   "step": "signer: order at half the market price (passkey-approved all the same)",132   "answer": "signer_price: price 37281 is more than 1000 bps away from the signer's own BTC price 73639.0975"133  },134  {135   "step": "signer: order above the authorized notional",136   "answer": "signer_policy: order notional 730.7 is above the authorized 60"137  },138  {139   "step": "signer: order on an instrument outside the authorization",140   "answer": "signer_policy: hyperliquid:ETH is not allowed by the authorization"141  },142  {143   "step": "signer: payload differs from the order shown for approval",144   "answer": "signer_mismatch: the order shown for approval and the payload to sign differ (size)"145  },146  {147   "step": "signer: an approveAgent for another address smuggled through /venue/sign",148   "answer": "signer_unsupported: an agent approval can only be signed through /venue/authorize, by the main key, with the owner's passkey"149  },150  {151   "step": "signer: a transfer (usdClassTransfer) smuggled through /venue/sign",152   "answer": "signer_unsupported: this payload is not an order, a cancel or a leverage change (usdClassTransfer): the trading key signs nothing else"153  },154  {155   "step": "signer: a cancel after revocation",156   "answer": "signer_revoked: authorization revoked"157  },158  {159   "step": "signer: an order after revocation",160   "answer": "signer_revoked: authorization revoked"161  }162 ]163}164
Files main
Menu

Theme