API reference
Read-only deployment, token, analytics, pool, position, and exact-input quote endpoints.
The Abyss API is a read-only service for RISE Mainnet. Custom endpoints are under /api/v1. It returns unsigned transaction requests only and never holds keys, signs, or broadcasts.
Data authority
Indexed data is used for discovery and analytics. Mutable pool and position state is read from live RPC at pinned blocks. Responses identify their data boundary with indexedBlock, blockNumber, or quotedBlock. Integer values that may exceed JavaScript's safe range are base-10 strings.
Endpoints
| Method | Path | Purpose |
|---|---|---|
| GET | /api/v1/deployment | Reviewed chain and contract identity |
| GET | /api/v1/tokens | Reviewed static token metadata |
| GET | /api/v1/token-prices | Current derived prices with provenance |
| GET | /api/v1/metrics/protocol/chart | Paginated protocol chart buckets |
| GET | /api/v1/metrics/pools/{address}/chart | Paginated pool chart buckets |
| GET | /api/v1/pools | Indexed pool topology |
| GET | /api/v1/pools/state | Live same-block state for 1 to 100 pools |
| GET | /api/v1/owners/{owner}/positions | Discover and hydrate an owner's positions |
| GET | /api/v1/positions | Hydrate 1 to 100 token IDs |
| GET | /api/v1/positions/{tokenId} | Hydrate one position |
| GET | /api/v1/quote | Quote and simulate an exact-input route |
Quote request
Required parameters:
tokenIn: ERC-20 input address;tokenOut: distinct ERC-20 output address;amountIn: positive base-unit decimal string, at most2^255 - 1;sender: account used for simulation; anddeadline: a future Unix timestamp no more than three hours ahead.
Optional parameters include recipient, slippageBps, and chainId. Slippage defaults to 50 basis points and accepts 1 through 5,000. Only chain ID 4153 is supported.
curl --get 'https://api.abyss.trading/api/v1/quote' \
--data-urlencode 'tokenIn=TOKEN_IN_ADDRESS' \
--data-urlencode 'tokenOut=TOKEN_OUT_ADDRESS' \
--data-urlencode 'amountIn=1000000' \
--data-urlencode 'sender=SENDER_ADDRESS' \
--data-urlencode 'deadline=1787500000'Replace placeholder addresses and deadline with current values. Re-simulate or request a fresh quote immediately before wallet submission.
Partial responses
Batch pool and position reads can return partial: true. A failed item remains represented with a typed error rather than causing successful sibling reads to disappear. Request-level RPC or indexer failure returns the endpoint's typed 5xx response.
Caching
- Reviewed deployment and token metadata support ETag revalidation and long-lived public caching.
- Analytics and topology responses require revalidation.
- Mutable state, owner-linked positions, and quotes use
no-store.
Price provenance
A derived token price is not automatically an oracle-safe valuation. Inspect the provenance attached to each result. Unavailable prices are explicit values, not request failures. Stork-backed prices carry their own timestamp. Pool-derived valuation and external-feed valuation have different trust assumptions.