Skip to main content

Neynar SQL Playground has been retired

The hosted SQL playground was shut down on September 14, 2026 and is no longer available. For Farcaster data at scale, use one of our other data products β€” Parquet exports or the indexer service. Reach out on Slack if you need help migrating.This page is kept for historical reference. The playground itself is gone, but the schema notes below still apply to Parquet exports and the indexer service, so they remain useful when porting old queries.

What it was

The playground was a hosted Redash instance pointed at a Postgres database of Farcaster data. It offered ad-hoc SQL queries in the browser, shareable dashboards, and SQL-over-API using a Redash API key separate from the read and write API keys.
Neynar SQL Playground
The schema was read out of the database directly with:
A snapshot of the schema as of Nov 21, 2024 is archived here.

Porting old queries

The table shapes below are not unique to the playground β€” the same casts, links and reactions tables ship in Parquet exports and through the indexer service. If you are moving queries off the playground, these notes still apply. Data is more raw than our APIs, and you will likely need to join tables. If you are building a client rather than doing analysis, prefer the APIs over SQL.

1. Follows

links table has follower <> follow data:
  • fid β†’ target_fid row means fid follows target_fid

2. Reactions

  • reaction_type 1 is β€œlike” and 2 is β€œrecast” in the reactions table
  • hash in the reactions table is the β€œreaction hash” and target_hash is the hash of the cast that received the reaction

3. hex <> bytea

The Redash UI converted bytea data to hex for display, but queries had to do the conversion themselves β€” as they still do against Parquet and the indexer service:
  • bytea to hex
  • hex to bytea
(swap hex_hash_without_0x with the actual cast hash minus the `0x)