Addresses & URLs

Overview to all of ZK Compression's RPC URLs, Program IDs & Accounts and Lookup Tables.

RPC URLs

Network
Service
URL

Mainnet

Network Address (RPC)

https://mainnet.helius-rpc.com?api-key=<api_key>

Mainnet

Photon RPC API

https://mainnet.helius-rpc.com?api-key=<api_key>

Find all JSON RPC Methods for ZK Compression here.

Program IDs

Light System Program

SySTEM1eSU2p4BGQfQpimFEWWSC1XDFeun3Nqzz3rT7

Compressed Token Program

cTokenmWW8bLPjZEBAUgYy3zKxQZW6VKi7bqNFEVv3m

Account Compression Program

compr6CUsB5m2jS4Y3831ztGSTnDpnKJTKS95d64XVq

State Trees & Queues

State Tree and Queue #1

Public State Tree #1

smt1NamzXdq4AMqS2fS2F1i5KTYPZRhoHgWx38d8WsT

Public Nullifier Queue #1

nfq1NvQDJ2GEgnS8zt9prAe8rjjpAW1zFkrvZoBR148

Address Trees & Queues

Address Tree #1

Public Address Tree #1

amt1Ayt45jfbdw5YSo7iz6WZxUmnZsQTYXy82hVwyC2

Public Address Queue #1

aq1S9z4reTSQAdgWHGD2zDaS39sjGrAxbR31vxJ2F4F

Token Escrow PDA

Address Tree #1

Token Escrow Owner PDA

GXtd2izAiMJPwMEjfgTRH3d7k9mjn4Jq3JrWFv9gySYy

Lookup Tables

Lookup tables reduce your transaction size. We provide pre-initialized lookup tables that cover the Light's program IDs and accounts:

Lookup Table #1 (Mainnet)

9NYFyEqPkyXUhkerbGHXUXkvb4qpzeEdHuGpgbgpH1NJ

Lookup Table #1 (Devnet)

qAJZMgnQJ8G6vA3WRcjD9Jan1wtKkaCFWLWskxJrR5V

We provide a helper function below if you need to extend a custom lookup table.

ExtendLookUpTables.ts
import { Rpc, confirmTx, createRpc } from "@lightprotocol/stateless.js";
import { createTokenProgramLookupTable } from "@lightprotocol/compressed-token";
import { Keypair, PublicKey} from "@solana/web3.js";
import { RPC_ENDPOINT } from "./constants";
const payer = Keypair.generate();
const authority = payer;
const additionalTokenMints : PublicKey[] = [];
const additionalAccounts : PublicKey[] = [];

// Localnet
const connection: Rpc = createRpc();

const main = async () => {
  /// airdrop lamports to pay gas and rent
  await confirmTx(
    connection,
    await connection.requestAirdrop(payer.publicKey, 1e7)
  );

  /// Create LUT
  const { address } = await createTokenProgramLookupTable(
    connection,
    payer,
    authority,
    additionalTokenMints,
    additionalAccounts
  );

  console.log("Created lookup table:", address.toBase58());
};

main();

Next Steps

Explore all JSON RPC endpoints on Solana, best practices, and error codes.

JSON RPC methods

Last updated

Was this helpful?