## reddit/search

`GET /v1/reddit/search`

Search posts across all of Reddit by keyword, with sort and time filters.

*Reddit search*

| Parameter | Required | Description |
| --- | --- | --- |
| `query` | yes | Keyword or phrase to search for — e.g. `customer feedback` |
| `sort` | no | relevance, hot, top, new or comments (default relevance) Accepted values: relevance, hot, top, new, comments. Case, spaces, hyphens and underscores are interchangeable. — e.g. `relevance` |
| `timeframe` | no | hour, day, week, month, year or all Accepted values: hour, day, week, month, year, all. Case, spaces, hyphens and underscores are interchangeable. — e.g. `month` |
| `after` | no | Reddit fullname to continue after (alias of cursor) — e.g. `t3_1abcd2` |
| `cursor` | no | Opaque cursor from the previous page — e.g. `t3_1abcd2` |
| `limit` | no | Results per page, 1-100 (default 25) — e.g. `25` |
| `include_body` | no | Include supplied selftext and HTML bodies (default true). Set false to omit them; trim=true also omits bodies. No additional supplier call. — e.g. `true` |
| `trim` | no | true to force selftext bodies off — e.g. `false` |
| `dry_run` | no | Read a zero-credit estimate without fetching sources, running AI, or reserving credits. Cache status is a snapshot, not a guarantee at execution. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable. — e.g. `1` |
| `judgments` | no | Add bounded AI labels to eligible returned records (default on). off preserves the original data shape. Unclassified records remain present; labels depend on evidence, time, capacity and the existing request budget. No label surcharge. Accepted values: on, off. Case, spaces, hyphens and underscores are interchangeable. — e.g. `on` |
| `label` | no | Set none to disable labels; default enables the endpoint’s label set. Equivalent to judgments=off. Accepted values: default, none. Case, spaces, hyphens and underscores are interchangeable. — e.g. `none` |
| `label_evidence` | no | Include exact supporting sentences and zero-based sentence indexes when a label has validated evidence. No extra charge or change to decisions. Accepted values: 1, 0, true, false. Case, spaces, hyphens and underscores are interchangeable. — e.g. `1` |
| `exclude` | no | Optionally remove confidently labelled engagement bait. Uncertain and unclassified records stay; removed IDs and an owner-bound recall reference are returned. Accepted values: engagement_bait. Case, spaces, hyphens and underscores are interchangeable. — e.g. `engagement_bait` |
| `fit` | no | Use goal to replace confidently irrelevant records with recall stubs. Keeps first, last, relevant and uncertain records; preserves order. Full evidence is stored for 24 hours when available. Accepted values: goal. Case, spaces, hyphens and underscores are interchangeable. — e.g. `goal` |
| `goal` | no | Required with fit=goal: describe the task in at most 600 characters. Supplied text is task context, never permission to act on posts. — e.g. `Find concrete product complaints` |
| `tokens` | no | Optional soft response target for fit=goal, 256–32000. Safety and evidence retention take priority, so the returned result may exceed it. — e.g. `4000` |

### Useful optional inputs

- `timeframe`: Choose the source time window relevant to your task. A narrower window is not a completeness guarantee or a price reduction.
- `sort`: Choose the documented source ordering before paging through results. Ordering keeps the normal endpoint price and does not guarantee exhaustive results.
- `dry_run`: Read a free estimate before fetching sources or scheduling paid work. Zero credits; cache status and availability are snapshots rather than guarantees.

**Cost:** 1 credit at list price per successful uncached response; variable-cost operations may quote or settle a different charge. Confirmed uncharged or refunded failures report zero. Pending reconciliation can report credits_used:null; retain request_id and the original idempotency key.

```bash
curl "https://www.monocrawl.com/v1/reddit/search?query=customer%20feedback" \
  -H "x-api-key: mn_your_key_here"
```

### Response data

Illustrative abbreviated data; documented core fields are optional and may be null. Additional source fields are allowed.

```json
{
  "items": [
    {
      "id": "example1",
      "title": "What improved your desk setup?",
      "author": "example_reader",
      "subreddit": "example_community",
      "url": null,
      "score": 42,
      "comments_count": 18,
      "text": null
    }
  ],
  "cursor": null,
  "has_more": null
}
```

[Field reference](https://www.monocrawl.com/docs/endpoints/reddit/search#response) · [JSON Schema for response.data](https://www.monocrawl.com/schemas/reddit/search.json)
