Paid plans reset.
Capacity shouldn’t.

Teams pay for API plans every month and rarely use them up. Surplus lets them sell the spare capacity — so you can buy the same calls below list price, through one key and one balance. If no seller can serve a call, the fallback catalog answers instead.

Open the console Read the docs
0
Requests routed
$0
Volume routed
0%
Avg savings vs list
0
Active offers
 route a call
# POST /v1/rpc/solana — routed to the cheapest healthy offer
curl https://api.surplus.dev/v1/rpc/solana \
  -H "Authorization: Bearer spl_live_a1b2c3…" \
  -H "Content-Type: application/json" \
  -d '{"jsonrpc":"2.0","id":1,"method":"getAssetsByOwner",
      "params":{"ownerAddress":"9xQe…","page":1,"limit":10}}'
# response headers — the receipt, in the envelope
X-Surplus-Route: market
X-Surplus-Offer: ofr_sol_1
X-Surplus-Units: 10
X-Surplus-Charged-Usd: 0.000042
X-Surplus-Billing-State: settled

Charged $0.000042 · settled

The marketplace for unused API capacity.

Most companies prepay for API capacity every month and rarely finish it — think of a gym membership, but for software. Surplus lets them sell the part they won’t use. Buyers get the very same calls for less than list price, and every request comes with a receipt, so you can always check the math.

  1. 1 Plans reset monthly, used or not.
  2. 2 The unused part gets listed for sale.
  3. 3 Buyers route the same calls for less.
Live fills
Waiting for fills…

How routing works

Three steps, no provider accounts, no plan juggling.

STEP 01

Fund a balance

Post a funding intent, credit the workspace. One balance pays every route; money is integer micro-USD, so rounding never drifts.

available$25.00 USDC
held$0.000042
STEP 02

Mint a scoped key

Least-privilege scopes — rpc:execute, tools:execute, usage:read — plus a monthly budget and a per-request ceiling baked into the key.

keyspl_live_7f3e…
ceiling$0.0005 / req
STEP 03

Route a call, get a receipt

The router picks the cheapest healthy offer for the route. Funds are held before execution, settled after, and every outcome lands on a receipt you can recompute.

served bymarket
statesettled

Sell the idle half of your plan

Most team plans die at the end of the month with capacity left on the table. Listing it takes three decisions:

  • Connect a credential. Your provider key is encrypted at rest and never shown to buyers — the router speaks to the provider on your behalf.
  • Set an ask. Price per unit against the dated list price your listing beats. Buyers see both numbers; undercut honestly.
  • Get paid per settled fill. Holds settle only after the request completes. Voids return funds untouched.

Before any listing goes live

Every seller signs a provider-terms attestation: the credential’s terms must permit resale or shared-seat access, and the listing displays the provider’s resale notice next to the ask.

attestationrequired
credentialencrypted
probehealth-checked on list

No blended rates. No mystery invoices.

Every offer shows its ask, the dated list price it beats, and the fee separately. You can recompute any receipt from public numbers.

10 credits × $0.000004 ask = $0.00004  +  5% fee $0.000002  =  $0.000042

What list prices cost you

Drag the slider. The ask side is live from the market — the cheapest healthy offer on the route right now.

requests—

Assumes ~10 credits per call. Platform fee (5%) is charged on top of the ask and shown separately on every receipt.

at dated list price—
at best market ask—
$0
per month, routed through Surplus

Hold first. Settle after. Prove it every time.

StateMeaning
heldFunds reserved at min(quote, per-request ceiling) before the call runs. Nothing has moved yet.
settledThe request completed; actual units were charged and the remainder of the hold released.
voidedThe call failed or was refused before execution; the hold is released in full. You pay nothing.
under_reviewA settle disagreed with the quote. Funds stay locked pending review; auto-refund after the review window.

Workspace limits

Daily and monthly caps at the account level. When the cap trips, calls refuse cleanly instead of running up a bill.

Per-key budgets

Each key carries its own monthly budget. A runaway CI job burns its own allowance, never the workspace’s.

Per-request ceilings

A single call can never settle above the key’s ceiling — the hold itself is capped, so overshoot is structurally impossible.

When the market can’t serve you, we can.

If no offer for a route is healthy, the in-house catalog answers the call at a fixed micro price. Same envelope, same receipt.

eth_blockNumber

Latest block height on BSC. The cheapest heartbeat in the catalog.

priceFrom $0.000001 per call · market-supplied

eth_call

Dry-run a contract call without gas. Routed to the cheapest healthy offer, or the catalog.

priceFrom $0.000001 per call · market-supplied

eth_getLogs

Event logs with topic filters across a block range. Heavier scan, slightly heavier price.

priceFrom $0.000001 per call · market-supplied

Browse the full catalog →

Built free until strangers want to pay.

Phase 0 runs at $0. The roadmap shows what the next phases buy. Read the full roadmap →