Skip to content
scrapeatlas.Dashboard

Subreddit posts

Try in Playground

Retrieve public subreddit posts, newest first by default, with ranking, timeframe, publication-time filters, after continuation and optional trimmed records.

GET/v1/reddit/subredditx-api-key
x-api-keystringrequiredheader

Your ScrapeAtlas customer key. Create one on /account/ and set SCRAPEATLAS_API_KEY.

Query parameters
8
subredditstringrequiredquery

Required.

ExampleExample
sortenumdefault: "new"query

new (default), hot, best, top or rising.

one of: best, hot, new, top, rising · default: "new"

Examplenew
timeframeenumdefault: "all"query

Optional.

one of: all, day, week, month, year · default: "all"

Exampleall
sincenumber | stringquery

Earliest publication time to include, ISO 8601 or Unix seconds. With sort=new, pagination ends once posts are older than since.

untilnumber | stringquery

Publication time to stop before, ISO 8601 or Unix seconds; later than since.

afterstringquery

Optional.

max 5000 chars

trimboolean | enumdefault: falsequery

Optional.

default: false

Examplefalse
cache_max_ageenumquery

Optional compatibility value: 1d, 3d, 7d, 14d or 30d.

one of: 1d, 3d, 7d, 14d, 30d

Response fields
47
requestIdstring

Always included.

order is newest_first for sort=new and ranked otherwise. Inspect complete and reasons on every response.

coverage.completeboolean

Always included.

coverage.reasonsstring[]

Always included.

coverage.orderenumoptional

Optional.

one of: newest_first, oldest_first, ranked, relevance, source_order

Optional.

coverage.window.sincestringoptional

Optional.

coverage.window.untilstringoptional

Optional.

Always included.

accounting.httpRequestsinteger

Always included.

≥ 0

accounting.proxyBytesnumber

Always included.

≥ 0

accounting.durationMsnumber

Always included.

≥ 0

accounting.pageLoadsinteger

Always included.

≥ 0

accounting.challengeCountinteger

Always included.

≥ 0

accounting.rssRequestsinteger

Always included.

≥ 0

accounting.proxySessionIdstring

Always included.

successboolean

Always included.

statusenum

success, partial, challenged or failed. error contains a sanitized machine-readable reason on failure.

one of: success, partial

Always included.

up to 100 items

posts.idstring

Always included.

posts.titlestring

Always included.

posts.permalinkstring

Always included.

posts.namestringoptional

Optional.

posts.authorstringnullableoptional

Optional.

posts.author_fullnamestringnullableoptional

Optional.

posts.subredditstringnullableoptional

Optional.

posts.subreddit_idstringnullableoptional

Optional.

posts.selftextstringnullableoptional

Optional.

posts.selftext_htmlstringnullableoptional

Optional.

posts.scorenumbernullableoptional

Optional.

posts.upsnumbernullableoptional

Optional.

posts.downsnumbernullableoptional

Optional.

posts.upvote_rationumbernullableoptional

Optional.

posts.num_commentsnumbernullableoptional

Optional.

posts.creatednumbernullableoptional

Optional.

posts.created_utcnumbernullableoptional

Optional.

posts.created_at_isostringnullable

Always included.

posts.urlstringnullableoptional

Optional.

posts.is_videobooleannullableoptional

Optional.

posts.over_18booleannullableoptional

Optional.

posts.archivedbooleannullableoptional

Optional.

posts.lockedbooleannullableoptional

Optional.

posts.spoilerbooleannullableoptional

Optional.

posts.link_flair_textstringnullableoptional

Optional.

posts.total_awards_receivednumbernullableoptional

Optional.

posts.subreddit_subscribersnumbernullableoptional

Optional.

afterstringnullable

Always included.

HTTP 200 returns the success variant. Check status: partial means usable data with warnings, and failed or challenged requests carry a failure object described in Errors & responses.

Error codes
6
HTTPfailure.codeMeaning
400invalid_requestThe request failed validation.
401invalid_requestThe internal service secret is invalid.
503upstream_error breaker_openProxy unavailable or thread retrieval temporarily paused.
502upstream_errorRetrieval failed.
504timeoutThe deadline expired; available results are retained.
200partial challengedInspect status and failure even when HTTP succeeds.