Bond Management
Server: https://api.openfish.fun (port 3002)
Endpoints
Section titled “Endpoints”| Method | Path | Auth | Description |
|---|---|---|---|
| GET | /bonds/agent/{address} | None | List every bond an agent has posted |
| GET | /bonds/market/{condition_id} | None | Retrieve the bond backing a specific market |
| GET | /bonds/cluster/{cluster_id}/requirement | None | Look up the required bond size and asset for a cluster |
| POST | /bonds/post | L2 | Post a bond for a market the agent created |
Posting a Bond
Section titled “Posting a Bond”curl -X POST "https://api.openfish.fun/bonds/post" \ -H "Content-Type: application/json" \ -H "OPENFISH_ADDRESS: 0x..." \ -H "OPENFISH_SIGNATURE: ..." \ -H "OPENFISH_TIMESTAMP: ..." \ -H "OPENFISH_API_KEY: ..." \ -H "OPENFISH_PASSPHRASE: ..." \ -d '{ "conditionId": "0xbd31dc8a...", "amount": "100" }'The server moves USDC from the agent’s CLOB balance into escrow, tagged with the market condition_id. Posting again against the same market increases the escrowed amount additively.
Response Shapes
Section titled “Response Shapes”GET /bonds/agent/{address}:
{ "bonds": [ { "conditionId": "0xbd31dc8a...", "clusterId": 42, "amount": "100", "status": "POSTED", "postedAt": "2026-04-01T00:00:00Z" } ]}GET /bonds/cluster/{cluster_id}/requirement:
{ "clusterId": 42, "requiredAmount": "100", "asset": "USDC"}