AsyncAPI Specification
aid: ankr
generated: '2026-05-29'
target: AsyncAPI 2.6 spec for Ankr's WebSocket-based RPC subscriptions
status: partial
summary: |
Ankr publicly documents that WSS is supported on ~50 EVM/EVM-adjacent chains and on
Solana, and that WebSocket traffic is metered as Subscription + Notification actions.
However, Ankr's documentation does NOT enumerate the specific subscription types
(e.g. newHeads, logs, newPendingTransactions, syncing for EVM; accountSubscribe,
logsSubscribe, programSubscribe, signatureSubscribe, slotSubscribe, blockSubscribe,
rootSubscribe, voteSubscribe, slotsUpdatesSubscribe for Solana).
Per the hard rule "every subscription from official Ankr docs — no fabrication",
the resulting AsyncAPI spec is intentionally conservative: it models the
JSON-RPC-over-WebSocket envelope and the eth_subscribe / eth_unsubscribe operations
Ankr commits to, plus the Solana subscribe/unsubscribe namespace, without
enumerating individual subscription types Ankr has not itself named.
sources_consulted:
- url: https://www.ankr.com/docs/rpc-service/chains/chains-list/
github_path: pages/rpc-service/chains/chains-list.mdx
status: fetched
notes: |
Authoritative source for which chains/networks expose WSS. Lists 50+ EVM chains
and Solana Mainnet+Devnet as `HTTPS and WSS`. For each chain's WSS surface, the
only explicitly unsupported methods are `txpool_content`, `txpool_inspect`,
`txpool_status`, `txpool_contentFrom`. Confirms Solana WSS support; only
`getLargestAccounts` is listed as unsupported for Solana (no subscribe methods
enumerated).
- url: https://www.ankr.com/docs/rpc-service/service-plans/
github_path: pages/rpc-service/service-plans.mdx
status: fetched
notes: |
Confirms WSS connection requires Freemium/Premium plan. Documents WebSocket
interaction as two actions: Subscription (establishing WSS + subscribing to
events) and Notification (receiving events). Prices Solana subscriptions at
500 credits and EVM-compatible at 200 credits; Solana notifications at 500
credits, "Other" notifications at 100 credits.
- url: https://www.ankr.com/docs/rpc-service/pricing/
github_path: pages/rpc-service/pricing.mdx
status: fetched
notes: Same WSS pricing table as service-plans.mdx.
- url: https://www.ankr.com/docs/rpc-service/chains/chains-api/ethereum/
github_path: pages/rpc-service/chains/chains-api/ethereum.mdx
status: fetched
notes: |
Documents standard Ethereum JSON-RPC methods (web3_*, net_*, eth_*) over
HTTPS. Does NOT document eth_subscribe, eth_unsubscribe, or any specific
subscription type (newHeads, logs, newPendingTransactions, syncing). The
docs implicitly cover them via the "all applicable methods except those
listed as unsupported" statement on chains-list.mdx.
- url: https://www.ankr.com/docs/rpc-service/chains/chains-api/solana/
github_path: pages/rpc-service/chains/chains-api/solana.mdx
status: fetched
notes: |
Documents 50 Solana HTTP JSON-RPC methods (getAccountInfo, getBalance, getBlock,
sendTransaction, simulateTransaction, etc.). Does NOT document any *Subscribe
method (accountSubscribe, logsSubscribe, programSubscribe, signatureSubscribe,
slotSubscribe, blockSubscribe, rootSubscribe, voteSubscribe,
slotsUpdatesSubscribe). The chains-list page asserts WSS is supported on
Solana Mainnet and Devnet without enumerating subscription types.
- url: https://www.ankr.com/docs/rpc-service/chains/chains-api/websocket/
status: not_found
notes: |
No dedicated WebSocket subscriptions page exists in the Ankr documentation
repository (Ankr-network/ankr-docs on branch `stage`). A repository-wide
search for `websocket|subscribe|wss://` produced no dedicated reference page
for eth_subscribe types or Solana subscription methods.
documentation_gaps:
- gap: Ankr publishes no canonical wss:// URL example anywhere in its docs
decision: |
Followed the implicit Web3 convention used by the documented HTTPS endpoints
— wss://rpc.ankr.com/{chain_slug}/{apiKey} — and called this assumption out
explicitly in spec comments. Chain slugs reused from documented HTTPS URLs.
- gap: |
Ankr does not enumerate which specific eth_subscribe types it accepts
(newHeads, logs, newPendingTransactions, syncing).
decision: |
The AsyncAPI spec does NOT enumerate specific subscription type strings to
avoid fabrication. It models eth_subscribe / eth_unsubscribe as the request
methods with the first param being a `subscription_type` string, leaving
the type taxonomy to upstream Ethereum execution-API spec
(https://github.com/ethereum/execution-apis), which Ankr's chains-list page
references as the canonical surface ("we support blockchain interaction via
all the applicable methods except for those listed as unsupported").
- gap: |
Ankr's Solana page does not list any *Subscribe method by name.
decision: |
AsyncAPI spec defers to the canonical Solana RPC websocket spec
(https://solana.com/docs/rpc/websocket) for the subscribe method taxonomy and
does not enumerate individual methods Ankr has not itself documented.
chains_with_documented_wss_support:
source: pages/rpc-service/chains/chains-list.mdx
evm_compatible:
- chain: Arbitrum
slug: arbitrum
networks: [Mainnet, Testnet]
- chain: Arbitrum Nova
slug: arbitrumnova
networks: [Mainnet]
- chain: Atleta
slug: atleta_olympia
networks: [Olympia]
- chain: Avalanche
slug: avalanche
networks: [Standard EVM Mainnet]
- chain: B2 Network
slug: b2
networks: [Mainnet, Testnet]
- chain: Bahamut
slug: bahamut
networks: [Mainnet, Testnet]
- chain: Base
slug: base
networks: [Mainnet, Sepolia]
- chain: Bitlayer
slug: bitlayer
networks: [Mainnet, Testnet]
- chain: Blast
slug: blast_testnet_sepolia
networks: [Mainnet, Sepolia Testnet]
- chain: BNB Smart Chain
slug: bsc
networks: [Mainnet, Chapel Testnet]
- chain: Botanix
slug: botanix_testnet
networks: [Mainnet, Testnet]
- chain: Celo
slug: celo
networks: [Mainnet, Testnet]
- chain: Chiliz
slug: chiliz
networks: [Mainnet]
- chain: Core
slug: core
networks: [Mainnet]
- chain: Corn
slug: corn_maizenet
networks: [Mainnet, Testnet]
- chain: Electroneum
slug: electroneum
networks: [Mainnet, Testnet]
- chain: Ethereum
slug: eth
networks: [Mainnet, Holesky, Sepolia]
- chain: Etherlink
slug: etherlink_mainnet
networks: [Mainnet, Testnet]
- chain: Fantom
slug: fantom
networks: [Mainnet, Testnet]
- chain: Filecoin
slug: filecoin
networks: [Mainnet, Testnet]
- chain: Flare
slug: flare
networks: [Standard EVM Mainnet]
- chain: Gnosis
slug: gnosis
networks: [Mainnet, Testnet]
- chain: GOAT
slug: goat_testnet
networks: [Testnet]
- chain: Gravity
slug: gravity
networks: [Mainnet]
- chain: Linea
slug: linea
networks: [Mainnet]
- chain: Harmony
slug: harmony
networks: [Mainnet]
- chain: Huobi ECO Chain
slug: heco
networks: [Mainnet]
- chain: Horizen EON
slug: horizen_eon
networks: [Mainnet, Gobi Testnet]
- chain: IOTA EVM
slug: iota_evm
networks: [Mainnet, Testnet]
- chain: IoTeX
slug: iotex
networks: [Mainnet, Testnet]
- chain: Kaia
slug: kaia
networks: [Mainnet, Testnet]
- chain: Kava
slug: kava_evm
networks: [EVM Mainnet]
- chain: Kinto
slug: kinto
networks: [Mainnet]
- chain: Mantle
slug: mantle
networks: [Mainnet, Sepolia Testnet]
- chain: Matchain
slug: matchain_mainnet
networks: [Mainnet]
- chain: Metis
slug: metis
networks: [Mainnet]
- chain: Monad
slug: monad_testnet
networks: [Mainnet, Testnet]
- chain: Moonbeam
slug: moonbeam
networks: [Mainnet]
- chain: Neura
slug: neura_testnet
networks: [Testnet]
- chain: Optimism
slug: optimism
networks: [Mainnet, Sepolia]
- chain: Polygon
slug: polygon
networks: [Mainnet, Amoy Testnet]
- chain: Rollux
slug: rollux
networks: [Mainnet, Testnet]
- chain: Scroll
slug: scroll
networks: [Mainnet, Sepolia Testnet]
- chain: Sei
slug: sei_evm
networks: [EVM Mainnet]
- chain: Somnia
slug: somnia_testnet
networks: [Testnet]
- chain: Sonic
slug: sonic_mainnet
networks: [Mainnet, Testnet]
- chain: Story
slug: story_mainnet
networks: [Mainnet, Testnet]
- chain: Swell
slug: swell
networks: [Mainnet, Sepolia]
- chain: Syscoin
slug: syscoin
networks: [Mainnet]
- chain: TAC
slug: tac_turin
networks: [Mainnet, SPB, Turin]
- chain: Taiko
slug: taiko_hekla
networks: [Hekla Testnet]
- chain: Kite AI
slug: kite_mainnet
networks: [Mainnet]
- chain: Telos
slug: telos
networks: [Mainnet, Testnet]
- chain: Tenet
slug: tenet_evm
networks: [Mainnet Beta]
- chain: Xai
slug: xai
networks: [Mainnet, Testnet]
- chain: XDC Network
slug: xdc
networks: [Mainnet, Testnet]
- chain: X Layer
slug: xlayer
networks: [Mainnet, Testnet]
- chain: Xphere
slug: xphere_mainnet
networks: [Mainnet, Testnet]
- chain: zkSync Era
slug: zksync_era
networks: [Mainnet, Testnet]
non_evm:
- chain: Solana
slug: solana
networks: [Mainnet, Devnet]
- chain: XRP
slug: xrp_mainnet
networks: [Mainnet]
- chain: TON
slug: ton_api_v2
networks: [JSON-RPC Mainnet]
- chain: Polkadot
slug: polkadot
networks: [Mainnet]
- chain: Kusama
slug: kusama
networks: [Mainnet]
- chain: Sui
slug: sui
networks: [Mainnet, Testnet]
- chain: Nervos
slug: nervos
networks: [Nervos CKB Mainnet]
- chain: Allora
slug: allora_testnet
networks: [Tendermint RPC Testnet]
- chain: 0G
slug: 0g_galileo_testnet_evm
networks: [EVM Testnet, Tendermint Testnet]
- chain: Atleta
slug: atleta_olympia
networks: [Olympia]
- chain: Avail
slug: avail_turing_testnet
networks: [Turing Testnet]
- chain: Secret Network
slug: scrt
networks: [Tendermint Mainnet]
- chain: Midnight
slug: midnight_testnet
networks: [Testnet]
what_was_produced:
- file: asyncapi/ankr-asyncapi.yml
scope: |
AsyncAPI 2.6 spec covering the JSON-RPC-over-WebSocket envelope Ankr commits
to via the chains-list and service-plans pages. Servers include the EVM
chains and Solana documented as `HTTPS and WSS`. Channels are scoped to
eth_subscribe / eth_unsubscribe (EVM) and the Solana subscribe/unsubscribe
method namespace, with a `subscription_type` parameter intentionally left
unenumerated so the spec does not invent commitments Ankr has not made.
- file: asyncapi/review.yml
scope: This file. Documents what the docs do and do not commit to.
Work with this as data
Every AsyncAPI spec here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for asyncapi
4 MCP tools reach this
find_asyncapisBrowse and filter every AsyncAPI spec in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This AsyncAPI spec
curl "https://apis.io/api/v1/asyncapis/review"
All asyncapi
curl "https://apis.io/api/v1/asyncapis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.