Skip to content

API ​

Base path: /api/v1. The OpenAPI document is available at /api/openapi.json.

Public reads ​

  • GET /config — network, contracts, assets, terms, APY, penalties, unbonding, and fee.
  • GET /positions?status=&cursor=&limit= — paginated positions.
  • GET /accounts/:address/positions — indexed fallback, escrow, and historical positions for a Fuel address. Connected held positions are hydrated directly from Vault calls and wallet NFT UTXOs.
  • GET /market/orders?status=&quoteAsset=&cursor=&limit= — active V2 asks plus still-open legacy asks, capped at 100 rows per request.
  • GET /market/orders/:id — one V2 ask and position.
  • GET /market/bids?status=&cursor=&limit= — general escrowed USDC buy orders, including remaining budget, fixed per-bond price, optional eligibility filters, and fill count.
  • GET /market/bids/:id — one general buy order.
  • GET /market/activity — bounded recent events.
  • GET /stats — indexed vault, issuance, market-health, and 24-hour flow totals.
  • GET /market/stats — market-compatible view of the same current snapshot.
  • GET /admin/coverage — public liabilities, reserves, and reconciliation status used by the admin UI.

Amounts are returned as decimal strings. Indexed records include source block and event ID. Cursor limits are capped at 100.

Faucet ​

The testnet app sends every wallet through the official Fuel gas faucet first. For Burner Wallet, it waits for that gas in the background and then calls TestAssets automatically. Fuel Wallet and Fuelet users explicitly select Give me testnet assets after starting the gas-faucet flow. POST /faucet is an inactive service-binding fallback and returns an unavailable response unless a server-side faucet service and token are explicitly configured. tUSDC minting remains owner-only.

Internal ingestion ​

POST /internal/events accepts at most 500 normalized events and requires Authorization: Bearer <INDEX_TOKEN>. Raw batches are compressed into R2 before idempotent D1 reduction. This endpoint is operational infrastructure and is not a transaction authority.

Errors use { "error": "..." } with an appropriate HTTP status. Public successful read responses are cached briefly; errors and authenticated writes are not cached. Oracle prices are read directly from the shared simplified TWAP contract through Fuel RPC. Testnet stFUEL uses the FUEL source at 1:1; mainnet stFUEL remains unavailable.

Managed custody · Testnet preview · Audit pending