Infrastructure

RPC Encoding

The data serialization format used to represent account data in Solana RPC responses. Supported encodings include base58 (human-readable but slow for large data), base64 (efficient binary encoding, most common), base64+zstd (compressed base64 for large accounts), and jsonParsed (structured JSON for known programs like SPL Token and System Program). The encoding parameter is specified per-request and affects response size and parse complexity on the client side.

IDrpc-encoding

Plain meaning

Start with the shortest useful explanation before going deeper.

The data serialization format used to represent account data in Solana RPC responses. Supported encodings include base58 (human-readable but slow for large data), base64 (efficient binary encoding, most common), base64+zstd (compressed base64 for large accounts), and jsonParsed (structured JSON for known programs like SPL Token and System Program). The encoding parameter is specified per-request and affects response size and parse complexity on the client side.

Mental model

Use the quick analogy first so the term is easier to reason about when you meet it in code, docs, or prompts.

Think of it as a building block that connects one definition to the larger Solana system around it.

Technical context

Place the term inside its Solana layer so the definition is easier to reason about.

RPCs, validators, snapshots, indexing, and network plumbing.

Why builders care

Turn the term from vocabulary into something operational for product and engineering work.

This term unlocks adjacent concepts quickly, so it works best when you treat it as a junction instead of an isolated definition.

AI handoff

AI handoff

Use this compact block when you want to give an agent or assistant grounded context without dumping the entire page.

RPC Encoding (rpc-encoding)
Category: Infrastructure
Definition: The data serialization format used to represent account data in Solana RPC responses. Supported encodings include base58 (human-readable but slow for large data), base64 (efficient binary encoding, most common), base64+zstd (compressed base64 for large accounts), and jsonParsed (structured JSON for known programs like SPL Token and System Program). The encoding parameter is specified per-request and affects response size and parse complexity on the client side.
Related: RPC Methods, Account Data, Serialization / Deserialization
Glossary Copilot

Ask grounded Solana questions without leaving the glossary.

Use glossary context, relationships, mental models, and builder paths to get structured answers instead of generic chat output.

Explain this code

Optional: paste Anchor, Solana, or Rust code so the Copilot can map primitives back to glossary terms.

Ask a glossary-grounded question

Ask a glossary-grounded question

The Copilot will answer using the current term, related concepts, mental models, and the surrounding glossary graph.

Concept graph

See the term as part of a network, not a dead-end definition.

These branches show which concepts this term touches directly and what sits one layer beyond them.

Branch

RPC Methods

The enumerated JSON-RPC endpoints exposed by Solana nodes, covering account queries (getAccountInfo, getMultipleAccounts, getProgramAccounts), block and transaction retrieval (getBlock, getTransaction), cluster metadata (getEpochInfo, getSlot, getVersion), and transaction submission (sendTransaction, simulateTransaction). Methods accept a Commitment parameter (processed, confirmed, finalized) to control the recency-vs-safety tradeoff of returned data.

Branch

Account Data

The byte array stored in an account that holds program-specific state. Data is typically serialized using Borsh and must be explicitly allocated at account creation. The maximum data size is 10MB. Programs are responsible for defining and managing their own data layout, including discriminators for type identification.

Branch

Serialization / Deserialization

The process of converting in-memory data structures to bytes (serialization) and back (deserialization) for on-chain storage. Solana programs primarily use Borsh, though some use bincode or custom formats. Anchor's #[account] macro auto-derives Borsh serialization. Incorrect deserialization (e.g., missing length checks) is a common vulnerability class.

Next concepts to explore

Keep the learning chain moving instead of stopping at one definition.

These are the next concepts worth opening if you want this term to make more sense inside a real Solana workflow.

Infrastructure

RPC Methods

The enumerated JSON-RPC endpoints exposed by Solana nodes, covering account queries (getAccountInfo, getMultipleAccounts, getProgramAccounts), block and transaction retrieval (getBlock, getTransaction), cluster metadata (getEpochInfo, getSlot, getVersion), and transaction submission (sendTransaction, simulateTransaction). Methods accept a Commitment parameter (processed, confirmed, finalized) to control the recency-vs-safety tradeoff of returned data.

Programming Model

Account Data

The byte array stored in an account that holds program-specific state. Data is typically serialized using Borsh and must be explicitly allocated at account creation. The maximum data size is 10MB. Programs are responsible for defining and managing their own data layout, including discriminators for type identification.

Programming Model

Serialization / Deserialization

The process of converting in-memory data structures to bytes (serialization) and back (deserialization) for on-chain storage. Solana programs primarily use Borsh, though some use bincode or custom formats. Anchor's #[account] macro auto-derives Borsh serialization. Incorrect deserialization (e.g., missing length checks) is a common vulnerability class.

Infrastructure

RPC (Remote Procedure Call)

