Skip to content

References Syntax

Arsenii Petrovich edited this page Apr 2, 2026 · 2 revisions

Offer references (!offer:<slug>)

Use offer references in listing files to inherit canonical offer data from references/offers/<category>.csv.

Set the offer column to:

!offer:<offer-slug>

Example:

slug,provider,offer,chain
ethereum-quicknode-growth,,!offer:quicknode-growth,mainnet

This tells the pipeline to find the row in references/offers/<category>.csv where slug == <offer-slug> and merge it into the listing row.

Where to use references

  • listings/specific-networks/<network>/<category>.csv
  • listings/all-networks/<category>.csv

The offer reference is category-scoped: an API listing references an API offer, a wallet listing references a wallet offer, an MCP server listing references a row in references/offers/mcpservers.csv, etc.

Why this exists

Offer references reduce duplication and keep data consistent:

  • reusable defaults live once in references/offers.
  • per-network overrides stay in listings/specific-networks.
  • all-network records live in listings/all-networks and are propagated to every network output.

Merge behavior

During CSV -> JSON conversion:

  • slug from listing is preserved.
  • If a listing cell is blank, value will be inherited from referenced offer.
  • If a listing cell is non-blank, listing value wins. Important: "blank" means an empty string in the CSV. Writing null (the word) is not treated as blank during the copy step, so it will not inherit the provider value. If you want to inherit from the provider, leave the cell empty

Provider metadata is maintained separately in references/providers/providers.csv and connected through normalized provider names.

Clone this wiki locally