Reddit Posts API

Define UTC Date Windows Before Retrieving Posts

Define inclusive UTC dates, avoid overlapping boundary days and preserve bounded photography selections. Practical date-window guidance without complete-archive guarantees.

Get API key

Distinguish publication date from collection time

A study of photography equipment can compare posts in two chosen periods, but it should distinguish record date from retrieval time. Reddit Posts API filters created_utc with from and to dates; it does not use archive ingestion time. The service is an independent historical archive, not a live or official Reddit feed. No published coverage span, permanent availability or identical future responses is guaranteed.

Begin with https://api.redditpostsapi.com/v1/posts?subreddit=photography&min_score=10&limit=3 to inspect the available records. The query selects the community and a minimum numeric score, not equipment topics or top-ranked posts. Read the content locally and define how you distinguish a camera recommendation, a question about a lens and unrelated photography material. Those are proposed coding categories, not findings or classifications calculated by the API.

Choose the study period in UTC before submitting it. from and to must use YYYY-MM-DD, with the to day included. This is day-level selection, not a second-precision timestamp interface. If your reference event is described in local time, convert its boundaries to UTC first. For an intraday question, request the enclosing dates and filter available record timestamps locally, documenting missing or unusable values.

Define adjacent windows without a shared boundary day

As a hypothetical selection rule, from=2024-05-01 and to=2024-05-07 includes all seven stated UTC days. A following interval can use from=2024-05-08 and to=2024-05-14. These dates illustrate request semantics, not verified archive coverage. Starting the second interval on May 7 would deliberately include that day in both. Correctly adjacent date ranges still do not guarantee complete or duplicate-free remote retrieval.

Record the route, community, dates, score threshold, any q text and record kind for each window. Holding these choices constant makes differences in selection easier to explain. It does not remove missing content or the influence of the score filter. min_score never sorts results and should not be treated as an objective measure of recommendation quality. Separate local text-coding decisions from the API conditions that selected records.

One request fetches one page of at most 100 records, with page limited to 1 through 100. Results use internal _doc order, not time or relevance sorting. A locally sorted table covers only retrieved posts. If a large window reaches the cap, smaller intervals may organize additional work, but partitioning does not establish exhaustive coverage. Preserve the actual response before advancing a local page checkpoint.

Audit what each window actually contains

Read relation alongside total: eq denotes an exact query total, gte a lower bound and unknown no reliable total, possibly null. An exact count does not prove that all matches were downloaded. Keep the reported state with each window rather than treating missing totals as zero. Report the records you actually analyzed and explain exclusions, repeated identifiers and missing text without claiming a complete timeline of equipment discussion.

Preserve original responses, parameters, retrieval times and a version of the annotation rules. Reprocessing saved inputs can support local repeatability; repeating the remote query need not yield identical posts. Responses are flat. If parent_id or link_id appears, grouping received objects is possible, but a full discussion tree is not guaranteed and those fields are not query filters. Do not infer unobserved comments or missing context.

Budget one credit per successful sample, page or repeat, including empty results. Handle 400 for invalid parameters, 401 for key problems, 402 for insufficient credit and 429 for rate limits. Invalid requests do not debit; upstream failures refund reservations. A lost client response may follow a billable success. /v1/status only confirms static scope and HTTP responsiveness. Consult Documentation, Pricing and Get API key before scheduling further collection, and present your windows as bounded retrieved selections.