SPL Name Service IDL
namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkXSPL Name Service provides on-chain domain name resolution on Solana (e.g., .sol domains via Bonfida). Maps human-readable names to Solana addresses, Twitter handles, and other records.
Instructions
Account Types
Integration Examples
Use the SPL Name Service IDL in your application with these code examples for TypeScript, Rust, and Python.
import { Connection, PublicKey } from "@solana/web3.js";
import { Program, AnchorProvider, Idl } from "@coral-xyz/anchor";
// Load the SPL Name Service IDL
import idl from "./spl name service.json";
const PROGRAM_ID = new PublicKey("namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX");
// Set up the provider and program
const connection = new Connection("https://api.mainnet-beta.solana.com");
const provider = new AnchorProvider(connection, wallet, {
commitment: "confirmed",
});
const program = new Program(idl as Idl, provider);
// Fetch and decode an account
const accountData = await program.account.sPL_Name_Service
.fetch(accountPublicKey);
console.log("Account data:", accountData);
// Build and send an instruction
const tx = await program.methods
.initialize(/* ...args */)
.accounts({
/* ...required accounts */
})
.rpc();
console.log("Transaction signature:", tx);IDL JSON Preview
{
"version": "0.2.0",
"name": "spl_name_service",
"instructions": [
{
"name": "create",
"accounts": [
{
"name": "systemProgram",
"isMut": false,
"isSigner": false
},
{
"name": "payer",
"isMut": true,
"isSigner": true
},
{
"name": "nameAccount",
"isMut": true,
"isSigner": false
},
{
"name": "nameOwner",
"isMut": false,
"isSigner": false
}
],
"args": [
{
...Frequently Asked Questions
What is the SPL Name Service IDL?
The SPL Name Service IDL (Interface Definition Language) is a JSON schema that defines the on-chain program interface for the SPL Name Service smart contract on Solana. It describes all available instructions, account structures, events, and custom types that developers need to interact with the SPL Name Service program. This IDL contains 4 instructions, 1 account types, 0 events, and 0 type definitions.
How do I use the SPL Name Service IDL in my project?
Download the JSON file and import it in your project. With TypeScript, use the @coral-xyz/anchor package to create a Program instance. In Rust, use anchor-client. For Python, use anchorpy. See the integration examples above for complete code snippets in all three languages.
What is the SPL Name Service program address on Solana?
The SPL Name Service program is deployed at address namesLPneVptA9Z5rqUDD9tMTWEJwofgaYwp8cawRkX on Solana mainnet. You can verify this on any Solana block explorer.
What version of the SPL Name Service IDL is this?
This is version 0.2.0 of the SPL Name Service IDL. IDL versions correspond to specific program deployments and may be updated as the protocol evolves. Always verify compatibility with the on-chain program version before integrating.
Related Solana IDLs
More Core / Standard interfaces and other protocols in the library.
Build on Solana with AllenHark
Interacting with SPL Name Service on-chain? Stream program accounts and transactions in real time with Yellowstone gRPC, query state over our staked Solana RPC, or land transactions with ShredStream. Automate trading against these protocols with Flare Bot Studio or the PumpFun Sniper.