Skip to content
PRISM

Build · Reference

API v1 reference.

Every endpoint is read-only, unauthenticated, JSON over HTTPS, and returns the same envelope. The PRISM interface is built entirely on these routes.

Response envelope

Successful responses carry data and meta. Big integers (block numbers, raw token amounts) are strings. meta.window is the block range an aggregate was computed over; values outside it are not represented. Unknown values are null, never zero.

200 · application/json
{
  "data": { ... },
  "meta": {
    "requestId": "b6f1…",
    "observedAt": "2026-10-23T14:02:11.000Z",
    "source": "rpc",
    "blockNumber": "1840211",
    "window": { "fromBlock": "1838212", "toBlock": "1840211" },
    "methodology": "…"
  },
  "pagination": { "page": 1, "pageSize": 25, "total": 112 }
}

Errors

4xx / 5xx · application/json
{
  "error": {
    "code": "invalid_request",
    "message": "Invalid query parameters",
    "details": [{ "path": ["pageSize"], "message": "Number must be less than or equal to 100" }]
  },
  "meta": { "requestId": "b6f1…", "observedAt": "2026-10-23T14:02:11.000Z" }
}
Error codes
CodeStatusMeaning
invalid_request400A path or query parameter failed validation. details lists each issue.
not_found404The block, transaction, address or pool does not exist on chain.
rate_limited429Too many requests in the current window. Honor Retry-After.
chain_unconfigured503No RPC endpoint is configured on this deployment.
upstream_error502The RPC endpoint failed or timed out. Safe to retry with backoff.
internal_error500Unexpected failure. Include the requestId when reporting.

Rate limits

180 requests per IP per 60-second fixed window. Every response includes X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset (unix seconds). A 429 includes Retry-After. With Upstash Redis configured the window is shared across instances; otherwise it is per instance.

Endpoints

GET/api/v1/network/status

Network status

Connection state, latest block, block age, average block time, gas price, RPC latency and indexer configuration.

Edge cache 5s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/network/status"
GET/api/v1/network/blocks

Latest blocks

The most recent blocks, newest first.

Parameters for Latest blocks
NameInTypeDescription
limitqueryinteger 1–40Number of blocks. Default 20.
Edge cache 5s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/network/blocks"
GET/api/v1/network/blocks/{number}

Block by number

A single block with its transaction hashes.

Parameters for Block by number
NameInTypeDescription
number*pathinteger ≥ 0Block number.
Edge cache 5s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/network/blocks/1840211"
GET/api/v1/transactions/{hash}

Transaction

Transaction, receipt status, gas, and decoded ERC-20 transfers it emitted.

Parameters for Transaction
NameInTypeDescription
hash*path0x 32-byte hashTransaction hash.
Edge cache 30s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/transactions/0x…"
GET/api/v1/addresses/{address}

Address

Native balance, nonce, contract flag, token metadata if the address is a token, and recent transfers touching it.

Parameters for Address
NameInTypeDescription
address*path0x addressAccount or contract address.
Edge cache 15s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/addresses/0x…"
GET/api/v1/assets

Assets

Tokenized assets from the configured registry plus tokens discovered in the indexed window, each with a verification label.

Parameters for Assets
NameInTypeDescription
pagequeryinteger ≥ 1Page number. Default 1.
pageSizequeryinteger 1–100Items per page. Default 25.
categoryqueryequity | etf | stablecoin | commodity | otherFilter by category.
verificationqueryregistry | discoveredFilter by source.
qquerystringSymbol or name contains.
Edge cache 30s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/assets"
GET/api/v1/assets/{address}

Asset

Token metadata, total supply, transfer activity series, top holders by flow, and pools containing the token.

Parameters for Asset
NameInTypeDescription
address*path0x addressToken contract address.
Edge cache 30s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/assets/0x…"
GET/api/v1/transfers

Transfers

Decoded ERC-20 Transfer logs in the indexed window, newest first.

Parameters for Transfers
NameInTypeDescription
pagequeryinteger ≥ 1Page number. Default 1.
pageSizequeryinteger 1–100Items per page. Default 25.
tokenquery0x addressOnly this token.
addressquery0x addressSender or receiver.
minValuequerynumber ≥ 0Minimum decimal-adjusted value.
Edge cache 15s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/transfers"
GET/api/v1/liquidity/pools

Liquidity pools

Pairs with reserves from getReserves(), Sync and Swap counts, and USDG-denominated TVL where one side is USDG.

Parameters for Liquidity pools
NameInTypeDescription
pagequeryinteger ≥ 1Page number. Default 1.
pageSizequeryinteger 1–100Items per page. Default 25.
tokenquery0x addressPools containing this token.
sortquerysyncs | swaps | tvlRanking. Default syncs.
Edge cache 30s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/liquidity/pools"
GET/api/v1/liquidity/pools/{address}

Pool

A single pair with reserve history and recent swaps.

Parameters for Pool
NameInTypeDescription
address*path0x addressPair contract address.
Edge cache 30s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/liquidity/pools/0x…"
GET/api/v1/stablecoins/usdg

USDG overview

Total supply, transfer flow series, largest and recent transfers, and USDG pools. If no contract is configured, returns observed candidates only.

Edge cache 20s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/stablecoins/usdg"
GET/api/v1/intelligence/signals

Signals

Deterministic rule-based signals with evidence, transaction hashes, confidence and methodology.

Parameters for Signals
NameInTypeDescription
severityquerylow | medium | highFilter by severity.
rulequerylarge-transfer | activity-spike | flow-concentration | liquidity-shiftFilter by rule.
limitqueryinteger 1–80Max signals. Default 50.
Edge cache 30s · stale-while-revalidateTry in Playground
shell
curl -s "$PRISM/api/v1/intelligence/signals"