Reddit Media Search
GET
/v1/reddit/media/searchMCP
reddit_search_media2 creditsLiveUpdated
Description
Find Reddit image, video and gallery posts by keyword. Returns posts with a media object holding direct image or video URLs. Costs 2 credits per page. Tip: set kind=image, video or gallery to narrow results; the body field is empty for media results.
Parameters
| Name | In | Type | Required | Default | Description |
|---|---|---|---|---|---|
q | query | string | yes | Search text. Reddit operators allowed. | |
kind | query | enum | no | all | Media type to return. One of: image, video, gallery, all. |
sort | query | enum | no | relevance | Result order. One of: relevance, new, hot, top, comments. |
time | query | enum | no | all | Time window. One of: hour, day, week, month, year, all. |
nsfw | query | boolean,string | no | Include adult media. true needs the 18+ setting. | |
limit | query | integer | no | 25 | Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page. Range 1 to 100. |
cursor | query | string | no | Opaque cursor from the previous response's page.nextCursor. Length 1 to 2048. |
- q query, string, required
- Search text. Reddit operators allowed.
- kind query, enum
- Media type to return. One of:
image,video,gallery,all. Defaultall. - sort query, enum
- Result order. One of:
relevance,new,hot,top,comments. Defaultrelevance. - time query, enum
- Time window. One of:
hour,day,week,month,year,all. Defaultall. - nsfw query, boolean,string
- Include adult media. true needs the 18+ setting.
- limit query, integer
- Max rows to return (1-100). Reddit pages hold about 25 rows; larger values still return one page. Range 1 to 100. Default
25. - cursor query, string
- Opaque cursor from the previous response's page.nextCursor. Length 1 to 2048.
Request examples
curl "https://chatterapi.com/v1/reddit/media/search?q=saas+dashboard&limit=10" \
-H "Authorization: Bearer $CHATTERAPI_KEY"Response
data is a list of RedditPost, with page.nextCursor and page.hasMore for the next page. Fields:
| Field | Type | Nullable | Description |
|---|---|---|---|
id | string | no | Platform id. |
fullname | string | no | Reddit fullname (t3_ for posts, t1_ for comments). Dedupe on this. |
title | string | no | Title. |
body | string | no | Text body. Empty for link and media posts. |
author | string | yes | Author username, null when deleted. |
subreddit | string | no | Subreddit name without r/. |
permalink | string | no | Path on reddit.com. |
url | string | no | Full URL on the platform. |
externalUrl | string | yes | Link the post points to, when it is a link post. |
score | number | yes | Score (upvotes minus downvotes) as Reddit reports it. |
numComments | number | yes | Comment count. |
upvoteRatio | number | yes | Share of upvotes, 0 to 1. |
createdAt | string | no | ISO 8601 UTC timestamp. |
nsfw | boolean | no | Marked adult content. |
locked | boolean | yes | Comments are locked. |
media | object | yes | Images, video or gallery URLs, or null. |
response
{
"data": [
{
"id": "ohisdo",
"fullname": "t3_ohisdo",
"title": "I made a time, habit and goal tracker web app that displays as a flexible dashboard. My first Vue 3 serverless SaaS.",
"body": "",
"author": "msign",
"subreddit": "webdev",
"permalink": "/r/webdev/comments/ohisdo/i_made_a_time_habit_and_goal_tracker_web_app_that/",
"url": "https://www.reddit.com/r/webdev/comments/ohisdo/i_made_a_time_habit_and_goal_tracker_web_app_that/",
"externalUrl": null,
"score": 1810,
"numComments": 177,
"upvoteRatio": null,
"createdAt": "2021-07-10T13:33:49.000Z",
"nsfw": false,
"locked": null,
"media": {
"type": "video",
"urls": [
"https://v.redd.it/54dpscm51ea71/DASH_720.mp4?source=fallback"
]
}
},
{
"id": "1wlokpk",
"fullname": "t3_1wlokpk",
"title": "This belongs here",
"body": "",
"author": "leisurechef",
"subreddit": "enshittification",
"permalink": "/r/enshittification/comments/1wlokpk/this_belongs_here/",
"url": "https://www.reddit.com/r/enshittification/comments/1wlokpk/this_belongs_here/",
"externalUrl": null,
"score": 6279,
"numComments": 136,
"upvoteRatio": null,
"createdAt": "2026-09-20T18:22:14.000Z",
"nsfw": false,
"locked": null,
"media": {
"type": "image",
"urls": [
"https://i.redd.it/hm0owv5iwpqh1.jpeg"
]
}
},
{
"id": "1wa1f1o",
"fullname": "t3_1wa1f1o",
"title": "I needed a metrics dashboard for my SaaS, so I built a medieval village instead, every paying customer is a villager",
"body": "",
"author": "speaklifeandaimup",
"subreddit": "SaaS",
"permalink": "/r/SaaS/comments/1wa1f1o/i_needed_a_metrics_dashboard_for_my_saas_so_i/",
"url": "https://www.reddit.com/r/SaaS/comments/1wa1f1o/i_needed_a_metrics_dashboard_for_my_saas_so_i/",
"externalUrl": null,
"score": 157,
"numComments": 34,
"upvoteRatio": null,
"createdAt": "2026-09-07T19:12:11.000Z",
"nsfw": false,
"locked": null,
"media": {
"type": "image",
"urls": [
"https://i.redd.it/8pd6h3qwc5oh1.png"
]
}
}
],
"page": {
"nextCursor": "eyJ2IjoxLCJwIjoiY2l0ZXJvY2tldCIsImMiOiJ0M18xdmU4dHlsIiwibyI6MCwiaCI6ImUxMDhmMTljMDU2NiJ9",
"hasMore": true
},
"credits": {
"charged": 2,
"remaining": 24997
},
"requestId": "req_01JA7Q3V8K2N4P5R6S7T8V",
"cached": false
}Recorded live response captured 2026-10-13, truncated to 3 items. Credits and request id are illustrative.
Credits
2 credits per call. Failed calls cost 0. Cached responses cost the same. Test keys cost 0. Repeat calls with the same input within 10 minutes are served from cache.