accountUnsubscribe – Solana
The accountUnsubscribe JSON-RPC method allows clients to unsubscribe from receiving Solana account change notifications.
The accountUnsubscribe method stops real-time updates for a subscribed account in Solana’s WebSocket API.
The accountUnsubscribe method is part of Solana’s WebSocket API, allowing clients to stop receiving real-time updates for a previously subscribed account. This method is essential for managing WebSocket connections efficiently, preventing unnecessary data flow, and optimizing resource usage in applications that track on-chain account changes. By calling this method, developers can unsubscribe from updates associated with a specific subscription ID.
Supported Networks
This method is accessible via the following API endpoints:
Mainnet
Devnet
Parameters
Required Parameter
number
(required): The subscription ID of the account to unsubscribe.
Result
The response returns a boolean value indicating whether the unsubscribe operation was successful.
Result Format
bool
:true
if the unsubscribe was successful; otherwise,false
.
Request Example
API Endpoints
wss://go.getblock.io/<ACCESS-TOKEN>/
JSON-RPC Request
wscat -c "wss://go.getblock.io/<ACCESS-TOKEN>/" -x '{
"jsonrpc": "2.0",
"id": 1,
"method": "accountUnsubscribe",
"params": [0]
}'
Response
A successful request returns a boolean value.
Example Response
{
"jsonrpc": "2.0",
"result": true,
"id": 1
}
In this response:
result
:true
indicates the unsubscribe operation was successful.
Error Handling
Common accountUnsubscribe error scenarios:
Invalid subscription ID: The provided ID does not correspond to an active subscription.
Network issues: Problems with the Solana JSON-RPC API endpoints.
Example Error Response
{
"jsonrpc": "2.0",
"error": {
"code": -32602,
"message": "Invalid subscription ID"
},
"id": 1
}
Use Cases
The Solana accountUnsubscribe method is essential for:
Managing network resources by terminating unused subscriptions;
Optimizing dApp performance;
Reducing network bandwidth consumption.
Code accountUnsubscribe Example – Web3 Integration
const WebSocket = require('ws');
const url = "wss://go.getblock.io/<ACCESS-TOKEN>/";
const payload = {
jsonrpc: "2.0",
id: 1,
method: "accountUnsubscribe",
params: [0]
};
const ws = new WebSocket(url);
ws.on('open', () => {
ws.send(JSON.stringify(payload));
});
ws.on('message', (data) => {
console.log("Unsubscribe Response:", JSON.parse(data));
});
ws.on('error', (error) => {
console.error("WebSocket error:", error.message);
});
ws.on('close', () => {
console.log("WebSocket connection closed");
});
Integration with Web3
By integrating Web3 accountUnsubscribe into Solana's Core API, developers can efficiently manage subscription lifecycles, improve dApp performance, and optimize network resource utilization.
Last updated