garlicoin.org

Garlicoin data API

The numbers behind this site are free to use in your own bots, dashboards and apps. Everything is plain JSON, updated automatically, with no key needed.

Endpoints

The current state of the network as seen by our node.

  • height · block height
  • best_hash, best_time · latest block hash and its Unix time
  • avg_block_seconds · average block time over the last avg_window blocks
  • difficulty, hashrate · current difficulty and estimated network hashrate in H/s
  • mempool_txs, mempool_bytes · unconfirmed transactions waiting
  • connections, version · our peer count and node version
  • peers · public nodes you can use with addnode=
  • health · whether our tip agrees with our peers and with grlc.eu: ok plus a list of checks
  • generated · Unix time the file was written

Coin supply and the halving schedule, from the consensus rules.

  • issued, issued_pct, left_to_issue · coins created by block rewards so far, of max_supply
  • block_reward, next_block_reward · GRLC per block now and after the next halving
  • next_halving_height, blocks_to_next_halving, next_halving_estimated_time · when the reward halves next (time assumes 40-second blocks)
  • coins_per_day, annual_inflation_pct · current issuance rate
  • schedule · every halving: height, reward and the actual or estimated time
/status/nodes.jsonEvery 10 minutes

Public nodes our node has connected to in the last 30 days, counted by country. No addresses.

  • nodes, listening · nodes seen, and how many accept incoming connections
  • countries[] · code, name, lat, lon (country centre) and nodes
  • since · when counting started, if less than 30 days ago
  • geo_source · countries are from DB-IP's free database (CC BY 4.0)
/status/history.jsonEvery 5 minutes

The last 24 hours in hourly buckets, as used by the status charts.

  • buckets[] · start, end, blocks, avg_block_seconds, hashrate, last_height
  • target_seconds · the 40-second block target

The last 7 days in 6-hour buckets and the last 30 days in daily buckets, aligned to UTC.

  • ranges.7d, ranges.30d · bucket_seconds and buckets[], same fields as history.json

Network activity per UTC day for the last year, counted from every block 6 deep.

  • days[] · day, blocks, txs (not counting coinbases), sent (GRLC in outputs, change included), fees, bytes
  • all_time_txs · transactions since launch, not counting coinbases
  • counted_to_height · the last block counted

Blocks found per pool per UTC day for the last year, from coinbase tags.

  • days[] · day, blocks, pools (name: blocks)
  • pools[] · name and url when known
/status/uptime.jsonEvery 5 minutes

Uptime of our node, faucet and tipbot.

  • services[] · id, name, up, uptime_7d, uptime_30d, days[] with down_minutes
  • incidents[] · service, start, end (null while ongoing), minutes

Which pools found blocks in the last 24 hours, from the tags in each block.

  • pools[] · name, url (when known), blocks, share_pct, last_height
  • blocks · blocks in the window
  • window_seconds · length of the window
/price/price.jsonEvery 10 minutes

GRLC price straight from the exchange: the last GRLC/BTC trade on FreiExchange times the BTC/USD price from Coinbase. GRLC trades rarely, so check source_updated to see when it last traded.

  • usd, btc, sats · price of 1 GRLC
  • bid_sats, ask_sats · best buy and sell offers on GRLC/BTC
  • usd_market_cap, usd_24h_volume, usd_24h_change_pct · market figures (null when unknown)
  • source_updated · Unix time of the last GRLC/BTC trade
/market/market.jsonEvery 10 minutes

Both GRLC markets (GRLC/BTC on FreiExchange, GRLC/LTC on FreiXLite), as shown on the market page.

  • markets[].last, bid, ask, spread_pct · prices per GRLC in BTC or LTC
  • markets[].bids, asks · the full order book as [price, GRLC], best first
  • markets[].recent_trades · the last 30 trades: t, side, price, grlc, quote
  • markets[].volume_24h_grlc, trades_24h, quote_usd · 24-hour figures and the quote coin's USD price
/market/history.jsonEvery 10 minutes

Daily prices from every trade we've seen. FreiExchange only reports the last 100 trades, so this goes back to November 2025 for GRLC/LTC and to October 2026 for GRLC/BTC, and grows from here.

  • days[].day · UTC date
  • days[].BTC, days[].LTC · open, high, low, close (per GRLC), trades, grlc and quote traded; days with no trades carry the close forward

Live SVG badges for READMEs, in the style of shields.io. Served with a 5-minute cache. Shows "unknown" if our data goes stale.

  • height, hashrate, blocktime · from status.json
  • halving, supply · days to the next halving, share of the 69M mined
  • price · USD price (see price.json)
/status/peers.txtEvery minute

Ready-to-paste addnode= lines for garlicoin.conf. Plain text.

/tipbot/stats.jsonEvery 10 minutes

All-time totals for the Reddit tipbot. No individual users or balances.

  • tips, tipped · number of tips and GRLC tipped
  • tippers, recipients, accounts, withdrawals · counts

Using it

  • All files are static and served from https://garlicoin.org. No key or sign-up.
  • Cross-origin requests are allowed, so you can fetch() them from any web page.
  • Each file says when it was written in generated. Polling more often than the update interval just returns the same data.
  • Times are Unix seconds (UTC). Amounts are in GRLC.

Examples

curl -s https://garlicoin.org/status/status.json | jq .height
fetch('https://garlicoin.org/supply/supply.json')
  .then(r => r.json())
  .then(s => console.log(s.blocks_to_next_halving))

Need more?

For transactions, addresses and blocks, the grlc.eu explorer API has you covered. Ideas for data we should add? Ask in the Discord.