Substack

List the publications ranked in one Substack category

Returns one page of a category's public publication leaderboard. Each row carries the publication's subscriber signals and its full subscription offering (web plans with multi-currency pricing, App Store plans, and per-tier benefits). Subscriber totals are published to roughly three significant figures and are opt-in per writer; paid subscriber figures are only ever buckets. Upstream serves 25 publications per page and accepts pages 0-26, so at most 675 publications are reachable per category and type.

get/substack/category

Request

  • Base URL: https://api.crawlora.net/api/v1
  • URL: https://api.crawlora.net/api/v1/substack/category
  • Auth: API key in header x-api-key

Query parameters

category_idstring required

Category id from /substack/categories. Numeric for 32 categories, or the string podcast.

type'paid' | 'free'

Ranking to read

pageinteger

Zero-based page, 0-26

Headers

x-api-keystring required

API key required

Response

OK

codeinteger
msgstring

Example response

{
  "code": 200,
  "data": {
    "category_id": "4",
    "publications": [
      {
        "author_name": "Dylan Patel",
        "id": 6349492,
        "name": "SemiAnalysis",
        "subdomain": "semianalysis",
        "subscribers": {
          "follower_count": 365727,
          "paid_rough": "Thousands of paid subscribers",
          "paid_rough_int": 1000,
          "paid_tier": 1000,
          "total": 315000,
          "total_display": "315K+",
          "total_rough": "Hundreds of thousands of subscribers"
        },
        "subscription": {
          "app_store_plans": [
            {
              "amount_cents": 1400,
              "currency": "usd",
              "display_price": "$14",
              "period": "month"
            }
          ],
          "founding_plan_name": "Founding Member",
          "group_discount_percent": 20,
          "payments_state": "enabled",
          "plans": [
            {
              "amount_cents": 5000,
              "currencies": [
                {
                  "amount_cents": 900,
                  "currency": "eur"
                }
              ],
              "currency": "usd",
              "id": "monthly50usd_982ddb86",
              "interval": "month",
              "interval_count": 1,
              "kind": "monthly",
              "nickname": "$50 a month"
            }
          ]
        },
        "url": "https://semianalysis.substack.com"
      }
    ],
    "type": "paid"
  },
  "msg": "success"
}

Changes

No recorded changes to this operation across all 2 revisions of this API.