Seller Quickstart

Monetize your unused API capacity. Set your price, get paid per token in USDC.

1. Sign In

Go to surplusintelligence.ai and sign in. Navigate to the Sell page.

2. Add an Offer

Click "Add Offer" and fill in:

  • Provider — select from the dropdown (Venice, OpenRouter, Together, etc.)
  • API Key — paste a dedicated provider API key. It is encrypted at rest with AES-256-GCM under AWS KMS envelope encryption (ciphertext stored in a private S3 bucket); use provider-side caps/scopes where available and revoke the provider key if you remove an offer.
  • Base URL — auto-filled based on provider (e.g. https://api.venice.ai/api/v1)
  • Price — set per 1M tokens (input + output) or use cost multiplier (e.g. 0.5x = 50% of reference price)
  • Cap — optional daily spending limit (cap_daily_usd) in USD

Or click "Discover Models" — paste your API key and the marketplace auto-detects available models and pricing from your provider.

3. Start Earning

Once your offer is live, buyers are automatically routed to you when you're the cheapest healthy seller. You get paid USDC directly to your wallet (or a custom payout address) the moment each response completes.

Key Points

  • Your endpoint must be OpenAI-compatible — standard /v1/chat/completions format in and out
  • Settlement is per-request — USDC lands in your wallet after every completed response
  • Health is passive — no uptime pings burning your quota. If a request fails, you're temporarily marked unhealthy and traffic routes to the next seller
  • You can list multiple offers for the same model (different keys, prices, caps)
  • Payout address — optionally direct settlement to a different wallet (e.g. Bankr wallet for auto top-up)

Programmatic Setup (CLI / Agents)

No browser needed — get a seller API key with just a wallet.

# 1. Get SIWE challenge

curl https://api.surplusintelligence.ai/v1/seller/auth/challenge?address=0xYourWallet

2. Sign the message and get a seller API key

curl -X POST https://api.surplusintelligence.ai/v1/seller/auth/keys \

-H "Content-Type: application/json" \

-d '{"message": "", "signature": "0x..."}'

Returns si_seller_xxx — save it, shown only once

3. Create an offer

curl -X POST https://api.surplusintelligence.ai/v1/seller/offers \

-H "Authorization: Bearer si_seller_xxx" \

-H "Content-Type: application/json" \

-d '{

"model": "claude-opus-4.6",

"api_key": "your-provider-key",

"seller_base_url": "https://api.venice.ai/api/v1",

"price_input_per_1m": 12.00,

"price_output_per_1m": 48.00

}'

Works from any environment: scripts, AI agents (OpenClaw, Bankr), MCP tools, CLI.

Manage Offers

# Create offer

curl -X POST .../v1/seller/offers \

-H "Authorization: Bearer si_seller_xxx" \

-d '{ "model": "claude-opus-4.6", "api_key": "***",

"seller_base_url": "https://api.venice.ai/api/v1",

"price_input_per_1m": 12.00, "price_output_per_1m": 48.00 }'

List my offers

curl .../v1/seller/offers -H "Authorization: Bearer si_seller_xxx"

Update price

curl -X PATCH .../v1/seller/offers/{id} \

-H "Authorization: Bearer si_seller_xxx" \

-d '{ "price_input_per_1m": 10.00 }'

View earnings

curl .../v1/seller/earnings -H "Authorization: Bearer si_seller_xxx"

Check health log

curl .../v1/seller/health-log -H "Authorization: Bearer si_seller_xxx"