Skip to main content
Upload CSV files to join your own data with Flipside’s blockchain data.

Uploading Files

# Upload a CSV file
flipside uploads upload wallets.csv

# Upload with a description
flipside uploads upload wallets.csv --description "VIP wallet addresses for analysis"

Using Uploads in SQL

Reference uploaded files using the ${upload:filename} syntax:
-- Join uploaded wallet labels with on-chain balances
SELECT
  w.label,
  w.address,
  b.balance / 1e18 as eth_balance
FROM ${upload:wallets.csv} w
JOIN ethereum.core.fact_balances b
  ON LOWER(w.address) = LOWER(b.address)
WHERE b.symbol = 'ETH'

Example: Wallet Labeling

1. Create a CSV with your wallet data:
address,label,category
0x1234...,Treasury,Internal
0x5678...,Marketing,Internal
0xabcd...,Partner A,Partner
2. Upload the file:
flipside uploads upload my_wallets.csv --description "Internal wallet labels"
3. Query with your labels:
SELECT
  w.label,
  w.category,
  COUNT(*) as tx_count,
  SUM(tx.value / 1e18) as total_eth
FROM ${upload:my_wallets.csv} w
JOIN ethereum.core.fact_transactions tx
  ON LOWER(w.address) = LOWER(tx.from_address)
WHERE tx.block_timestamp >= CURRENT_DATE - 30
GROUP BY 1, 2
ORDER BY tx_count DESC

Managing Uploads

# List all uploaded files
flipside uploads list

# Get details for a specific upload
flipside uploads get wallets.csv

# Delete an upload
flipside uploads delete wallets.csv

Upload Commands

CommandDescription
flipside uploads listList all uploaded files
flipside uploads get <filename>Get upload details
flipside uploads upload <file>Upload a CSV file
flipside uploads delete <filename>Delete an upload

Supported Formats

Currently only CSV files are supported for uploads.

Using Uploads in Automations

Reference uploads in automation SQL steps:
steps:
  - id: analyze_wallets
    type: sql
    sql: |
      SELECT w.label, COUNT(*) as swaps
      FROM ${upload:wallets.csv} w
      JOIN ethereum.defi.ez_dex_swaps s
        ON LOWER(w.address) = LOWER(s.origin_from_address)
      GROUP BY 1