⚡ New — Kimi K3 is live: bring your own Moonshot key →
Documentation

Sell on BharatRouter

BharatRouter is a model marketplace. If you run GPUs, host models, or sell inference capacity, you can onboard as a seller and list what you sell — served through the same OpenAI-compatible gateway buyers already use. The onboarding follows the familiar provider-integration pattern: register → declare an endpoint → list models with pricing → get reviewed → go live. It is India-native: INR pricing first, with a per-listing data-residency flag.

Manage everything under Console → Sell on BharatRouter, the REST API below, or the register_seller / add_seller_listing MCP tools (human + agent parity).

How it works

  1. Register a seller profile. An owner or admin of your organisation registers it as a seller — name, contact, homepage, description, residency. Status startspending.
  2. List your models. For each model, declare an OpenAI-compatible endpoint and the OpenRouter-style fields buyers compare on: model id/name, input and outputprice per million tokens, context window, max output, modality (text / vision / reasoning), and an optional quantization note. Listings start as a draft.
  3. Submit for review. Submitting moves a listing to in_review.
  4. Admin review. A BharatRouter admin approves your seller profile and lists (listed) or delists your models. This curation gate is where the marketplace stays trustworthy.
  5. Go live. Approved sellers and their listed models appear in the public marketplace (GET /marketplace). When a listed model references a catalog model id and a public endpoint, it also becomes routable via thebring-your-own-endpoint mechanism.

Statuses

ObjectStatusMeaning
SellerpendingRegistered, awaiting admin review.
approvedLive — listed models are visible in the marketplace.
suspendedRemoved from the marketplace by an admin.
ListingdraftBeing edited; not submitted.
in_reviewSubmitted; awaiting admin action.
listedLive in the marketplace.
delistedTaken down by an admin.

REST API

All seller routes are session-authenticated. Managing a profile or listings requires anowner/admin role; the public marketplace read is open.

MethodPathPurpose
GET/me/sellerYour org's seller profile + listings.
POST/me/sellerRegister the org as a seller.
PUT/me/sellerEdit the seller profile.
POST/me/seller/listingsAdd a model listing (draft).
PUT/me/seller/listings/:idEdit a listing.
DELETE/me/seller/listings/:idRemove a listing.
POST/me/seller/listings/:id/submitSubmit a draft for review.
GET/marketplacePublic: approved sellers + listed models.

Example — register and add a model:

curl -X POST https://api.bharatrouter.com/me/seller \
  -H 'content-type: application/json' --cookie "$SESSION" \
  -d '{"name":"Acme GPU Cloud","contact_email":"[email protected]","residency":"india"}'

curl -X POST https://api.bharatrouter.com/me/seller/listings \
  -H 'content-type: application/json' --cookie "$SESSION" \
  -d '{
    "model_ref": "gpt-oss-120b",
    "upstream_url": "https://api.acme.com/v1",
    "upstream_model": "gpt-oss-120b",
    "auth_mode": "bearer",
    "input_price_per_mtok": 12,
    "output_price_per_mtok": 60,
    "context_window": 131072,
    "modalities": ["text", "reasoning"]
  }'

First-party sellers

Krutrim Cloud is seeded as BharatRouter's first seller — an approved, first-party (platform) seller whose upstream is the Krutrim Cloud API. Its models route natively through the catalog, so a first-party seller needs no bring-your-own-endpoint bridge.

Not yet available (v1 boundary)

This is a v1 of the supply side. The following are explicit follow-ups and are not part of it yet:

  • Settlement & payouts to sellers, and revenue-shareaccounting.
  • The 3-validator certification that will back a "verified" marketplace badge.
  • Deeper routing integration (live per-seller traffic, uptime and latity surfaced on the listing) beyond the current best-effort endpoint bridge, plus per-listing uptime/latency.