Skip to main content

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’s ALLOWED_ORIGINS.
  • Prefer the hosted faucet UI unless you are extending Pine’s own frontend.