Skip to main content

Rust SDK API Reference / Reverse lookup / resolve_reverse_batch

Function: resolve_reverse_batch()

pub fn resolve_reverse_batch(
rpc_client: &RpcClient,
keys: &[Pubkey],
) -> Result<Vec<Option<String>>, SnsError>

Defined in: rust-crates/sns-sdk/src/blocking/resolve.rs:344

Derives reverse-record keys for multiple top-level name accounts and fetches them in batches. Output order matches keys; this operation has no parent parameter and therefore targets top-level reverse records.

Availability

Requires the blocking feature.

Parameters

ParameterTypeDescription
rpc_client&solana_client::rpc_client::RpcClientBlocking client used for batched account reads.
keys&[Pubkey]Top-level SNS name-account keys to reverse-resolve.

Returns

Result<Vec<Option<String>>, SnsError> with one TLD-less name or None per input key, in input order.

Errors

  • SnsError::InvalidNameAccountData when a returned reverse account is malformed or has the wrong owner.
  • SnsError::InvalidReverse when a present reverse payload is malformed or not UTF-8.
  • SnsError::SolanaClient for RPC failures.

Example

use sns_sdk::{blocking::resolve::resolve_reverse_batch, derivation::get_sns_domain_key};
use solana_client::rpc_client::RpcClient;

let client = RpcClient::new("https://your-rpc-endpoint.example".to_string());
let keys = [get_sns_domain_key("alice")?.key, get_sns_domain_key("bob")?.key];
let names = resolve_reverse_batch(&client, &keys)?;
println!("{names:?}");