No authentication required

PeerPush API

Free REST API for product discovery. Search products, find alternatives, compare tools, and access structured data on pricing, platforms, use cases, and audiences.

Open Interactive API Explorer

Quick start

Try these examples right now — no setup needed.

Search products

Try it
bash
curl "https://peerpush.com/api/v1/products?query=email+api&limit=3"

Find alternatives

Try it
bash
curl "https://peerpush.com/api/v1/products/notion/alternatives?limit=5"

Compare products

Try it
bash
curl "https://peerpush.com/api/v1/compare?products=vercel,netlify"

Trending this week

Try it
bash
curl "https://peerpush.com/api/v1/trending?period=week&limit=5"

Endpoints

All endpoints accept GET requests and return JSON.

Endpoint
GET/api/v1/products

Search and filter products

GET/api/v1/products/:slug

Get full product details

GET/api/v1/products/:slug/alternatives

Find alternatives to a product

GET/api/v1/compare

Compare products side by side

GET/api/v1/trending

Get trending products

GET/api/v1/discover

Discover products by criteria

GET/api/v1/deals

Products with active discounts

GET/api/v1/launches

Recently launched products

GET/api/v1/awards

Award-winning products

GET/api/v1/categories

List all categories

GET/api/v1/use-cases

List all use cases

GET/api/v1/audiences

List all audiences

Response shape

All product endpoints return data in this structure.

json
{
  "data": {
    "id": "...",
    "slug": "example-product",
    "name": "Example Product",
    "tagline": "A great tool for developers",
    "description": "...",
    "websiteUrl": "https://example.com",
    "peerpushUrl": "https://peerpush.com/p/example-product",
    "logoUrl": "https://...",
    "pricing": {
      "type": "Freemium",
      "startingPrice": 9.99
    },
    "platforms": ["Web", "Api", "Cli"],
    "useCases": ["Code Development", "CI/CD"],
    "audiences": ["Developers", "Startups"],
    "categories": ["Developer Tools"],
    "community": {
      "upvotes": 142,
      "followers": 38,
      "comments": 24,
      "rating": {
        "average": 4.6,
        "count": 23,
        "weighted": 4.42
      },
      "peerPushScore": 56.5,
      "totalScore": 268
    },
    "badges": {
      "current": "Trending",
      "productOfTheDay": null,
      "productOfTheWeek": "2025-03-15T00: 00: 00.000Z",
      "productOfTheMonth": null
    },
    "social": {
      "twitterUsername": "example",
      "linkedinUrl": null
    },
    "publishedAt": "2025-02-01T12: 00: 00.000Z",
    "lastUpdatedAt": "2025-03-20T08: 30: 00.000Z",
    "uptime": {
      "status": "Online",
      "checkedAt": "2025-03-20T03: 00: 00.000Z"
    },
    "activeDeals": [
      {
        "title": "Spring sale",
        "percentOff": 25,
        "validUntil": "2025-04-30T23: 59: 59.000Z"
      }
    ]
  }
}

Field reference

FieldDescription
idStable internal identifier.
slugURL-safe slug, also used in /p/:slug and as the path param for product endpoints.
nameProduct name.
taglineShort one-line description.
descriptionLong description.
websiteUrlExternal product URL. Carries PeerPush UTM tags.
peerpushUrlCanonical product page on peerpush.com.
logoUrlCDN URL of the product logo.
pricing.typeOne of: Free, Freemium, Subscription, OneTime, Paid.
pricing.startingPriceStarting price in USD, when applicable.
platformsSubset of: Web, Mobile, Api, Desktop, Mcp, Cli.
useCasesControlled-vocabulary use case labels (max 3).
audiencesControlled-vocabulary audience labels (max 3).
categoriesCategory labels.
community.upvotesTotal upvotes.
community.followersFollowers count.
community.commentsVisible comment count.
community.ratingnull when there are no public ratings; otherwise { average, count, weighted } where weighted is a Bayesian-smoothed score for ranking.
community.peerPushScorePeerPush engagement points.
community.totalScoreComposite ranking score used internally to sort feeds.
badges.currentOne of: Live, Trending, ProductOfTheDay, ProductOfTheWeek, ProductOfTheMonth.
badges.productOfTheDayWhen the product won Product of the Day, if ever.
badges.productOfTheWeekWhen the product won Product of the Week, if ever.
badges.productOfTheMonthWhen the product won Product of the Month, if ever.
social.twitterUsernameTwitter / X handle without @.
social.linkedinUrlLinkedIn company page URL.
publishedAtWhen the product was first published on PeerPush.
lastUpdatedAtWhen the owner last posted a product update.
uptime.statusResult of the most recent uptime probes. One of: Online (all recent probes succeeded), Degraded (mixed results), Offline (all recent probes failed), Unknown (no probes recorded yet).
uptime.checkedAtWhen the status was last recomputed.
activeDeals[]Currently-valid discount codes: { title, percentOff (0-100), validUntil (ISO date) }.

Rate limits

The API allows 5,000 requests per hour per IP address. Every response includes rate limit headers:

Response headers
X-RateLimit-Limit: 5000
X-RateLimit-Remaining: 5000
X-RateLimit-Reset: 1711929600

Need higher usage limits or new API endpoints? Contact us at [email protected]

Prefer AI-native access?

Connect your AI assistant directly to PeerPush via MCP. Your assistant will automatically use PeerPush when you ask about software products.