Nansen Query Documentation
  • Introduction
  • Overview
    • 📍Getting Started
    • 📍Benefits of Curation
  • Data
    • 🗃️Data Sources
    • 🗃️Data Catalog
      • 🗃️Raw Events
      • 🗃️Aggregates
        • Entity Stats
        • Address Stats
        • Token Usage Stats
        • Transaction Stats
        • Address & Their Relationships
      • 🗃️Dex Trades
        • 🗃️Dex Trader P&L
        • 🗃️Dex Trader Use Cases
        • 🗃️Advanced Topics
        • 🗃️Trader P&L FAQ
      • 🗃️Decoded Contracts
      • 🗃️NFTs
      • 🗃️Governance
      • 🗃️Solana
        • 🗃️Solana Aggregates
    • 🗃️Repeated / Nested Fields
    • 🗃️Adding New Projects
    • 🗃️Data Marketplace
  • Web App
    • 🖥️Overview
    • 🖥️Getting Started: Web App
    • 🖥️My Queries
    • 🖥️Query Editor
    • 🖥️Visualizations
    • 🖥️Dashboards
    • 🖥️Dashboard Editor
    • 🖥️Refresh Schedules
    • ⚙️Custom Query APIs
      • ⚙️API Keys
      • ⚙️Execute A Query
      • ⚙️Get Query Results
  • Database Access
    • 📂Database Overview
    • 📂Getting Started: Database
    • 📂Sample Queries
      • 📂Wallet Examples
      • 📂Token Examples
      • 📂Trader P&L
      • 📂Project Examples
      • 📂Solana Queries
      • 📂Blockchain Examples
    • 📂Sample Python Code
      • 📂Wallet Examples
      • 📂Token Examples
    • 📂Cost Optimization
    • 📂Database FAQs
  • Other
    • ⁉️General FAQs
    • 🏷️Wallet Labels
Powered by GitBook
On this page
  • Introduction & Background
  • Account Information
  • Program Instructions
  • Basic Blockchain Information
  1. Data
  2. Data Catalog

Solana

An explanation of the Solana dataset within Nansen Query.

PreviousGovernanceNextSolana Aggregates

Last updated 2 years ago

Introduction & Background

  • Solana generates significant amount of data and it can be expensive to query

  • We've parsed the information into groups so it's easier to query

  • All raw Solana event data is included in the raw_solana dataset

Basic Blockchain Information

  • This is full information directly from the blockchain and the most expensive to query

    • blocks: data about each block produced

    • transactions: data about each transaction

Program Instructions

  • Each Solana transaction contains instructions for other programs and accounts. Parsing the instructions can be complicated when using the transaction data directly

    • instructions_unnested : The un-nested instructions portion of the transaction data. This can be used to quickly search for "program_id", which is the smart contract and "accounts", which are the accounts interacting with that smart contract

    • initialize_mint_instructions: The set of instructions only relating to minting of new tokens from the Solana Token program

Account Information

  • Solana accounts can be one of a wallet, program, token, or vote. This dataset outlines all the non-wallet accounts and when they were initialized (created)

    • non_wallet_accounts_daily : The list of accounts created on a daily basis and type

Account Information

Non-Wallet Account List

Table Name: non_wallet_accounts_daily

Field name
Type
Description

account_address

STRING

Address of account

type

STRING

Type, either program, token, or vote

day

DATE

Day which account was initialized

Program Instructions

Full Program Instructions

Table Name: instructions_unnested

Field name
Type
Description

transaction_id

STRING

ID of the transaction

slot

INTEGER

Slot of the transaction

block_timestamp

TIMESTAMP

Timestamp of the transaction

accounts

RECORD

The accounts involved in the transaction

signers

STRING

Who signed the transaction

program_id

STRING

The program ID of the transaction

instruction_type

STRING

The instruction type of the transaction

instruction_data

STRING

The data associated with the instruction

instruction_parsed

STRING

The parsed data from the instruction

instruction_accounts

STRING

The accounts involved in the instructions

instruction_index

NUMERIC

The index of the instruction

Mint Instructions

Table Name: initialize_mint_instructions

Field name
Type
Description

block_timestamp

TIMESTAMP

Timestamp of the block

slot

INTEGER

Slot of the transaction

transaction_id

STRING

ID of the transaction

instruction_type

STRING

Either initalizeMint, or initalizeMint2

instruction_index

NUMERIC

The index of the instruction

decimals

INTEGER

The number of decimals in the token

freeze_authority

STRING

The address with the authority to freeze the token

mint

STRING

Address of the token minted

mint_authority

STRING

Address authorized to mint the token

rent_sysvar

STRING

The rent associated with this transaction

Basic Blockchain Information

Blocks

Field name
Data Type
Description

block_timestamp

TIMESTAMP

The estimated production time as Unix timestamp

slot

INTEGER

The slot index of this block

parent_slot

INTEGER

The slot index of this block's parent

blockhash

STRING

The blockhash of this block

previous_blockhash

STRING

The blockhash of this block's parent

rewards

RECORD

Information regarding the block reward. Note this is a repeated field.

rewards.pubkey

STRING

--

rewards.lamports

INTEGER

--

rewards.post_balance

INTEGER

--

rewards.reward_type

STRING

Type of reward

block_height

INTEGER

Block height of the reward

Transactions

Field name
Data Type
Description

block_timestamp

TIMESTAMP

The estimated production time as Unix timestamp

slot

INTEGER

The slot index of this block

transaction_id

STRING

ID of the transaction

is_successful

BOOLEAN

True if is successful

error

STRING

Errors produced

fee

INTEGER

Fee consumed

accounts

RECORD

Accounts involved in the transactions (repeated field)

accounts.address

STRING

Addresses involved

accounts.pre_sol_balance

INTEGER

SOL balance prior to the transaction

post_sol_balance

INTEGER

SOL balance after the transaction

accounts.pre_token_balances

RECORD

Repeated field of token balance changes

accounts.pre_token_balances.amount

STRING

Token balance amount prior to the transaction

accounts.pre_token_balances.decimals

INTEGER

Decimals of the token

accounts.pre_token_balances.ui_amount_string

STRING

--

accounts.post_token_balances

RECORD

Repeated field of token balance changes

accounts.post_token_balances.amount

STRING

Token balance amount after the transaction

accounts.post_token_balances.decimals

INTEGER

Decimals of the token

accounts.post_token_balances.ui_amount_string

STRING

--

instructions

RECORD

Repeated field for instructions related to the transaction

instructions.program_id

STRING

Program ID

instructions.accounts

STRING

Related accounts

instructions.data

STRING

Data from the transaction

instructions.parsed

STRING

Data parsed from transaction

log_messages

STRING

Log messaged related to the tranaction

inner_instructions

RECORD

Repeated field for internal instructions related to the transaction

inner_instructions.index

INTEGER

Index of internal instructions

inner_instructions.instructions

RECORD

Repeated field for each inner instruction

inner_instructions.instructions.program_id

STRING

Program ID

inner_instructions.instructions.accounts

STRING

Related accounts

inner_instructions.instructions.data

STRING

Data from the transaction

inner_instructions.instructions.parsed

STRING

Data parsed from transaction

🗃️
🗃️