Options
All
  • Public
  • Public/Protected
  • All
Menu

Class Connection

A connection to a fullnode JSON RPC endpoint

Hierarchy

  • Connection

Index

Constructors

Accessors

Methods

Constructors

  • Establish a JSON RPC connection

    Parameters

    • endpoint: string

      URL to the fullnode JSON RPC endpoint

    • Optional commitmentOrConfig: Commitment | ConnectionConfig

      optional default commitment level or optional ConnectionConfig configuration object

    Returns Connection

Accessors

  • get rpcEndpoint(): string

Methods

  • _buildArgs(args: any[], override?: Commitment, encoding?: "base64" | "jsonParsed", extra?: any): any[]
  • getBlockTime(slot: number): Promise<null | number>
  • Fetch the estimated production time of a block

    Parameters

    • slot: number

    Returns Promise<null | number>

  • getBlocks(startSlot: number, endSlot?: number, commitment?: Finality): Promise<number[]>
  • Fetch confirmed blocks between two slots

    Parameters

    • startSlot: number
    • Optional endSlot: number
    • Optional commitment: Finality

    Returns Promise<number[]>

  • Fetch a list of Transactions and transaction statuses from the cluster for a confirmed block.

    deprecated

    Deprecated since v1.13.0. Please use getBlock instead.

    Parameters

    • slot: number
    • Optional commitment: Finality

    Returns Promise<ConfirmedBlock>

  • getConfirmedSignaturesForAddress(address: PublicKey, startSlot: number, endSlot: number): Promise<string[]>
  • Fetch a list of all the confirmed signatures for transactions involving an address within a specified slot range. Max range allowed is 10,000 slots.

    deprecated

    Deprecated since v1.3. Please use getConfirmedSignaturesForAddress2 instead.

    Parameters

    • address: PublicKey

      queried address

    • startSlot: number

      start slot, inclusive

    • endSlot: number

      end slot, inclusive

    Returns Promise<string[]>

  • getFirstAvailableBlock(): Promise<number>
  • Fetch the slot of the lowest confirmed block that has not been purged from the ledger

    Returns Promise<number>

  • getGenesisHash(): Promise<string>
  • getMinimumBalanceForRentExemption(dataLength: number, commitment?: Commitment): Promise<number>
  • Fetch the minimum balance needed to exempt an account of dataLength size from rent

    Parameters

    Returns Promise<number>

  • getMinimumLedgerSlot(): Promise<number>
  • Fetch the lowest slot that the node has information about in its ledger. This value may increase over time if the node is configured to purge older ledger data

    Returns Promise<number>

  • getRecentPerformanceSamples(limit?: number): Promise<PerfSample[]>
  • getSlotLeaders(startSlot: number, limit: number): Promise<PublicKey[]>
  • Fetch limit number of slot leaders starting from startSlot

    Parameters

    • startSlot: number

      fetch slot leaders starting from this slot

    • limit: number

      number of slot leaders to return

    Returns Promise<PublicKey[]>

  • getTotalSupply(commitment?: Commitment): Promise<number>
  • Fetch the current total currency supply of the cluster in lamports

    deprecated

    Deprecated since v1.2.8. Please use getSupply instead.

    Parameters

    Returns Promise<number>

  • Register a callback to be invoked whenever the specified account changes

    Parameters

    • publicKey: PublicKey

      Public key of the account to monitor

    • callback: AccountChangeCallback

      Function to invoke whenever the account is changed

    • Optional commitment: Commitment

      Specify the commitment level account changes must reach before notification

    Returns number

    subscription id

  • Register a callback to be invoked whenever accounts owned by the specified program change

    Parameters

    • programId: PublicKey

      Public key of the program to monitor

    • callback: ProgramAccountChangeCallback

      Function to invoke whenever the account is changed

    • Optional commitment: Commitment

      Specify the commitment level account changes must reach before notification

    • Optional filters: GetProgramAccountsFilter[]

      The program account filters to pass into the RPC method

    Returns number

    subscription id

  • Register a callback to be invoked upon root changes

    Parameters

    Returns number

    subscription id

  • Register a callback to be invoked upon signature updates

    Parameters

    • signature: string

      Transaction signature string in base 58

    • callback: SignatureResultCallback

      Function to invoke on signature notifications

    • Optional commitment: Commitment

      Specify the commitment level signature must reach before notification

    Returns number

    subscription id

  • Register a callback to be invoked when a transaction is received and/or processed.

    Parameters

    • signature: string

      Transaction signature string in base 58

    • callback: SignatureSubscriptionCallback

      Function to invoke on signature notifications

    • Optional options: SignatureSubscriptionOptions

      Enable received notifications and set the commitment level that signature must reach before notification

    Returns number

    subscription id

  • Register a callback to be invoked upon slot changes

    Parameters

    Returns number

    subscription id

  • Register a callback to be invoked upon slot updates. SlotUpdate's may be useful to track live progress of a cluster.

    Parameters

    Returns number

    subscription id

  • removeAccountChangeListener(clientSubscriptionId: number): Promise<void>
  • Deregister an account notification callback

    Parameters

    • clientSubscriptionId: number

    Returns Promise<void>

  • removeOnLogsListener(clientSubscriptionId: number): Promise<void>
  • Deregister a logs callback.

    Parameters

    • clientSubscriptionId: number

    Returns Promise<void>

  • removeProgramAccountChangeListener(clientSubscriptionId: number): Promise<void>
  • Deregister an account notification callback

    Parameters

    • clientSubscriptionId: number

    Returns Promise<void>

  • removeRootChangeListener(clientSubscriptionId: number): Promise<void>
  • Deregister a root notification callback

    Parameters

    • clientSubscriptionId: number

    Returns Promise<void>

  • removeSignatureListener(clientSubscriptionId: number): Promise<void>
  • Deregister a signature notification callback

    Parameters

    • clientSubscriptionId: number

    Returns Promise<void>

  • removeSlotChangeListener(clientSubscriptionId: number): Promise<void>
  • Deregister a slot notification callback

    Parameters

    • clientSubscriptionId: number

    Returns Promise<void>

  • removeSlotUpdateListener(clientSubscriptionId: number): Promise<void>
  • Deregister a slot update notification callback

    Parameters

    • clientSubscriptionId: number

    Returns Promise<void>

  • requestAirdrop(to: PublicKey, lamports: number): Promise<string>
  • Request an allocation of lamports to the specified address

    import { Connection, PublicKey, LAMPORTS_PER_SOL } from "@solana/web3.js";

    (async () => {
    const connection = new Connection("https://api.testnet.solana.com", "confirmed");
    const myAddress = new PublicKey("2nr1bHFT86W9tGnyvmYW4vcHKsQB3sVQfnddasz4kExM");
    const signature = await connection.requestAirdrop(myAddress, LAMPORTS_PER_SOL);
    await connection.confirmTransaction(signature);
    })();

    Parameters

    Returns Promise<string>

  • sendEncodedTransaction(encodedTransaction: string, options?: SendOptions): Promise<string>
  • Send a transaction that has already been signed, serialized into the wire format, and encoded as a base64 string

    Parameters

    • encodedTransaction: string
    • Optional options: SendOptions

    Returns Promise<string>

  • sendRawTransaction(rawTransaction: Buffer | Uint8Array | number[], options?: SendOptions): Promise<string>
  • Send a transaction that has already been signed and serialized into the wire format

    Parameters

    • rawTransaction: Buffer | Uint8Array | number[]
    • Optional options: SendOptions

    Returns Promise<string>

Generated using TypeDoc