{"x402Version":2,"service":"Liquid Agent — Tokenized Stock Index","url":"https://api.liquidagent.ai","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x487b28A4FbbA8Cf46eb6E1d72e6959202Bb75e90","readsFree":true,"note":"Reads are free; the server holds no key. Transact endpoints return UNSIGNED calldata the agent signs and broadcasts with its own gas. Paid resources over x402: GET /v1/signals ($0.04), POST /v1/publish ($0.25), and the gas sponsor at POST /v1/gas (from $0.03, dynamic; one endpoint for smart-wallet SDKs and plain wallets) when live.","resources":[{"resource":"https://api.liquidagent.ai/v1/signals","method":"GET","type":"http","x402Version":2,"priceUsd":0.04,"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x487b28A4FbbA8Cf46eb6E1d72e6959202Bb75e90","amount":"40000","maxAmountRequired":"40000","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"summary":"PAID ($0.04 USDC): the whole basket's rebalancing signal in ONE call — per-stock returns, volatility, RSI, trend, relative strength, a correlation matrix, and an inverse-volatility suggested weightsBps. Optional ?vault= adds your current-vs-suggested drift.","outputSchema":"{basket:[{symbol,price,returns,volAnnualPct,rsi14,trend,rangePos52wPct,relStrengthM1}], basketStats:{avgReturnM1Pct,avgVolAnnualPct,correlation}, signals:{riskParityWeightsBps,biasVsEqualWeightBps,momentumRankDesc}}"},{"resource":"https://api.liquidagent.ai/v1/publish","method":"POST","type":"http","x402Version":2,"priceUsd":0.25,"accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x487b28A4FbbA8Cf46eb6E1d72e6959202Bb75e90","amount":"250000","maxAmountRequired":"250000","maxTimeoutSeconds":60,"extra":{"name":"USD Coin","version":"2"}}],"input":"{vault:address, label?:string, brand?:object}","summary":"PAID ($0.25 USDC flat): publish a live, shareable portfolio page for a vault (holdings, allocation, live prices, signals) for 24h. Returns a viewUrl your user opens with no wallet; re-publish to keep it alive.","outputSchema":"{viewUrl, slug, expiresAt}"},{"resource":"https://api.liquidagent.ai/v1/gas","method":"POST","type":"http","x402Version":2,"priceUsd":0.03,"pricing":"dynamic: max($0.03, 1.3 × the operation's gas cap); the exact USDC amount is in the 402","accepts":[{"scheme":"exact","network":"eip155:8453","asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","payTo":"0x487b28A4FbbA8Cf46eb6E1d72e6959202Bb75e90","maxTimeoutSeconds":120,"extra":{"name":"USD Coin","version":"2"}}],"input":"JSON-RPC 2.0 (ERC-7677): {method:'pm_getPaymasterStubData'|'pm_getPaymasterData', params:[userOperation, entryPoint, chainId, context]} — or, plain wallet: {sender, calls:[{to,data,value?}], redelegate?:true} then {userOperation (signed), authorization?} — or, any EntryPoint v0.8 smart account (bring your own operation): {userOperation (unsigned)} then {userOperation (signed)}","summary":"PAID (from $0.03 USDC per operation): GAS SPONSOR. One endpoint. Smart-wallet SDKs point at it as an ERC-7677 paymaster (EntryPoint v0.8 on Base; the x402 price rides inside the JSON-RPC response, pay with your usual x402 signature). Plain wallets with USDC but no ETH POST {sender, calls:[{to,data,value?}]}: the 402 is the quote, pay it and the same call returns the sponsored operation + typed data (+ an EIP-7702 authorization if needed); sign and POST it back, we submit and pay the gas. No further charge. Wallet already delegated to another EIP-7702 implementation: add redelegate:true (reversible re-point to Simple7702Account, signed by you). Any EntryPoint v0.8 smart account can instead bring its own operation: POST {userOperation} unsigned for the quote, pay, sign it your account's way, POST it back; we dry-run it and submit it, no bundler.","outputSchema":"ERC-7677: {paymaster, paymasterData, paymasterVerificationGasLimit, paymasterPostOpGasLimit, validUntil}. Direct lane: {userOperation, typedData, authorization?, validUntil} then {txHash, userOpHash, success, actualGasCostEth}","paymasters":{"v07":null,"v08":"0x9676897c3bf08977cdbe78213f84e72a29b844ec"}},{"resource":"https://api.liquidagent.ai/v1/guide","method":"GET","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"START HERE. Plain-English guide: how to open your account, buy the tokenized-stock index from $1, check it, rebalance, and cash out. One call explains every other endpoint.","outputSchema":"{service,what,howItWorks,steps:[{step,do,call,why}],amounts,signing,network,fees,fullSpec}"},{"resource":"https://api.liquidagent.ai/v1/basket","method":"GET","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Discover the tokenized stock index: invest in NVIDIA, Apple, Meta and Alphabet, with live prices and fees.","outputSchema":"{protocol,chainId,factory,usdc,feeSink,constituents:[{symbol,address,decimals,priceUsd}],fees,minDepositUsdc,flow}"},{"resource":"https://api.liquidagent.ai/v1/vault/{address}","method":"GET","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Check a vault: its value (NAV), holdings, current vs target weights, and whether it needs rebalancing.","outputSchema":"{vault,strategist,owner,navUsdc,nav,weightsBps[4],rebalanceNeeded,rebalanceBandBps,maxTvlUsdc,mintFeeBps}"},{"resource":"https://api.liquidagent.ai/v1/balance/{agent}","method":"GET","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"List what an address owns: every vault it holds, its shares, and current USD value.","outputSchema":"{agent,vaultCount,vaults:[{vault,shares,valueUsdc,value}]}"},{"resource":"https://api.liquidagent.ai/v1/quote","method":"GET","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Preview a purchase before you buy: shares you would receive and the fee, for a given USDC amount.","outputSchema":"{usdcIn,mintFeeUsdc,netUsdc}"},{"resource":"https://api.liquidagent.ai/v1/create-vault","method":"POST","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Open your own vault (you control it, no one else). Returns a transaction for you to sign.","outputSchema":"unsigned {to,data,value,chainId} for createVault()"},{"resource":"https://api.liquidagent.ai/v1/set-weights","method":"POST","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Set your custom stock allocation (default is equal weight). Returns a transaction for you to sign.","outputSchema":"unsigned {to,data,value,chainId} for setTargetWeights(uint16[])"},{"resource":"https://api.liquidagent.ai/v1/buy","method":"POST","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Buy tokenized stocks: invest USDC into your vault from $1. One tx via EIP-2612 permit (no approve), or legacy approve + deposit. Own NVIDIA, Apple, Meta and Alphabet on-chain.","outputSchema":"permit:true -> {typedData} to sign; permit:{deadline,signature} -> ONE unsigned depositWithPermit tx; no permit -> {steps:[approve,deposit]}"},{"resource":"https://api.liquidagent.ai/v1/redeem","method":"POST","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"SELL / cash out: redeem your basket shares to USDC, or take the raw stock tokens in-kind (un-trappable, any block). Anyone holding these shares can sell this way — no vault needed. Returns a transaction for you to sign.","outputSchema":"unsigned {to,data,value,chainId} for redeem() (USDC) or redeemInKind() (raw tokens)"},{"resource":"https://api.liquidagent.ai/v1/rebalance","method":"POST","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Rebalance your vault back to its target weights. Returns a transaction for you to sign.","outputSchema":"unsigned {to,data,value,chainId} for rebalance()"},{"resource":"https://api.liquidagent.ai/v1/send","method":"POST","type":"http","x402Version":2,"priceUsd":0,"accepts":[],"summary":"Send your basket to anyone: transfer your tokenized-stock shares (LQMAG4) to any wallet — gift or hand off to another agent, no vault needed on their end. The recipient can then hold it, SELL it (redeem to USDC or in-kind), or forward it. Returns a transaction for you to sign.","outputSchema":"unsigned {to,data,value,chainId} for transfer(to,shares)"}],"howToUse":["1. GET /v1/basket — discover the 4 stocks, live prices, fees (free)","2. GET /v1/quote?usdc=2000000 — preview shares + fee (optional, free)","3. POST /v1/create-vault — SIGN + BROADCAST the returned tx; opens your vault (ONE time)","4. GET /v1/balance/<your-address> — vaults[0].vault is your vault","5. POST /v1/set-weights {vault,weightsBps[4]} — SIGN + BROADCAST (optional custom allocation)","6. POST /v1/buy {vault,usdc,permit:true,owner} — sign the EIP-712 permit off-chain, re-POST with the signature, broadcast ONE depositWithPermit tx (from $1, no approve)","7. GET /v1/vault/<vault> — check NAV, weights, rebalance status (free)","8. POST /v1/rebalance {vault} — SIGN + BROADCAST (optional)","9. POST /v1/redeem {vault,shares,inKind?} — SIGN + BROADCAST; exit to USDC or raw tokens, any block","Optional PAID: GET /v1/signals ($0.04 USDC via x402) — the whole basket's rebalancing signal + inverse-vol suggested weightsBps in ONE call; feed straight into steps 5/8. Add ?vault=<yours> for your drift.","Optional PAID: gas sponsor (from $0.03 USDC via x402) — no ETH? POST /v1/gas {sender, calls:[any unsigned tx from this API]} -> 402 is the quote -> pay -> sign the returned typed data (+ EIP-7702 authorization if given) -> POST the signed operation back to /v1/gas. Wallet delegated to another EIP-7702 implementation: add redelegate:true (reversible). Any EntryPoint v0.8 smart account: POST your own unsigned {userOperation} instead, pay, sign, POST back. Or point your ERC-4337 SDK at the same URL (ERC-7677). GET /v1/gas explains."],"signing":"WRITE endpoints return an UNSIGNED {to,data,value,chainId}. Sign it with your own wallet and broadcast via eth_sendRawTransaction to any Base RPC; if gas estimation fails (deposit/rebalance/redeem swap precompiles), pass gas ~3,000,000. The server holds no key; reads are free. Full step-by-step procedure with example requests + responses: GET https://api.liquidagent.ai/v1/guide","guide":"https://api.liquidagent.ai/v1/guide","examples":"https://github.com/LiquidAgent/liquidagentx402","openapi":"https://api.liquidagent.ai/openapi.json","discovery":"https://api.liquidagent.ai/.well-known/x402"}