The JSON-RPC 2.0 protocol interface through which clients communicate with Solana nodes to query chain state, submit transactions, and subscribe to events. Solana exposes a rich set of HTTP and WebSocket endpoints (e.g., getAccountInfo, sendTransaction) that abstract direct peer-to-peer network participation, making RPC the primary integration point for wallets, dApps, and indexers.

Commonly confused with

Terms nearby in vocabulary, acronym, or conceptual neighborhood.

These entries are easy to mix up when you are reading quickly, prompting an LLM, or onboarding into a new layer of Solana.

Infrastructurerpc

RPC (Remote Procedure Call)

The JSON-RPC 2.0 protocol interface through which clients communicate with Solana nodes to query chain state, submit transactions, and subscribe to events. Solana exposes a rich set of HTTP and WebSocket endpoints (e.g., getAccountInfo, sendTransaction) that abstract direct peer-to-peer network participation, making RPC the primary integration point for wallets, dApps, and indexers.

AliasRPCAliasJSON-RPC
Infrastructurerpc-methods

RPC Methods

The enumerated JSON-RPC endpoints exposed by Solana nodes, covering account queries (getAccountInfo, getMultipleAccounts, getProgramAccounts), block and transaction retrieval (getBlock, getTransaction), cluster metadata (getEpochInfo, getSlot, getVersion), and transaction submission (sendTransaction, simulateTransaction). Methods accept a Commitment parameter (processed, confirmed, finalized) to control the recency-vs-safety tradeoff of returned data.

Infrastructurerpc-node

RPC Node

A Solana full node that stores ledger state and serves JSON-RPC and WebSocket requests from clients without participating in consensus or voting. RPC nodes must replay every transaction to maintain an accurate account state database, and high-throughput deployments typically run dedicated RPC nodes with large SSDs, high RAM (256 GB+), and high-bandwidth network connections to handle concurrent client load without impacting validator performance.

Related terms

Follow the concepts that give this term its actual context.

Glossary entries become useful when they are connected. These links are the shortest path to adjacent ideas.

Infrastructurerpc-methods

RPC Methods

The enumerated JSON-RPC endpoints exposed by Solana nodes, covering account queries (getAccountInfo, getMultipleAccounts, getProgramAccounts), block and transaction retrieval (getBlock, getTransaction), cluster metadata (getEpochInfo, getSlot, getVersion), and transaction submission (sendTransaction, simulateTransaction). Methods accept a Commitment parameter (processed, confirmed, finalized) to control the recency-vs-safety tradeoff of returned data.

Programming Modelaccount-data

Account Data

The byte array stored in an account that holds program-specific state. Data is typically serialized using Borsh and must be explicitly allocated at account creation. The maximum data size is 10MB. Programs are responsible for defining and managing their own data layout, including discriminators for type identification.

Programming Modelserialization

Serialization / Deserialization

The process of converting in-memory data structures to bytes (serialization) and back (deserialization) for on-chain storage. Solana programs primarily use Borsh, though some use bincode or custom formats. Anchor's #[account] macro auto-derives Borsh serialization. Incorrect deserialization (e.g., missing length checks) is a common vulnerability class.

More in category

Stay in the same layer and keep building context.

These entries live beside the current term and help the page feel like part of a larger knowledge graph instead of a dead end.

Infrastructure

RPC (Remote Procedure Call)

The JSON-RPC 2.0 protocol interface through which clients communicate with Solana nodes to query chain state, submit transactions, and subscribe to events. Solana exposes a rich set of HTTP and WebSocket endpoints (e.g., getAccountInfo, sendTransaction) that abstract direct peer-to-peer network participation, making RPC the primary integration point for wallets, dApps, and indexers.

Infrastructure

RPC Node

A Solana full node that stores ledger state and serves JSON-RPC and WebSocket requests from clients without participating in consensus or voting. RPC nodes must replay every transaction to maintain an accurate account state database, and high-throughput deployments typically run dedicated RPC nodes with large SSDs, high RAM (256 GB+), and high-bandwidth network connections to handle concurrent client load without impacting validator performance.

Infrastructure

RPC Methods

The enumerated JSON-RPC endpoints exposed by Solana nodes, covering account queries (getAccountInfo, getMultipleAccounts, getProgramAccounts), block and transaction retrieval (getBlock, getTransaction), cluster metadata (getEpochInfo, getSlot, getVersion), and transaction submission (sendTransaction, simulateTransaction). Methods accept a Commitment parameter (processed, confirmed, finalized) to control the recency-vs-safety tradeoff of returned data.

Infrastructure

getAccountInfo

An RPC method that returns the complete on-chain state of a single account identified by its base-58 public key, including its lamport balance, owner program, executable flag, rent epoch, and raw data payload encoded as base64 or base58. It is the most fundamental read primitive in Solana development and is called at the specified commitment level, with the data field being null if the account does not exist.