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_fixturefor boundednewHeads/newPendingTransactionsobservations; other topics aredocumentedorunknown. 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
| Topic | Availability / validation | Minimum tier |
|---|---|---|
newHeads | unknown / positive_fixture | Basic |
logs | unknown / documented | Basic |
newPendingTransactions | unknown / positive_fixture | Pro |
newFlashblockTransactions | unknown / documented | Pro |
pendingLogs | unknown / documented | Pro |
newFlashblocks | unknown / documented | Pro |
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.