TriportRPC

network: "base" chain_id: 8453 guide: "ws" availability: "unknown" validation: "positive_fixture" evidence_kind: "source_summary" tier_min: "basic" tier_provisional: true

Base JSON-RPC WebSocket

Evidence: positive_fixture for bounded newHeads/newPendingTransactions observations; other topics are documented or unknown. Capture UTC 2026-09-08T13:27:35.791Z–13:31:35.965Z. Minimum tier: Basic.

The staged keyed endpoint is {WSSBase}/ws/base/{key}, normalized to /ws/base with scope base:ws. It is not a published executable URL. Missing, expired, revoked, or wrong-scope credentials must be rejected before upstream dial; revocation terminates active fanout.

Topics

TopicAvailability / validationMinimum tier
newHeadsunknown / positive_fixtureBasic
logsunknown / documentedBasic
newPendingTransactionsunknown / positive_fixturePro
newFlashblockTransactionsunknown / documentedPro
pendingLogsunknown / documentedPro
newFlashblocksunknown / documentedPro

The positive fixtures prove only the captured ack/event/unsubscribe semantics for their topic and egress. They do not establish continuous availability, replay, full mempool coverage, or an SLA.

Subscribe envelope

This body matches the frozen AsyncAPI SubscribeRequest. Sending it is gated until the route is published.

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_subscribe",
  "params": ["newHeads"]
}

Notifications use {"jsonrpc":"2.0","method":"eth_subscription","params":{"subscription":"…","result":…}}. The three Flashblocks-named app topics stay gated and are not aliases for the raw push firehose: their subscription ack, envelope, and lifecycle are distinct.

See the Base WS AsyncAPI, normalized Flashblocks guide, and auction guide.