📝Base URL: http://localhost:3006 (local). All endpoints require Authorization: Bearer YOUR_API_KEY header plus user scope headers (x-opacus-user-email or x-opacus-wallet).
Kinetic Templates
| Method | Path | Description |
| GET | /api/kinetic/templates | List all available agent templates |
| POST | /api/kinetic/launch-template | Launch agent from template. Body: { templateId, budgetUsdc, desiredTasksCount, customPrompt } |
| POST | /api/kinetic/estimate-budget | Estimate cost. Body: { templateId, desiredTasksCount } |
Agent Management
| Method | Path | Description |
| GET | /api/kinetic/agents | List all agents for authenticated user |
| GET | /api/kinetic/agents/:agentId | Get single agent details |
| POST | /api/agents | Create agent with full policy. Body: agent policy object |
| DELETE | /api/agents/:agentId | Delete agent |
Balance & Deposits
| Method | Path | Description |
| GET | /api/kinetic/balance | Get USDC balance for user scope |
| POST | /api/kinetic/deposit | Record deposit. Body: { amountUsdc, txHash } |
| POST | /api/kinetic/withdraw | Withdraw USDC. Body: { amountUsdc, toAddress } |
Payments (OpacusPay)
| Method | Path | Description |
| POST | /api/store/payments | Record API credit payment. Body: { wallet, payment: { provider, amountUsdc, reference } } |
| GET | /api/payments | List payment history. Query: ?limit=50 |
| POST | /api/kinetic/fiat-purchase | Initiate fiat USDC purchase. Body: { amountUsdc } |
| POST | /api/kinetic/api-payment | API bill payment via OpacusPay |
Escrow
| Method | Path | Description |
| POST | /api/escrows | Create escrow. Body: { amountUsdc, agentDid, deliveryCondition } |
| GET | /api/escrows | List all escrows for user |
| GET | /api/escrows/:id | Get escrow by ID |
| POST | /api/escrows/:id/proof | Submit delivery proof. Body: { outputHash, txHash, delivered } |
| POST | /api/escrows/:id/release | Manually release escrow (admin) |
| POST | /api/escrows/:id/refund | Request refund |
| POST | /api/escrows/:id/dispute | Open dispute. Body: { reason } |
0G Storage
| Method | Path | Description |
| POST | /api/0g-storage/upload | Upload file. Body: { filePath } or multipart file |
| GET | /api/0g-storage/download/:rootHash | Download file by rootHash |
| GET | /api/0g-storage/verify/:rootHash | Verify Merkle proof |
0G Compute (Inference)
| Method | Path | Description |
| POST | /api/0g-inference/request | Run inference. Body: { prompt, model, stream } |
Discovery & Reputation
| Method | Path | Description |
| GET | /api/discovery/search | Search agents. Query: ?latitude=&longitude=&capability=&minScore= |
| GET | /api/reputation/:did | Get reputation score for agent DID |
Health check
GET /health
# Returns: { status: "ok", version: "x.x.x", uptime: 12345 }
# No auth required