Skip to content
P
Personal workspaceYour services, together
WorkspaceSolana data

PIPE SOLANA

Solana data for your validators and apps.

Snapshots, the ledger, shreds, account changes, the bank stream and JSON-RPC from Pipe’s mainnet producer. Start on the free tier, then buy prepaid 30-day plans with your infrastructure credit.

Getting started

  1. Call any endpoint without a key: the free public tier applies.
  2. Buy a stake tier, any data feeds, or both, paid from your infrastructure credit.
  3. Create a key for each line you hold, one for your tier and one for each feed, and send it as Authorization: Bearer psol_….
export PIPE_SOLANA=http://186.233.184.235:8080
export PIPE_SOLANA_KEY='<your psol_ key>'

The data endpoints are served from http://186.233.184.235:8080. Indexes, manifests and status files need no key.

Endpoints and examples

Snapshots

Access group snapshots

Full and incremental snapshot archives from Pipe’s mainnet producer, each with a SHA-256 file. The index lists them with their slots, hashes and sizes.

  • /snapshots/index.json
  • /snapshots/snapshot-<slot>-<hash>.tar.zst
  • /snapshots/incremental-snapshot-<base>-<slot>-<hash>.tar.zst
  • /snapshots/<archive>.tar.zst.sha256
curl -fsS "$PIPE_SOLANA/snapshots/index.json" | jq -r '.snapshots[0].url'
curl -fL -C - -H "Authorization: Bearer $PIPE_SOLANA_KEY" -O "$PIPE_SOLANA/snapshots/snapshot-<slot>-<hash>.tar.zst"

Ledger

Access group ledger

Every shred the producer stored for a rooted slot, after erasure recovery and repair, with a JSON summary beside it.

  • /ledger/index.json
  • /ledger/<slot>.bin
  • /ledger/<slot>.json
curl -fsS -H "Authorization: Bearer $PIPE_SOLANA_KEY" -o <slot>.bin "$PIPE_SOLANA/ledger/<slot>.bin"

Shreds by slot

Access group shreds

Per-slot shred files for catching up to the tip. <bucket> is the slot divided by 1,000, rounded down.

  • /shreds/index.json
  • /shreds/<bucket>/manifest.json
  • /shreds/<bucket>/<slot>.bin
curl -fsS -H "Authorization: Bearer $PIPE_SOLANA_KEY" -o <slot>.bin "$PIPE_SOLANA/shreds/<bucket>/<slot>.bin"

Live shreds

Access group live

A stream of the newest shreds from <slot> on: frames of slot (u64), length (u16) and shred bytes, little-endian. A zero-length frame is a heartbeat.

  • /shreds/live?from=<slot>
curl -fsS -N -H "Authorization: Bearer $PIPE_SOLANA_KEY" "$PIPE_SOLANA/shreds/live?from=<slot>" > live.bin

Account changes

Access group changes

One zlib-compressed batch of account changes per rooted slot, with the inputs to its bank hash.

  • /changes/index.json
  • /changes/<bucket>/manifest.json
  • /changes/<bucket>/<slot>.chg
curl -fsS -H "Authorization: Bearer $PIPE_SOLANA_KEY" -o <slot>.chg "$PIPE_SOLANA/changes/<bucket>/<slot>.chg"

Bank stream

Access group stream

Server-Sent Events with the producer’s bank hash for each slot beside mainnet’s, for divergence alerts. Reconnect with Last-Event-ID to resume.

  • /bank/stream?from=<slot>
curl -fsS -N -H "Authorization: Bearer $PIPE_SOLANA_KEY" "$PIPE_SOLANA/bank/stream?from=<slot>"

Bank states

Access group bank

The same per-slot states for up to 1,000 slots at a time. The status file is free.

  • /bank/stream.json?from=<slot>&to=<slot>
  • /bank/stream/status.json
curl -fsS -H "Authorization: Bearer $PIPE_SOLANA_KEY" "$PIPE_SOLANA/bank/stream.json?from=<slot>&to=<slot>"

JSON-RPC

Access group rpc

Solana JSON-RPC methods answered from Pipe’s execution of mainnet.

  • POST /rpc
curl -fsS -H "Authorization: Bearer $PIPE_SOLANA_KEY" -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"getSlot"}' "$PIPE_SOLANA/rpc"

Fees and programs

Access group analytics

Compute-unit prices, utilization, fees and contended accounts by slot, and the programs mainnet invoked. The program index is free.

  • /fees/recent.json
  • /fees/slots.json?from=<slot>&to=<slot>
  • /fees/accounts.json?window=150
  • /programs/index.json
  • /programs/elf/<sha256>.so
curl -fsS -H "Authorization: Bearer $PIPE_SOLANA_KEY" "$PIPE_SOLANA/fees/recent.json"

Read the full guide: formats, limits and errors →