redditscanner.ai
api

REST API reference.

A small, predictable API. JSON in, JSON out, one auth header. No SDKs required — a curl command is usually enough.

Authentication

Every request needs an API key in the x-api-key header. Generate one under Settings → API keys. Keys are scoped to your workspace and can be rotated anytime.

API access is included on Pro (10k calls/mo) and Team (100k/mo). You can check your remaining quota on every response.

GET /api/v1/opportunities

Returns scored and ranked matches for a keyword, sorted by score descending.

Parameters

nametyperequirednotes
keywordstringrequiredThe keyword or short phrase to match against post titles and bodies.
subredditsstring[]optionalComma-separated subreddit names. Omit to search every monitored sub.
min_scorenumberoptionalFloor on opportunity score, 0–100. Defaults to 30. We recommend 60+ in production.
limitnumberoptionalMax results to return, 1–100. Defaults to 25.

Example request

bash
curl -H "x-api-key: rs_your_key_here" \
  "https://redditscanner.ai/api/v1/opportunities?keyword=AI+writing+tool&subreddits=SaaS,startups&min_score=60"

Example response

json
{
  "keyword": "AI writing tool",
  "subreddits": ["SaaS", "startups"],
  "min_score": 60,
  "count": 12,
  "opportunities": [
    {
      "reddit_id": "abc123",
      "title": "Looking for an AI writing tool for my blog",
      "subreddit": "SaaS",
      "url": "https://reddit.com/r/SaaS/comments/abc123/...",
      "score": 82,
      "age_hours": 3.5,
      "comment_count": 15,
      "upvotes": 28,
      "reason": "Fresh thread, active discussion, question post."
    }
  ]
}

Rate limits

Every response includes X-RateLimit-Remaining and X-RateLimit-Reset headers. When you exceed the cap, subsequent requests return 429 until the reset window.

  • Pro — 10,000 requests per month, 100 per hour.
  • Team — 100,000 requests per month, 1,000 per hour.

Errors

Errors use standard HTTP codes. Response body is JSON with error.code and error.message.

json
{
  "error": {
    "code": "missing_keyword",
    "message": "The 'keyword' query parameter is required."
  }
}