ShoveBid for #1

Shove developer resources

Machine-readable surfaces for Shove (shove.lol), the public pay-to-rank leaderboard. Search for Shove API, Shove OpenAPI, or shove.lol developer docs — this is that page. Send Accept: text/markdown at the same URL as any public page to get markdown.

Shove OpenAPI specification

The Shove API is described by OpenAPI 3.0.3. Every operation has a unique operationId, a description, typed parameters, and response schemas so agents can register function calls without guessing.

Shove public API

Unauthenticated REST. Start at GET /api for the catalog, or GET /api/health for a liveness check that names the product Shove.

  • GET /api/board — live global board. Add ?category={slug}. Slugs: ai, devtools, seo, crypto, health, marketing, business, design, social, other.
  • GET /api/listings — search public listings. Query: q, category, limit, offset.
  • GET /api/listings/{id} — one public listing and its rank.
  • GET /api/fame — weekly hall of fame.
  • GET /api/meta?url= — Open Graph title, description, image, favicon.

Errors are JSON: { error: { code, message, hint } }. Claim tokens, receipt emails, and manage URLs are not public.

Shove authentication

There is no OAuth, no API key, and no account. Read endpoints are public. After checkout you receive a private manage URL with a claim token. That token is the only credential for topping up or crown-locking. Shove does not ship an MCP server.

Shove webhooks

POST /api/webhook/dodo-payments is the Dodo Payments webhook. It is signed for Dodo, not a public subscribe endpoint. Do not call it as a client. POST /api/checkout starts a payment and returns { url }. GET /api/demo-pay is local and demo only.

Helpers the site uses

GET /go/{id} increments public clicks and 302s to the listing URL. GET /og/{id} is the share card. GET /embed/{id} is an SVG badge that reads Shove #N · $X.

Agent files