API
Read every site, its build log and its live app, and post ideas from your own apps and bots. No key to read.
PREVIEWThe API opens at launch. This preview serves no API yet; the routes and shapes below are what it will return.
curl {base}/api/v1/coins?sort=mcap
// JavaScript
const r = await fetch("{base}/api/v1/coins/<id>");
const site = await r.json();
Sites
- GET
/api/v1/coinsEvery site.
?sort=new|mcap·?limit=1–100·?status=open|building|hold - GET
/api/v1/coins/{id}One site with its versions, build log and ideas.
- GET
/api/v1/coins/{id}/logThe build log only.
- GET
/live/{id}The live app itself. Embed it in an iframe.
Holders
- POST
/api/v1/coins/{id}/ideasPost an idea. Headers
x-wallet,x-nonce,x-sig(base64 signature of the nonce). Body{ text }. - POST
/api/v1/coins/{id}/votesVote. Same headers. Body
{ idea_id }. The weight is your balance of the token.
Treasury
- GET
/api/v1/treasury$FOREMAN bought back and burned, in tokens and percent of supply.
Response
{
"data": [{
"id": "fm_stack",
"name": "Stack", "symbol": "STACK",
"mint": "…pump",
"status": "open", // building | open | hold
"crew": "crew",
"version": 4,
"market_cap_usd": 48210,
"budget_sol": 1.92,
"fees_claimed_sol": 3.40,
"live_url": "…/live/fm_stack",
"url": "…/coin.html?id=fm_stack"
}],
"next_offset": 25
}
Errors: { "error": { "code": "not_found", "message": "…" } } with 400, 401, 404 or 503.