Developers
API & on-chain access
Everything on BeaconHarbor is on-chain and open. Read it directly from Arc today; a hosted REST API arrives with the indexer for fast, cached data.
Network
ChainArc TestnetChain ID5042002RPChttps://arc-testnet.drpc.orgExplorerhttps://testnet.arcscan.appGas tokenUSDC (native)
Contracts
Launchpad0x5023f26fa83fcb62cDBD83Db29332FE9ff798302Test USDC0x74bd2b44ecb164DE3Ae6a537ae1f027c0564E72C
ABIs ship with the app under web/app/lib/abis. Every pool address comes from getLaunches on the launchpad.
Read on-chain (available now)
Any EVM library works. Example with viem:
import { createPublicClient, http } from "viem";
import { launchpadAbi } from "@beaconharbor/abis";
const client = createPublicClient({
transport: http("https://arc-testnet.drpc.org"),
});
// newest-first launches
const launches = await client.readContract({
address: "0x5023f26fa83fcb62cDBD83Db29332FE9ff798302",
abi: launchpadAbi,
functionName: "getLaunches",
args: [0n, 24n],
});
Per pool you can read reserveUsdc, reserveToken, realUsdc, gradThreshold, graduated, and quote a trade with quoteBuy / quoteSell.
REST API soon · with indexer
A hosted, cached API (planned at api.beaconharbor.app) will serve everything the UI uses, with no rate-limited RPC in the way. Planned endpoints:
- GET /v1/launches · all beacons, newest first
- GET /v1/token/{pool} · price, raised, progress, status
- GET /v1/token/{pool}/trades · points of light (buys/sells)
- GET /v1/token/{pool}/holders · top holders + supply share
- GET /v1/beaconharbor/feed · posts, tiers, boosters
- GET /v1/leaderboards · most reposted & most volume
Fair-data promise: the API only ever returns verifiable on-chain data, never fabricated volume, holders, or prices.