rootUnsubscribe RPC Method
Parameters
number
Loading...
Returns
result
boolean
Loading...
Request
1import { createSolanaRpcSubscriptions } from '@solana/kit';23const rpcSubscriptions = createSolanaRpcSubscriptions('');45async function main() {6const abortController = new AbortController();78const subscription = await rpcSubscriptions9.rootNotifications()10.subscribe({ abortSignal: abortController.signal });1112let counter = 0;13const maxCount = 3;1415try {16for await (const notification of subscription) {17console.log("Updated root info: ", notification);18counter++;1920if (counter >= maxCount) {21console.log(`Reached ${maxCount} notifications. Unsubscribing...`);22break;23}24}25} catch (e) {26console.error("Error in root subscription:", e);27} finally {28abortController.abort();29console.log('Unsubscribed from root changes');30}31}3233main().catch(console.error);
1import { createSolanaRpcSubscriptions } from '@solana/kit';23const rpcSubscriptions = createSolanaRpcSubscriptions('');45async function main() {6const abortController = new AbortController();78const subscription = await rpcSubscriptions9.rootNotifications()10.subscribe({ abortSignal: abortController.signal });1112let counter = 0;13const maxCount = 3;1415try {16for await (const notification of subscription) {17console.log("Updated root info: ", notification);18counter++;1920if (counter >= maxCount) {21console.log(`Reached ${maxCount} notifications. Unsubscribing...`);22break;23}24}25} catch (e) {26console.error("Error in root subscription:", e);27} finally {28abortController.abort();29console.log('Unsubscribed from root changes');30}31}3233main().catch(console.error);
1const web3 = require("@solana/web3.js");2(async () => {3const solanaConnection = new web3.Connection("https://docs-demo.solana-mainnet.quiknode.pro/", {4wsEndpoint: "",5});6solanaConnection.removeRootChangeListener(0);7})();8
1const web3 = require("@solana/web3.js");2(async () => {3const solanaConnection = new web3.Connection("https://docs-demo.solana-mainnet.quiknode.pro/", {4wsEndpoint: "",5});6solanaConnection.removeRootChangeListener(0);7})();8
1import solana2import asyncio3from asyncstdlib import enumerate4from solana.rpc.websocket_api import connect56async def main():7async with connect("") as websocket:8await websocket.root_subscribe()9first_resp = await websocket.recv()10subscription_id = first_resp.result11async for idx, msg in enumerate(websocket):12if idx == 3:13break14print(msg)15await websocket.root_unsubscribe(subscription_id)1617asyncio.run(main())
1import solana2import asyncio3from asyncstdlib import enumerate4from solana.rpc.websocket_api import connect56async def main():7async with connect("") as websocket:8await websocket.root_subscribe()9first_resp = await websocket.recv()10subscription_id = first_resp.result11async for idx, msg in enumerate(websocket):12if idx == 3:13break14print(msg)15await websocket.root_unsubscribe(subscription_id)1617asyncio.run(main())
1wscat -c \2# wait for connection3{"id":1,"jsonrpc":"2.0","method": "rootUnsubscribe", "params": [0]}4
1wscat -c \2# wait for connection3{"id":1,"jsonrpc":"2.0","method": "rootUnsubscribe", "params": [0]}4
Response
1{2"jsonrpc": "2.0",3"result": true,4"id": 15}
1{2"jsonrpc": "2.0",3"result": true,4"id": 15}
Don't have an account yet?
Create your Quicknode endpoint in seconds and start building
Get started for free