logUnsubscribe RPC Method
Parameters
number
The account id for subscription to cancel
Returns
result
boolean
The result will be an RpcResponse JSON object with unsubscribed success message
Request
const web3 = require("@solana/web3.js"); (async () => { const solanaConnection = new web3.Connection("https://docs-demo.solana-mainnet.quiknode.pro/", { wsEndpoint: "", }); solanaConnection.removeOnLogsListener(0); })();
import { address, createSolanaRpcSubscriptions } from '@solana/web3.js'; const rpcSubscriptions = createSolanaRpcSubscriptions(''); async function main() { const publicKeyString = address('E645TckHQnDcavVv92Etc6xSWQaq8zzPtPRGBheviRAk'); const abortController = new AbortController(); const subscription = await rpcSubscriptions .logsNotifications({ mentions: [publicKeyString] }) .subscribe({ abortSignal: abortController.signal }); let logCount = 0; try { for await (const notification of subscription) { logCount += 1; console.log(`Log #${logCount}: `, notification); if (logCount > 3) { console.log("Log count exceeded 3, unsubscribing..."); break; } } } catch (e) { console.error("Error in logs subscription:", e); } finally { abortController.abort(); console.log('Aborted subscription handling.'); } } main();
import solana import asyncio from asyncstdlib import enumerate from solana.rpc.websocket_api import connect async def main(): async with connect("") as websocket: await websocket.log_subscribe() first_resp = await websocket.recv() subscription_id = first_resp.result async for idx, msg in enumerate(websocket): if idx == 3: break print(msg) await websocket.account_unsubscribe(subscription_id) asyncio.run(main())
wscat -c \ # wait for connection {"id":1,"jsonrpc":"2.0","method": "logsUnsubscribe", "params": [0]}
Don't have an account yet?
Create your QuickNode endpoint in seconds and start building
Get started for free