# Protochain Documentation ## Docs - [GenerateNewKeyPair](https://protochain.mintlify.app/api-reference/account/generate-new-key-pair.md): Generate a new Ed25519 keypair for use with Solana. - [Account Service](https://protochain.mintlify.app/api-reference/account/overview.md): Read and manage Solana accounts: balances, keypairs, and token accounts. - [Error Handling Patterns](https://protochain.mintlify.app/api-reference/error-handling-patterns.md): Code examples for handling the most common Protochain error scenarios — retryable errors, submission certainty, and program execution failures. - [Error Reference](https://protochain.mintlify.app/api-reference/errors.md): TransactionErrorCode values, retryability classification, and remediation guidance. - [API Reference](https://protochain.mintlify.app/api-reference/index.md): Coming soon. - [RPC Client Service](https://protochain.mintlify.app/api-reference/rpc-client/overview.md): Query low-level Solana RPC data — currently provides rent exemption calculation. - [Shared Types](https://protochain.mintlify.app/api-reference/shared-types.md): Common types used across all Protochain gRPC services. - [Allocate Space](https://protochain.mintlify.app/api-reference/system-program/allocate.md): Build a System Program instruction to allocate data space for an account, with or without a seed. - [Assign Owner](https://protochain.mintlify.app/api-reference/system-program/assign.md): Build a System Program instruction to change an account's owner program, with or without a seed. - [Create Account](https://protochain.mintlify.app/api-reference/system-program/create.md): Build a System Program instruction to create a new Solana account, with or without a seed. - [Nonce Operations](https://protochain.mintlify.app/api-reference/system-program/nonce-operations.md): Build System Program instructions to create and manage nonce accounts for durable, expiration-resistant Solana transactions. - [System Program Service](https://protochain.mintlify.app/api-reference/system-program/overview.md): Build Solana System Program instructions for account creation, SOL transfers, space allocation, and durable nonce management. - [Transfer SOL](https://protochain.mintlify.app/api-reference/system-program/transfer.md): Build a System Program instruction to transfer SOL between accounts, with or without a seed-derived sender. - [Create Holding Account](https://protochain.mintlify.app/api-reference/token-program/holding-accounts.md): Build the complete instruction set to create a Token-2022 or SPL Token Associated Token Account for a wallet. - [Mint](https://protochain.mintlify.app/api-reference/token-program/mint.md): Build a MintToChecked instruction to mint tokens to a destination wallet. Token-program agnostic. - [Create Mint](https://protochain.mintlify.app/api-reference/token-program/mint-creation.md): Build the complete instruction set to create and initialize a Token-2022 or SPL Token mint account in one call. - [Token Program Service](https://protochain.mintlify.app/api-reference/token-program/overview.md): Build SPL Token and Token-2022 instructions for mint creation, holding account setup, minting tokens, and querying mint state. - [ParseMint](https://protochain.mintlify.app/api-reference/token-program/parse-mint.md): Parse a mint account's on-chain state — including authority, decimals, supply, token program, and Token-2022 extensions. - [CheckIfTransactionIsExpired](https://protochain.mintlify.app/api-reference/transaction/check-if-transaction-is-expired.md): Check whether a compiled transaction's blockhash has expired. - [CompileTransaction](https://protochain.mintlify.app/api-reference/transaction/compile-transaction.md): Serialize a draft transaction to wire format and fetch a recent blockhash. - [EstimateTransaction](https://protochain.mintlify.app/api-reference/transaction/estimate-transaction.md): Estimate compute units and fee lamports for a compiled transaction. - [GetTransaction](https://protochain.mintlify.app/api-reference/transaction/get-transaction.md): Look up an on-chain transaction by its signature. - [MonitorTransaction](https://protochain.mintlify.app/api-reference/transaction/monitor-transaction.md): Stream real-time status updates for a submitted transaction. - [Transaction Service](https://protochain.mintlify.app/api-reference/transaction/overview.md): Compile, sign, simulate, and submit Solana transactions through the full lifecycle. - [SignTransaction](https://protochain.mintlify.app/api-reference/transaction/sign-transaction.md): Add cryptographic signatures to a compiled transaction. - [SimulateTransaction](https://protochain.mintlify.app/api-reference/transaction/simulate-transaction.md): Dry-run a transaction against current ledger state without committing it. - [SubmitTransaction](https://protochain.mintlify.app/api-reference/transaction/submit-transaction.md): Broadcast a fully signed transaction to the Solana network. - [Commitment Levels](https://protochain.mintlify.app/concepts/commitment-levels.md): How Solana's three confirmation stages map to the CommitmentLevel enum — and when to use each. - [Instructions and Transactions](https://protochain.mintlify.app/concepts/instructions-and-transactions.md): How instructions from the System Program and Token Program services compose into Protochain transactions. - [Token Programs](https://protochain.mintlify.app/concepts/token-programs.md): SPL Token and Token-2022 are two incompatible Solana token programs. This page explains when to use each. - [Transaction Lifecycle](https://protochain.mintlify.app/concepts/transaction-lifecycle.md): How a Protochain transaction moves from draft to on-chain through a defined sequence of states. - [Connecting to Protochain](https://protochain.mintlify.app/guides/connecting.md): Set up your gRPC client in Go, Rust, or TypeScript to connect to the Protochain server. - [Create a Token](https://protochain.mintlify.app/guides/create-token.md): Create an SPL Token or Token-2022 mint, set up a holding account, and mint tokens end-to-end. - [Monitor Transactions](https://protochain.mintlify.app/guides/monitor-transaction.md): Production patterns for consuming the MonitorTransaction streaming RPC: lifecycle states, reconnection, backoff, and terminal state handling. - [Quickstart](https://protochain.mintlify.app/guides/quickstart.md): Make your first Protochain API calls: connect to the gRPC server, fetch an account, generate a keypair, and fund it on devnet. - [Transfer SOL](https://protochain.mintlify.app/guides/transfer-sol.md): Build, sign, and submit a SOL transfer transaction end-to-end using the System Program and Transaction Service. - [Protochain](https://protochain.mintlify.app/index.md): Language-agnostic gRPC APIs for Solana. Access any SDK from any language. ## Optional - [Mesh.Trade](https://mesh.trade)