Reddit Search API
Search Reddit content by keyword and return matching results.
API Description
Reddit Search API — Search Reddit content by keyword and return matching results.
Authenticate with your Pangolinfo API Key to receive structured JSON data.
Request URL
Request Headers
| Parameters | Parameter value | Type | Description |
|---|---|---|---|
| Content-Type | application/json | string | Data format |
| Authorization | Bearer xxx | string | Authorization Token |
Collection takes up to approximately 75 seconds. Set your client timeout to 90 seconds.
Request Parameters
| Parameter | Required | Type | Description |
|---|---|---|---|
| target | Yes | string | Target URL, supported ID or search keyword for this operation. |
| options | No | object | Optional collection settings, described below. |
options Parameters
| Parameter | Required | Type | Description |
|---|---|---|---|
| maxPages | No | integer | Pages to collect. Default: 1; values above 5 are capped at 5. Must be a positive integer. Default: 1 Minimum: 1 Maximum: 5 |
| subreddit | No | string | Subreddit name without r/. |
| sort | No | string | Result ordering. Supported values are listed below. |
| t | No | string | Time range for the selected listing or search sort. |
| includeOver18 | No | boolean | Include NSFW content. Default: false. |
| after | No | string | null | Pass pagination.after from the previous response unchanged. |
| since | No | string | number | Only posts published after this ISO date or seconds/milliseconds timestamp. |
| until | No | string | number | Only posts published before this date or timestamp, using the same format as since. |
Only the request parameters listed on this page are used; other fields are ignored. Pass pagination cursors back unchanged, without encoding, decoding or conversion.
One page by default, capped at five per request. Page counts must be positive integers; higher values are capped at five.
Searches posts only. content is a search snippet rather than the full body; content/snippetId may be null.
Response Fields
| Field | Type | Description |
|---|---|---|
| code | integer | Status code; 0 indicates success. |
| message | string | Response message; ok on success. |
| pointCost | number | Points charged for this request. |
| data | object | Collected data, with fields described below. |
| meta | object | Request identifier and duration in milliseconds. |
| billing | object | Charged units, unit price and billing rule version. |
data Fields
| Field | Type | Description |
|---|---|---|
| posts | object[] | Collected posts. |
| count | number | Number of result items. |
| pagination | object | Continuation cursor and whether more results are available. |
data.posts[] Fields
| Field | Type | Description |
|---|---|---|
| title | string | null | Title |
| publishedAt | object | null | Publication time. |
| likes | number | null | Like count. |
| commentsCount | number | null | Platform-reported comment total; not the number billed. |
| redditPostId | string | Reddit post id |
| id36 | string | null | Id36 |
| url | string | null | Content URL. |
| subreddit | string | null | Subreddit name without r/. |
| over18 | boolean | Over18 |
| spoiler | boolean | Spoiler |
| thumbnail | string | null | Thumbnail |
| previewImage | string | null | Preview image |
| gallery | object[] | Gallery |
| content | string | null | Content text; may be null for records without text. |
| snippetId | string | null | Snippet id |
| subredditId | string | null | Subreddit id |
| safeSearch | string | null | Safe search |
| structureType | string | null | Structure type |
| subredditNsfw | boolean | null | Subreddit nsfw |
| subredditQuarantined | boolean | null | Subreddit quarantined |
| actionInfo | object | null | Action info |
| poster | object | Poster |
data.posts[].publishedAt Fields
| Field | Type | Description |
|---|---|---|
| text | string | null | Text value. |
| value | number | null | Parsed value. |
data.posts[].gallery[] Fields
| Field | Type | Description |
|---|---|---|
| url | string | Content URL. |
| width | number | null | Width |
| height | number | null | Height |
data.posts[].actionInfo Fields
| Field | Type | Description |
|---|---|---|
| position | number | null | Position |
| relativePosition | number | null | Relative position |
| type | string | null | Result type. |
data.posts[].poster Fields
| Field | Type | Description |
|---|---|---|
| nickname | string | null | Author display name. |
| profileUrl | string | null | Author profile URL. |
| id | string | null | Record identifier. |
data.pagination Fields
| Field | Type | Description |
|---|---|---|
| after | string | null | Pass pagination.after from the previous response unchanged. |
| hasMore | boolean | Whether more results are available. |
Request Example
Response Example
This excerpt shows the first item of each list. Long text and URLs are shortened; pointCost is the charge for the complete response. The playground contains the full schema.
Points Usage
0.8 points per primary result.
Empty results and failed requests are not charged. Duplicate IDs are counted once within a response. Separate calls and pages are billed separately. See Social Media Reviews API billing.

