Faucet API
Base URL: https://api.pinestake.com
Implemented by Pine-Stake/faucet-api. Powers the testnet faucet at pinestake.com/faucet.
Users sign in with GitHub OAuth, then request SOL to a wallet. Requests are rate-limited per GitHub account (8h cooldown) and gated by Cloudflare Turnstile. Allowed drip amounts: 1, 2, 5, or 10 SOL.
Auth
POST /auth/github/callback
Exchanges a GitHub OAuth code for a session cookie (JWT).
GET /me
Returns the logged-in user. 401 if unauthenticated.
POST /auth/logout
Clears the session cookie.
Drip
POST /faucet
Sends SOL to address. Requires login + Turnstile cfToken.
GET /faucet-status
Cooldown left for the logged-in user (query may include network). 401 if logged out.
GET /faucet-balance
Public faucet wallet balance and lifetime distributed amount:
curl -s "https://api.pinestake.com/faucet-balance?network=devnet"
{ "faucetBalance": "0.999385", "totalDistributed": "490" }
Notes for integrators
- Send browser cookies /
credentials: "include"from an origin listed in the API’sALLOWED_ORIGINS. - Prefer the hosted faucet UI unless you are extending Pine’s own frontend.