{"openapi":"3.1.0","info":{"title":"API.SH: Reddit","version":"1.0.0","description":"The Reddit API from API.SH: public Reddit data as clean JSON. Every endpoint is a GET with query parameters and your key in the x-api-key header. Calls that run cost the credits shown (x-credits): successes, and lookups that found nothing (404). Refused calls and errors on our side are free. Docs: https://api.sh/docs · Every platform: https://api.sh/openapi.json","contact":{"name":"API.SH support","email":"support@api.sh","url":"https://api.sh/contact"},"termsOfService":"https://api.sh/legal/terms"},"servers":[{"url":"https://api.api.sh"}],"security":[{"apiKey":[]}],"tags":[{"name":"Account","description":"Your balance, usage, logs and past responses. Free."},{"name":"Reddit","description":"30 endpoints (social)","x-slug":"reddit","x-domains":["reddit.com"]}],"paths":{"/v1/account":{"get":{"operationId":"getAccount","tags":["Account"],"summary":"Balance, plan, spend and spend limits","description":"Credits by bucket (free monthly, plan, pay-as-you-go), the plan, credits spent today and this month (UTC), your spend limits and the key used. Free: costs no credits.","responses":{"200":{"description":"Account","content":{"application/json":{"example":{"success":true,"account":{"id":"8f0c…","status":"active","unlimited":false},"credits":{"total":41250,"free":100,"plan":0,"payg":41150,"free_resets_at":"2026-11-01T00:00:00Z"},"plan":null,"spend":{"today":120,"this_month":3400,"daily_limit":5000,"monthly_limit":null,"period":"UTC"},"key":{"id":"…","name":"production","prefix":"ash_li","created_at":"2026-10-01T00:00:00Z"}}}}},"401":{"description":"Missing, invalid, revoked or expired API key. Not charged. See https://api.sh/docs/errors#401","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/account/usage":{"get":{"operationId":"getAccountUsage","tags":["Account"],"summary":"Usage per day and per endpoint","description":"Calls, errors and credits per UTC day, and the top endpoints by credits. Free. Add output=csv for the daily rows as CSV.","parameters":[{"name":"days","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":90,"default":30}},{"$ref":"#/components/parameters/output"}],"responses":{"200":{"description":"Usage","content":{"application/json":{"schema":{"type":"object"}},"text/csv":{"schema":{"type":"string"}}}},"401":{"description":"Missing, invalid, revoked or expired API key. Not charged. See https://api.sh/docs/errors#401","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/account/logs":{"get":{"operationId":"listAccountLogs","tags":["Account"],"summary":"Your calls of the last 30 days","description":"Newest first. Filter by status, route prefix, key or time; page with `before` (the `next` value). Add output=csv|ndjson to download (up to 5,000 rows per request; the next cursor is in the x-next-cursor header). Free.","parameters":[{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":500,"default":50}},{"name":"status","in":"query","required":false,"description":"ok, error, or an HTTP status like 502.","schema":{"type":"string"}},{"name":"route","in":"query","required":false,"description":"Route prefix, e.g. /tiktok/v1","schema":{"type":"string"}},{"name":"key","in":"query","required":false,"description":"Only calls made with this key id.","schema":{"type":"string","format":"uuid"}},{"name":"since","in":"query","required":false,"description":"ISO time.","schema":{"type":"string","format":"date-time"}},{"name":"before","in":"query","required":false,"description":"Cursor from `next`.","schema":{"type":"string"}},{"$ref":"#/components/parameters/output"}],"responses":{"200":{"description":"Calls","content":{"application/json":{"schema":{"type":"object"}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"401":{"description":"Missing, invalid, revoked or expired API key. Not charged. See https://api.sh/docs/errors#401","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/v1/results/{request_id}":{"get":{"operationId":"getResult","tags":["Account"],"summary":"Fetch a past response again, free","description":"The exact response a call returned, for 30 days after the call, at no cost. Use the call's x-request-id. Supports output=csv|ndjson.","parameters":[{"name":"request_id","in":"path","required":true,"schema":{"type":"string","format":"uuid"}},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The stored response (headers: x-refetch: 1, x-original-time, x-original-route).","content":{"application/json":{"schema":{"type":"object"}}}},"404":{"description":"Not found, or not public. A lookup that ran costs the endpoint's price (credits_used says); an unknown route is free.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"410":{"description":"Older than 30 days.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}}}},"/reddit/v1/autocomplete":{"get":{"operationId":"redditAutocomplete","summary":"Reddit search suggestions","description":"What Reddit's search box suggests for a few typed letters: suggested queries, communities (name, id, weekly visitors or description, icon, NSFW and quarantine flags) and profiles.\n\nEvery response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-autocomplete","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"q","in":"query","required":true,"description":"The text typed so far.","schema":{"type":"string"},"example":"pyth"},{"name":"nsfw","in":"query","required":false,"description":"true includes NSFW communities.","schema":{"type":"boolean"},"example":"false"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"query":"pyth","count":10,"queries":[{"query":"python","url":"https://www.reddit.com/search/?q=python"},{"query":"python learning","url":"https://www.reddit.com/search/?q=python%20learning"},"… 3 more"],"communities":[{"name":"Python","id":"t5_2qh0y","nsfw":false,"quarantined":false,"weekly_visitors":"96K","caption":"96K weekly visitors","icon":"https://styles.redditmedia.com/t5_2qh0y/styles/communityIcon_lctik80p96tg1.png","url":"https://www.reddit.com/r/Python/"},{"name":"learnpython","id":"t5_2r8ot","nsfw":false,"quarantined":false,"weekly_visitors":null,"caption":"Beginner Python learning resources and advice on practicing basics","icon":"https://styles.redditmedia.com/t5_2r8ot/styles/communityIcon_jwr5s7l5ici61.png","url":"https://www.reddit.com/r/learnpython/"},"… 3 more"],"profiles":[],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/comment":{"get":{"operationId":"redditComment","summary":"Reddit comment with context","description":"One comment (its permalink view): the comment, the post it is on, up to `context` parent comments above it (top first, each with its parent id) and the replies under it in thread order (up to `limit`). Give the comment link as `url`, or `post_id` plus `comment_id`. Each item has author, text, HTML, date, permalink, links and images. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-comment","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"url","in":"query","required":false,"description":"Comment link: reddit.com/r/<sub>/comments/<post id>/comment/<comment id>/ or .../<post id>/<slug>/<comment id>/ (old. and new. links too).","schema":{"type":"string"},"example":"https://www.reddit.com/r/Python/comments/1qpq3cc/comment/o2ay8su/"},{"name":"post_id","in":"query","required":false,"description":"The post (id like 1qpq3cc, t3_1qpq3cc, or its link), with comment_id, when url is not given.","schema":{"type":"string"}},{"name":"comment_id","in":"query","required":false,"description":"Comment id (o2ay8su or t1_o2ay8su), with post_id.","schema":{"type":"string"}},{"name":"context","in":"query","required":false,"description":"Parent comments to include above the comment, 0 to 8 (default 3).","schema":{"type":"integer","default":"3"}},{"name":"limit","in":"query","required":false,"description":"Most items to read (post, parents, comment and replies), 1 to 100 (default 50).","schema":{"type":"integer","default":"50"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"Python","post_id":"t3_1qpq3cc","comment_id":"t1_o2ay8su","context":3,"url":"https://www.reddit.com/r/Python/comments/1qpq3cc/comment/o2ay8su/","post":{"id":"t3_1qpq3cc","author":"Fragrant_Ad3054","subreddit":"Python","title":"(Rant) AI is killing programming and the Python community","text":"I'm sorry but it has to come out.\n We are experiencing an endless sleep paralysis and it is getting worse and worse.\n Before, when we wanted…","created_at":"2026-01-28T22:24:43+00:00","updated_at":"2026-01-28T22:24:43+00:00","url":"https://www.reddit.com/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/","author_url":"https://www.reddit.com/user/Fragrant_Ad3054","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>I'm sorry but it has to come out.</p> <p>We are experiencing an endless sleep paralysis and it is getting …"},"parents_count":0,"parents":[],"comment":{"id":"t1_o2ay8su","author":"metadatame","subreddit":"Python","title":"/u/metadatame on (Rant) AI is killing programming and the Python community","text":"It'll keep us all in job - someone has to fix what people are messing up","created_at":"2026-01-28T22:33:15+00:00","updated_at":"2026-01-28T22:33:15+00:00","url":"https://www.reddit.com/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/o2ay8su/","author_url":"https://www.reddit.com/user/metadatame","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/o2ay8su/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>It'll keep us all in job - someone has to fix what people are messing up</p> </div><!-- SC_ON -->","parent_id":"t3_1qpq3cc"},"replies_count":46,"note":"replies are in thread order (each reply follows the comment it answers); their nesting is not part of this source","replies":[{"id":"t1_o2azt7s","author":"Slimmanoman","subreddit":"Python","title":"/u/Slimmanoman on (Rant) AI is killing programming and the Python community","text":"Man I don't look forward to digging through thousands of chatgpt-coded lines with a hallucinating documentation. Human code can be bad but a…","created_at":"2026-01-28T22:40:47+00:00","updated_at":"2026-01-28T22:40:47+00:00","url":"https://www.reddit.com/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/o2azt7s/","author_url":"https://www.reddit.com/user/Slimmanoman","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/o2azt7s/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>Man I don't look forward to digging through thousands of chatgpt-coded lines with a hallucinating document…"},{"id":"t1_o2b1ow3","author":"james_pic","subreddit":"Python","title":"/u/james_pic on (Rant) AI is killing programming and the Python community","text":"As dumb as LLMs can be, they can't match the dumbest human programmers. They simply don't have the imagination to find such creative ways to…","created_at":"2026-01-28T22:49:54+00:00","updated_at":"2026-01-28T22:49:54+00:00","url":"https://www.reddit.com/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/o2b1ow3/","author_url":"https://www.reddit.com/user/james_pic","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/Python/comments/1qpq3cc/rant_ai_is_killing_programming_and_the_python/o2b1ow3/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>As dumb as LLMs can be, they can't match the dumbest human programmers. They simply don't have the imagina…"},"… 44 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/comments":{"get":{"operationId":"redditComments","summary":"Comments of a Reddit post","description":"The post's comment tree (25 top-level threads per page). `next_cursor` loads the next top-level comments; `more_replies` lists the reply threads Reddit folded, each with its own cursor for this route. `next_cursor` is null on the last page. `depth` keeps only comments down to that reply level (0 = top-level only). Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-comments","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"url","in":"query","required":false,"description":"Post URL (instead of subreddit + post_id).","schema":{"type":"string"},"example":"https://www.reddit.com/r/Python/comments/1x89bnq/"},{"name":"subreddit","in":"query","required":false,"schema":{"type":"string"},"example":"Python"},{"name":"post_id","in":"query","required":false,"schema":{"type":"string"},"example":"1x89bnq"},{"name":"sort","in":"query","required":false,"description":"Comment sort: best (confidence), top (default), new, controversial, old, qa.","schema":{"type":"string","enum":["best","confidence","top","new","controversial","old","qa"]},"example":"top"},{"name":"post_url","in":"query","required":false,"description":"Same as `url`.","schema":{"type":"string"}},{"name":"tree","in":"query","required":false,"description":"1 adds `comment_tree`: the same comments nested, each with its `replies` and folded `more_replies`.","schema":{"type":"string","enum":["0","1"]}},{"name":"cursor","in":"query","required":false,"description":"`next_cursor` from the previous page (more top-level comments), or a `more_replies[].cursor` (the replies Reddit folded under that comment).","schema":{"type":"string"}},{"name":"depth","in":"query","required":false,"description":"Deepest reply level to return: 0 = top-level comments only, 1 = and their direct replies, and so on. `more_replies` then lists only threads above that level.","schema":{"type":"integer"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"Python","post_id":"1x89bnq","sort":"top","total_comments":16,"count":14,"post_permalink":"https://www.reddit.com/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/","more_comments_urls":[],"comments":[{"author":"ConcreteExist","score":"43","permalink":"/r/Python/comments/1x89bnq/comment/phan1k9/","body":"Admittedly, I've only ever used base64 encoding out of all of those listed here, happy to see it's performance improving though.","id":"t1_phan1k9","url":"https://www.reddit.com/r/Python/comments/1x89bnq/comment/phan1k9/","score_value":43,"created_at":"2026-10-17T12:45:42.394000+0000","depth":0,"parent_id":null,"post_id":"t3_1x89bnq","parent_permalink":null,"position":0,"content_type":"text","author_avatar":"https://styles.redditmedia.com/t5_eke9l/styles/profileIcon_mphxsqljvnnc1.png?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=f14…","is_op":false,"is_stickied":false,"is_deleted":false,"body_html":"<div id=\"t1_phan1k9-post-rtjson-content\" class=\"py-0 xs:mx-xs mx-2xs max-w-full scalable-text [--emote-size:20px]\" dir=\"auto\">\n      <p>\n   …","images":[],"links":[],"moderation_verdict":null,"attributes":{"created":"2026-10-17T12:45:42.394000+0000","author":"ConcreteExist","avatar":"https://styles.redditmedia.com/t5_eke9l/styles/profileIcon_mphxsqljvnnc1.png?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=f14…","thingId":"t1_phan1k9","depth":"0","comment-position":"0","comment-parent-positions":"[]","permalink":"/r/Python/comments/1x89bnq/comment/phan1k9/","reload-url":"/svc/shreddit/comment/t1_phan1k9?depth=0&subredditName=Python","score":"43","paid-award-only-comment-highlighting-enabled":true,"postId":"t3_1x89bnq","content-type":"text","highlight-variant":"","ariaLabel":"Comment from ConcreteExist 6 days ago","class":"relative [contain:style] col-start-2","record-ttci":true}},{"author":"One_Sun5074","score":"5","permalink":"/r/Python/comments/1x89bnq/comment/phcdj14/","body":"Same here, 99% of what I touch in real-world projects is just base64 for API payloads and data URIs. That ~3.6x speedup on base64_large in 3…","id":"t1_phcdj14","url":"https://www.reddit.com/r/Python/comments/1x89bnq/comment/phcdj14/","score_value":5,"created_at":"2026-10-17T17:44:10.863000+0000","depth":1,"parent_id":"t1_phan1k9","post_id":"t3_1x89bnq","parent_permalink":"/r/Python/comments/1x89bnq/comment/phan1k9/","position":0,"content_type":"text","author_avatar":"https://styles.redditmedia.com/t5_c5znjd/styles/profileIcon_01we57gsd2uh1.jpeg?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=f…","is_op":false,"is_stickied":false,"is_deleted":false,"body_html":"<div id=\"t1_phcdj14-post-rtjson-content\" class=\"py-0 xs:mx-xs mx-2xs max-w-full scalable-text [--emote-size:20px]\" dir=\"auto\">\n      <p>\n   …","images":[],"links":[],"moderation_verdict":null,"attributes":{"created":"2026-10-17T17:44:10.863000+0000","author":"One_Sun5074","avatar":"https://styles.redditmedia.com/t5_c5znjd/styles/profileIcon_01we57gsd2uh1.jpeg?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=f…","thingId":"t1_phcdj14","depth":"1","parentId":"t1_phan1k9","comment-position":"0","comment-parent-positions":"[0]","permalink":"/r/Python/comments/1x89bnq/comment/phcdj14/","parent-permalink":"/r/Python/comments/1x89bnq/comment/phan1k9/","reload-url":"/svc/shreddit/comment/t1_phcdj14?depth=1&subredditName=Python","score":"5","paid-award-only-comment-highlighting-enabled":true,"postId":"t3_1x89bnq","content-type":"text","highlight-variant":"","slot":"children-t1_phan1k9-0","ariaLabel":"Comment thread level 1: Reply from One_Sun5074 6 days ago","class":"relative [contain:style] col-start-2"}},"… 12 more"],"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/custom-feed":{"get":{"operationId":"redditCustomFeed","summary":"Reddit custom feed posts","description":"Posts of a user's public custom feed (multireddit): id, title, author, community, date, linked URL, thumbnail, images, text and permalink. Give the feed link as `url`, or `username` plus `name`. 404 when the feed does not exist or is private. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-custom-feed","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"url","in":"query","required":false,"description":"Custom feed link: reddit.com/user/<username>/m/<name>/.","schema":{"type":"string"},"example":"https://www.reddit.com/user/Lapper/m/depthhub/"},{"name":"username","in":"query","required":false,"description":"Owner of the feed (spez, u/spez or a profile link), with name, when url is not given.","schema":{"type":"string"},"example":"Lapper"},{"name":"name","in":"query","required":false,"description":"The feed's name, as in reddit.com/user/<username>/m/<name>/.","schema":{"type":"string"},"example":"depthhub"},{"name":"sort","in":"query","required":false,"description":"hot (default), new, top, rising, controversial.","schema":{"type":"string","enum":["hot","new","top","rising","controversial"]},"example":"hot"},{"name":"time","in":"query","required":false,"description":"Time range for top/controversial: hour, day (default), week, month, year, all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"limit","in":"query","required":false,"description":"Posts per page, 1 to 100 (default 25).","schema":{"type":"integer","default":"25"}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"username":"Lapper","name":"depthhub","feed_title":"depthhub subreddits curated by /u/Lapper","sort":"hot","time":null,"url":"https://www.reddit.com/user/Lapper/m/depthhub/","count":25,"next_cursor":"t3_1xltfe9","posts":[{"position":1,"id":"t3_1xncw9u","author":"J2quared","subreddit":"AskHistorians","title":"Historians, when referring to a historical figure with Black ancestry, even if it's 1/16th, when does academia start or stop referring to th…","text":null,"created_at":"2026-11-04T02:45:43+00:00","updated_at":"2026-11-04T02:45:43+00:00","url":"https://www.reddit.com/r/AskHistorians/comments/1xncw9u/historians_when_referring_to_a_historical_figure/","author_url":"https://www.reddit.com/user/J2quared","category_label":"r/AskHistorians","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/AskHistorians/comments/1xncw9u/historians_when_referring_to_a_historical_figure/","content_html":"  submitted by   <a href=\"https://www.reddit.com/user/J2quared\"> /u/J2quared </a>   to   <a href=\"https://www.reddit.com/r/AskHistorians/\"> …"},{"position":2,"id":"t3_1xn6rpb","author":"UnusualRequirement33","subreddit":"TrueFilm","title":"There seems to be a new American cinematic movement emerging","text":"Well into the second half of the 2020s, the defining independent film movement of the decade is making itself apparent. I might call it “new…","created_at":"2026-11-03T22:08:19+00:00","updated_at":"2026-11-03T22:08:19+00:00","url":"https://www.reddit.com/r/TrueFilm/comments/1xn6rpb/there_seems_to_be_a_new_american_cinematic/","author_url":"https://www.reddit.com/user/UnusualRequirement33","category_label":"r/TrueFilm","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/TrueFilm/comments/1xn6rpb/there_seems_to_be_a_new_american_cinematic/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>Well into the second half of the 2020s, the defining independent film movement of the decade is making its…"},"… 23 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/domain":{"get":{"operationId":"redditDomain","summary":"Reddit posts linking to a domain","description":"Posts across Reddit that link to a website (Reddit's /domain/<site> listing): id, title, author, community, date, the linked URL, thumbnail, images, text and permalink. `domain` takes a bare domain or any link on it. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-domain","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"domain","in":"query","required":true,"description":"A domain (youtube.com, nytimes.com, i.redd.it) or any link on it.","schema":{"type":"string"},"example":"youtube.com"},{"name":"sort","in":"query","required":false,"description":"hot (default), new, top, controversial.","schema":{"type":"string","enum":["hot","new","top","controversial"]},"example":"hot"},{"name":"time","in":"query","required":false,"description":"Time range for top/controversial: hour, day (default), week, month, year, all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"limit","in":"query","required":false,"description":"Posts per page, 1 to 100 (default 25).","schema":{"type":"integer","default":"25"}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"domain":"youtube.com","sort":"hot","time":null,"url":"https://www.reddit.com/domain/youtube.com/hot/","count":25,"next_cursor":"t3_1xn5mpy","posts":[{"position":1,"id":"t3_1xndyqk","author":"spherocytes","subreddit":"videos","title":"James Talarico defeats Ken Paxton for Texas Senate seat","text":null,"created_at":"2026-11-04T03:39:36+00:00","updated_at":"2026-11-04T03:39:36+00:00","url":"https://www.reddit.com/r/videos/comments/1xndyqk/james_talarico_defeats_ken_paxton_for_texas/","author_url":"https://www.reddit.com/user/spherocytes","category_label":"r/videos","thumbnail":"https://external-preview.redd.it/tGhk38FrMG6DpNmq-mzSuCTuQhkiQUCB2HoPPEEscwc.jpeg?width=320&crop=smart&auto=webp&s=aea26f291abf4f3290fb29434…","external_url":"https://www.youtube.com/watch?v=kwFGP4IaabQ","images":["https://external-preview.redd.it/tGhk38FrMG6DpNmq-mzSuCTuQhkiQUCB2HoPPEEscwc.jpeg?width=320&crop=smart&auto=webp&s=aea26f291abf4f3290fb29434…"],"videos":[],"links":[],"permalink":"/r/videos/comments/1xndyqk/james_talarico_defeats_ken_paxton_for_texas/","content_html":"<table> <tr><td> <a href=\"https://www.reddit.com/r/videos/comments/1xndyqk/james_talarico_defeats_ken_paxton_for_texas/\"> <img src=\"https://…"},{"position":2,"id":"t3_1xnaot3","author":"spherocytes","subreddit":"videos","title":"BREAKING: Incumbent Jon Ossoff projected winner of Georgia Senate","text":null,"created_at":"2026-11-04T00:59:10+00:00","updated_at":"2026-11-04T00:59:10+00:00","url":"https://www.reddit.com/r/videos/comments/1xnaot3/breaking_incumbent_jon_ossoff_projected_winner_of/","author_url":"https://www.reddit.com/user/spherocytes","category_label":"r/videos","thumbnail":"https://external-preview.redd.it/Bpj5cwwyLTxilo_QpQDmouLSF1fkytPpYuLgVlZi8v0.jpeg?width=320&crop=smart&auto=webp&s=a0104064091c869d7502409d9…","external_url":"https://www.youtube.com/watch?v=KArgwa9Iqpw","images":["https://external-preview.redd.it/Bpj5cwwyLTxilo_QpQDmouLSF1fkytPpYuLgVlZi8v0.jpeg?width=320&crop=smart&auto=webp&s=a0104064091c869d7502409d9…"],"videos":[],"links":[],"permalink":"/r/videos/comments/1xnaot3/breaking_incumbent_jon_ossoff_projected_winner_of/","content_html":"<table> <tr><td> <a href=\"https://www.reddit.com/r/videos/comments/1xnaot3/breaking_incumbent_jon_ossoff_projected_winner_of/\"> <img src=\"ht…"},"… 23 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/popular":{"get":{"operationId":"redditPopular","summary":"Reddit popular posts","description":"r/popular as Reddit shows it to visitors: 25 posts per page with score, upvote ratio, comment count, awards, flair, media (video, gallery, images), flags and the raw post attributes. `country` gives a country's popular feed (it changes the hot and best orders). Pass `next_cursor` back as `cursor` (the other parameters are kept in it); null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-popular","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"sort","in":"query","required":false,"description":"hot (default), best, new, top, rising, controversial.","schema":{"type":"string","enum":["hot","best","new","top","rising","controversial"]},"example":"hot"},{"name":"time","in":"query","required":false,"description":"Time range for top/controversial: hour, day (default), week, month, year, all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"country","in":"query","required":false,"description":"Two-letter country code for that country's popular feed (e.g. US, GB, IN, DE), or GLOBAL.","schema":{"type":"string"}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"sort":"hot","time":null,"country":null,"count":25,"next_cursor":"p.YWZ0ZXI9ZEROZk1YaHRkV0p5ZFElM0QlM0QmZGlzdGFuY2U9MjkmYWREaXN0YW5jZT0zJm5hdmlnYXRpb25TZXNzaW9uSWQ9ZWExNDM2MmItZGZiYy00Y2Y5LThhOTMtYjIzZDhjND…","posts":[{"id":"t3_1xn80eu","title":"2026 Midterms News and Updates, November 3 (Thread 17) (Election Day Part 2) | Live Discussion","author":"PoliticsModeratorBot","score":"1510","comments":"12823","created_at":"2026-11-03T22:59:46.467000+0000","url":"https://www.reddit.com/r/politics/comments/1xn80eu/2026_midterms_news_and_updates_november_3_thread/","permalink":"/r/politics/comments/1xn80eu/2026_midterms_news_and_updates_november_3_thread/","content_url":"https://www.reddit.com/r/politics/comments/1xn80eu/2026_midterms_news_and_updates_november_3_thread/","domain":"self.politics","post_type":"multi_media","language":"en","upvote_ratio":0.9630541871921182,"award_count":2,"score_value":1510,"comment_count":12823,"author_id":"t2_onl9u","author_icon":"https://styles.redditmedia.com/t5_1k2ivu/styles/profileIcon_u7q1m4e813z51.jpg?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=7d…","author_profile":null,"subreddit":"politics","subreddit_id":"t5_2cneq","subreddit_prefixed":"r/politics","stickied":false,"nsfw":false,"spoiler":false,"locked":false,"archived":false,"flair":null,"flairs":[],"text":"Please use this thread to discuss news, updates, and commentary regarding the 2026 midterms and associated elections.\n\nYou can find r/politi…","text_html":"<p>\n      Please use this thread to discuss news, updates, and commentary regarding the 2026 midterms and associated elections.\n    </p><p>\n…","images":[],"media":[],"feed_index":0,"name":"t3_1xn80eu","short_id":"1xn80eu","created_utc":1793746786,"author_url":"https://www.reddit.com/user/PoliticsModeratorBot/","subreddit_url":"https://www.reddit.com/r/politics/","is_self":true,"…":"17 more fields"},{"id":"t3_1xnejkt","title":"Democrat Gina Hinojosa takes down Texas Gov. Greg Abbott in stunning result","author":"themkwjeremy13","score":"34188","comments":"2136","created_at":"2026-11-04T04:09:23.721000+0000","url":"https://www.reddit.com/r/news/comments/1xnejkt/democrat_gina_hinojosa_takes_down_texas_gov_greg/","permalink":"/r/news/comments/1xnejkt/democrat_gina_hinojosa_takes_down_texas_gov_greg/","content_url":"https://www.nbcnews.com/politics/2026-election/gina-hinojosa-win-texas-governor-race-greg-abbott-upset-election-rcna603360","domain":"nbcnews.com","post_type":"link","language":"en","upvote_ratio":0.9891453696070349,"award_count":19,"score_value":34188,"comment_count":2136,"author_id":"t2_qrvui","author_icon":"https://styles.redditmedia.com/t5_bbdpy/styles/profileIcon_snoo6bd85e13-c129-44c9-a895-8a2d1156e5de-headshot.png?width=64&height=64&frame=1&…","author_profile":null,"subreddit":"news","subreddit_id":"t5_2qh3l","subreddit_prefixed":"r/news","stickied":false,"nsfw":false,"spoiler":false,"locked":false,"archived":false,"flair":null,"flairs":[],"text":null,"text_html":null,"images":["https://external-preview.redd.it/53V9iDw0Nsve8ghYT2nmlWV7jDDKzMRICVfhfK6BL-s.jpeg?width=140&height=73&auto=webp&s=730afd4720757e06cc13783da2…"],"media":[],"feed_index":2,"name":"t3_1xnejkt","short_id":"1xnejkt","created_utc":1793765363,"author_url":"https://www.reddit.com/user/themkwjeremy13/","subreddit_url":"https://www.reddit.com/r/news/","is_self":false,"…":"17 more fields"},"… 23 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/post":{"get":{"operationId":"redditPost","summary":"One Reddit post with top comments","description":"The post (title, author, text, link, media, dates, community) with its score, comment count and NSFW/spoiler flags (`stats_found` says whether they were found) and its top comments. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-post","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"url","in":"query","required":false,"description":"Post URL (or pass it as `post_url`).","schema":{"type":"string"},"example":"https://www.reddit.com/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/"},{"name":"post_url","in":"query","required":false,"description":"Same as `url`.","schema":{"type":"string"}},{"name":"stats","in":"query","required":false,"description":"0 skips the score/comment-count lookup (faster).","schema":{"type":"string","enum":["1","0"]}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"id":"t3_1x89bnq","subreddit":"Python","title":"Python 3.10–3.15 encoding benchmarks: big gains for Base32 and Base85, but 3.14 leads Base16","author":"BestRef","published":"2026-10-17T12:43:06+00:00","updated":"2026-10-17T12:43:06+00:00","text":"Eight encoding benchmarks across Python 3.10–3.15 using pyperformance. Python 3.15 recorded the lowest mean in seven of them, with particula…","link":null,"url":"https://www.reddit.com/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/","author_url":"https://www.reddit.com/user/BestRef","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":["https://docs.python.org/3.15/whatsnew/3.15.html#base64-binascii","https://en.lewoniewski.info/2026/python-315-vs-314-313-312-and-earlier-speed-comparison/","… 1 more"],"permalink":"/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>Eight encoding benchmarks across Python 3.10–3.15 using pyperformance. Python 3.15 recorded the lowest mea…","subreddit_description":"The largest Python community for Reddit! Stay up to date with the latest news, packages, and meta information relating to the Python program…","subreddit_icon":"https://b.thumbs.redditmedia.com/8HiO52_EuT_h63Qg.png","feed":{"title":"Python 3.10–3.15 encoding benchmarks: big gains for Base32 and Base85, but 3.14 leads Base16 : Python","subtitle":"The largest Python community for Reddit! Stay up to date with the latest news, packages, and meta information relating to the Python program…","updated":"2026-10-23T19:34:23+00:00","icon":"https://www.redditstatic.com/icon.png/","logo":"https://b.thumbs.redditmedia.com/8HiO52_EuT_h63Qg.png","category":"Python","category_label":"r/Python","url":"https://www.reddit.com/r/Python/comments/1x89bnq/"},"comments":[{"id":"t1_phan1k9","author":"ConcreteExist","text":"Admittedly, I've only ever used base64 encoding out of all of those listed here, happy to see it's performance improving though.","updated":"2026-10-17T12:45:42+00:00","url":"https://www.reddit.com/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/phan1k9/","published":null,"title":"/u/ConcreteExist on Python 3.10–3.15 encoding benchmarks: big gains for Base32 and Base85, but 3.14 leads Base16","author_url":"https://www.reddit.com/user/ConcreteExist","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/phan1k9/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>Admittedly, I've only ever used base64 encoding out of all of those listed here, happy to see it's perform…"},{"id":"t1_phcdj14","author":"One_Sun5074","text":"Same here, 99% of what I touch in real-world projects is just base64 for API payloads and data URIs. That ~3.6x speedup on base64_large in 3…","updated":"2026-10-17T17:44:10+00:00","url":"https://www.reddit.com/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/phcdj14/","published":null,"title":"/u/One_Sun5074 on Python 3.10–3.15 encoding benchmarks: big gains for Base32 and Base85, but 3.14 leads Base16","author_url":"https://www.reddit.com/user/One_Sun5074","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/Python/comments/1x89bnq/python_310315_encoding_benchmarks_big_gains_for/phcdj14/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>Same here, 99% of what I touch in real-world projects is just base64 for API payloads and data URIs. That …"},"… 12 more"],"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/post/duplicates":{"get":{"operationId":"redditPostDuplicates","summary":"Other discussions of a Reddit post","description":"Crossposts and other posts of the same link across communities (the post's \"other discussions\"), with title, author, community, date, link and thumbnail. `post` is the original. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-post-duplicates","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"url","in":"query","required":false,"description":"Post URL (or pass `post_id`).","schema":{"type":"string"},"example":"https://www.reddit.com/r/technology/comments/1xhz9fy/massive_leak_exposes_41000_homeland_security/"},{"name":"post_id","in":"query","required":false,"description":"Post id, e.g. 1xhz9fy (instead of url).","schema":{"type":"string"}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"post_id":"t3_1xhz9fy","post":{"id":"t3_1xhz9fy","title":"Massive Leak Exposes 41,000 Homeland Security Workers—Including Undercover ICE Agents","author":"CarciaNerissa","subreddit":"technology","published":"2026-10-28T20:16:57+00:00","updated":"2026-10-28T20:16:57+00:00","text":null,"url":"https://www.reddit.com/r/technology/comments/1xhz9fy/massive_leak_exposes_41000_homeland_security/","author_url":"https://www.reddit.com/user/CarciaNerissa","category_label":"r/technology","thumbnail":"https://external-preview.redd.it/bisWoflABc4JeYxihCQ1h1MKkgQebrTvvF28MwePFEk.jpeg?width=640&crop=smart&auto=webp&s=dc31b52185252ceb76ee0b719…","external_url":"https://www.wired.com/story/massive-leak-exposes-41000-homeland-security-workers-including-undercover-ice-agents/","images":["https://external-preview.redd.it/bisWoflABc4JeYxihCQ1h1MKkgQebrTvvF28MwePFEk.jpeg?width=640&crop=smart&auto=webp&s=dc31b52185252ceb76ee0b719…"],"videos":[],"links":[],"permalink":"/r/technology/comments/1xhz9fy/massive_leak_exposes_41000_homeland_security/","content_html":"<table> <tr><td> <a href=\"https://www.reddit.com/r/technology/comments/1xhz9fy/massive_leak_exposes_41000_homeland_security/\"> <img src=\"htt…"},"count":61,"next_cursor":null,"duplicates":[{"id":"t3_1xhz04s","title":"Massive Leak Exposes 41,000 Homeland Security Workers—Including Undercover ICE Agents","author":"DEADBEEFh","subreddit":"politics","published":"2026-10-28T20:07:16+00:00","updated":"2026-10-28T20:07:16+00:00","text":null,"url":"https://www.reddit.com/r/politics/comments/1xhz04s/massive_leak_exposes_41000_homeland_security/","author_url":"https://www.reddit.com/user/DEADBEEFh","category_label":"r/politics","thumbnail":"https://external-preview.redd.it/bisWoflABc4JeYxihCQ1h1MKkgQebrTvvF28MwePFEk.jpeg?width=640&crop=smart&auto=webp&s=dc31b52185252ceb76ee0b719…","external_url":"https://www.wired.com/story/massive-leak-exposes-41000-homeland-security-workers-including-undercover-ice-agents/","images":["https://external-preview.redd.it/bisWoflABc4JeYxihCQ1h1MKkgQebrTvvF28MwePFEk.jpeg?width=640&crop=smart&auto=webp&s=dc31b52185252ceb76ee0b719…"],"videos":[],"links":[],"permalink":"/r/politics/comments/1xhz04s/massive_leak_exposes_41000_homeland_security/","content_html":"<table> <tr><td> <a href=\"https://www.reddit.com/r/politics/comments/1xhz04s/massive_leak_exposes_41000_homeland_security/\"> <img src=\"https…"},{"id":"t3_1xi0aqk","title":"Massive Leak Exposes 41,000 Homeland Security Workers—Including Undercover ICE Agents","author":"LatterTarget7","subreddit":"ImmigrationPathways","published":"2026-10-28T20:56:11+00:00","updated":"2026-10-28T20:56:11+00:00","text":null,"url":"https://www.reddit.com/r/ImmigrationPathways/comments/1xi0aqk/massive_leak_exposes_41000_homeland_security/","author_url":"https://www.reddit.com/user/LatterTarget7","category_label":"r/ImmigrationPathways","thumbnail":"https://external-preview.redd.it/bisWoflABc4JeYxihCQ1h1MKkgQebrTvvF28MwePFEk.jpeg?width=640&crop=smart&auto=webp&s=dc31b52185252ceb76ee0b719…","external_url":"https://www.wired.com/story/massive-leak-exposes-41000-homeland-security-workers-including-undercover-ice-agents/","images":["https://external-preview.redd.it/bisWoflABc4JeYxihCQ1h1MKkgQebrTvvF28MwePFEk.jpeg?width=640&crop=smart&auto=webp&s=dc31b52185252ceb76ee0b719…"],"videos":[],"links":[],"permalink":"/r/ImmigrationPathways/comments/1xi0aqk/massive_leak_exposes_41000_homeland_security/","content_html":"<table> <tr><td> <a href=\"https://www.reddit.com/r/ImmigrationPathways/comments/1xi0aqk/massive_leak_exposes_41000_homeland_security/\"> <img…"},"… 59 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/post/transcript":{"get":{"operationId":"redditPostTranscript","summary":"Reddit video transcript","description":"Every response includes `credits_used`: the credits this call cost.\n\nSpeech-to-text on the v.redd.it audio.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-post-transcript","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"url","in":"query","required":true,"schema":{"type":"string"},"example":"https://www.reddit.com/r/youseeingthisshit/comments/1kquo45/son_who_lives_abroad_returns_home_and_video_calls/"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"url":"https://www.reddit.com/r/youseeingthisshit/comments/1kquo45/son_who_lives_abroad_returns_home_and_video_calls/","title":"Son who lives abroad returns home and video calls his father","video":"https://v.redd.it/lvsqjihppu1f1/HLSPlaylist.m3u8","video_id":"lvsqjihppu1f1","author":"solateor","published":"2025-05-20T02:59:50+00:00","post_url":"https://www.reddit.com/r/youseeingthisshit/comments/1kquo45/son_who_lives_abroad_returns_home_and_video_calls/","source":"ai","model":"@cf/openai/whisper-large-v3-turbo","language":"pt","duration_s":73.3226875,"text":"O Manu tá chorando de rir ali. Tão debochando de mim. E as crianças? Tá tudo bem aí? Não tô falando. Ele não tá falando. Eu não tô escutando…","segments":[{"start":1.39,"end":3.33,"text":"O Manu tá chorando de rir ali."},{"start":4.03,"end":5.37,"text":"Tão debochando de mim."},"… 22 more"],"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/search":{"get":{"operationId":"redditSearch","summary":"Search Reddit posts","description":"Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-search","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"rust programming"},{"name":"sort","in":"query","required":false,"description":"relevance (default), hot, top, new, comments.","schema":{"type":"string"},"example":"relevance"},{"name":"time","in":"query","required":false,"description":"Time range: all (default), year, month, week, day, hour.","schema":{"type":"string","enum":["all","year","month","week","day","hour"]}},{"name":"subreddit","in":"query","required":false,"description":"Search inside one subreddit.","schema":{"type":"string"}},{"name":"engine","in":"query","required":false,"description":"feed (default): 25 posts per page with text and links. web: the results of reddit.com's search box, with votes, comment counts and NSFW/spoiler flags (about 7 per page). Pass the same engine with the cursor.","schema":{"type":"string","enum":["feed","web"]}},{"name":"cursor","in":"query","required":false,"description":"Value of `next_cursor` from the previous page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"query":"SpaceX Starship","sort":"relevance","time":"all","subreddit":null,"engine":"feed","count":22,"next_cursor":"t3_1i32831","feed":{"title":"reddit.com: search results - SpaceX Starship","subtitle":null,"updated":"2026-11-04T06:08:23+00:00","icon":null,"logo":null,"category":" reddit.com","category_label":"r/ reddit.com","url":"https://www.reddit.com/search?q=SpaceX+Starship&sort=relevance&t=all&limit=25"},"posts":[{"id":"t3_1wsg3qu","title":"SpaceX's Starship reaches orbit for the first time","author":"TeaReim","subreddit":"worldnews","published":"2026-09-28T14:27:17+00:00","updated":"2026-09-28T14:27:17+00:00","text":null,"url":"https://www.reddit.com/r/worldnews/comments/1wsg3qu/spacexs_starship_reaches_orbit_for_the_first_time/","link":"https://www.reuters.com/business/media-telecom/spacexs-starship-launches-14th-flight-first-headed-orbit-2026-09-28/","thumbnail":null,"author_url":"https://www.reddit.com/user/TeaReim","category_label":"r/worldnews","external_url":"https://www.reuters.com/business/media-telecom/spacexs-starship-launches-14th-flight-first-headed-orbit-2026-09-28/","images":[],"videos":[],"links":[],"permalink":"/r/worldnews/comments/1wsg3qu/spacexs_starship_reaches_orbit_for_the_first_time/","content_html":"  submitted by   <a href=\"https://www.reddit.com/user/TeaReim\"> /u/TeaReim </a>   to   <a href=\"https://www.reddit.com/r/worldnews/\"> r/worl…","media_thumbnail":null},{"id":"t3_1v4lj7n","title":"How impressive is SpaceX's starship actually?","author":"Connect_Cat_2045","subreddit":"NoStupidQuestions","published":"2026-07-23T18:01:49+00:00","updated":"2026-07-23T18:01:49+00:00","text":"I've seen some people call it a scam and I've seen other people call it the greatest rocket ever made.\n So how good is it actually","url":"https://www.reddit.com/r/NoStupidQuestions/comments/1v4lj7n/how_impressive_is_spacexs_starship_actually/","link":null,"thumbnail":null,"author_url":"https://www.reddit.com/user/Connect_Cat_2045","category_label":"r/NoStupidQuestions","external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/NoStupidQuestions/comments/1v4lj7n/how_impressive_is_spacexs_starship_actually/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>I've seen some people call it a scam and I've seen other people call it the greatest rocket ever made.</p>…","media_thumbnail":null},"… 20 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/search/comments":{"get":{"operationId":"redditSearchComments","summary":"Reddit comment search","description":"Comments matching a query, with their post and subreddit. Pass `next_cursor` back as `cursor`; it is null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-search-comments","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"fastapi"},{"name":"sort","in":"query","required":false,"description":"relevance (default), top, new.","schema":{"type":"string","enum":["relevance","top","new"]}},{"name":"time","in":"query","required":false,"description":"all (default), year, month, week, day, hour.","schema":{"type":"string","enum":["all","year","month","week","day","hour"]}},{"name":"subreddit","in":"query","required":false,"description":"Search inside one subreddit.","schema":{"type":"string"}},{"name":"cursor","in":"query","required":false,"description":"`next_cursor` from the previous page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"query":"fastapi","sort":"relevance","time":"all","count":9,"next_cursor":"eyJjYW5kaWRhdGVzX3JldHVybmVkIjoie1wic2VjdGlvbl8xX3BpcGVsaW5lXzBfZ2xvYmFsX21vZGlmaWVyc1wiOlwiMVwiLFwic2VjdGlvbl8xX3BpcGVsaW5lXzFfbG9jYWxfbW9k…","comments":[{"id":"t1_19rokhbrjo3ut","body":"My favourite example is Sebastian Ramirez, creator of FastAPI, finding a job listing he wasn't qualified for because it wanted 4+ years of e…","body_html":"<p>\n      My favourite example is Sebastian Ramirez, creator of FastAPI, finding a job listing he wasn&#39;t qualified for because it wanted…","author":"foibleShmoible","score":344,"created_at":"2026-10-26T12:38:31.787000+0000","url":"https://www.reddit.com/r/AskReddit/comments/1xfr1y6/hiring_managers_of_reddit_are_younger_applicants/19rokhbrjo3ut/","post":{"id":"t3_1xfr1y6","title":"Hiring managers of Reddit, are younger applicants really showing up to interviews with zero social skills, or are companies just setting rid…","nsfw":false,"spoiler":false,"created_at":"2026-10-26T08:24:09.821000+0000"},"subreddit":{"id":"t5_2qh1i","name":"AskReddit","nsfw":false}},{"id":"t1_19rolmks4a16s","body":"This is the direct result of dumbass HR people. They ask the technical person, who responds saying FastAPI experience would be nice, and the…","body_html":"<p>\n      This is the direct result of dumbass HR people.  They ask the technical person, who responds saying  FastAPI experience would be n…","author":"dgillz","score":219,"created_at":"2026-10-26T13:04:13.190000+0000","url":"https://www.reddit.com/r/AskReddit/comments/1xfr1y6/hiring_managers_of_reddit_are_younger_applicants/19rolmks4a16s/","post":{"id":"t3_1xfr1y6","title":"Hiring managers of Reddit, are younger applicants really showing up to interviews with zero social skills, or are companies just setting rid…","nsfw":false,"spoiler":false,"created_at":"2026-10-26T08:24:09.821000+0000"},"subreddit":{"id":"t5_2qh1i","name":"AskReddit","nsfw":false}},"… 7 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/search/users":{"get":{"operationId":"redditSearchUsers","summary":"Reddit user search","description":"Public Reddit accounts whose name matches the query: username, avatar, karma, description. Pass `next_cursor` back as `cursor`. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-search-users","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"python"},{"name":"cursor","in":"query","required":false,"description":"`next_cursor` from the previous page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"query":"python","count":6,"next_cursor":"eyJjYW5kaWRhdGVzX3JldHVybmVkIjoie1wic2VjdGlvbl8xX3BpcGVsaW5lXzBfZ2xvYmFsX21vZGlmaWVyc1wiOlwiMVwiLFwic2VjdGlvbl8xX3BpcGVsaW5lXzFfbG9jYWxfbW9k…","users":[{"id":"t2_32tit","username":"python","url":"https://www.reddit.com/user/python/","avatar":"https://www.redditstatic.com/avatars/defaults/v2/avatar_default_5.png","karma":1,"description":null},{"id":"t2_n290r","username":"PythonGB","url":"https://www.reddit.com/user/PythonGB/","avatar":"https://styles.redditmedia.com/t5_1lcto9/styles/profileIcon_y32rkfxkvj0c1.png","karma":2489,"description":null},"… 4 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit":{"get":{"operationId":"redditSubreddit","summary":"Subreddit posts","description":"Pass the same `sort` and `time` with the cursor. Pass `next_cursor` back as `cursor` for the next posts. `next_cursor` is null on the last page. `flair`, `nsfw` and `domain` filter the posts of the feed page (about 25); with any of them the answer adds `applied_filters` and `page_count` (posts on the page before filtering). Keep following `next_cursor` for more matches. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"schema":{"type":"string"},"example":"python"},{"name":"sort","in":"query","required":false,"description":"Feed order: hot (default), new, top, rising, controversial, best.","schema":{"type":"string","enum":["hot","new","top","rising","controversial","best"]},"example":"hot"},{"name":"time","in":"query","required":false,"description":"Time range for top/controversial: hour, day (default), week, month, year, all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"name":"flair","in":"query","required":false,"description":"Only posts whose flair contains this text (case-insensitive), e.g. discussion.","schema":{"type":"string"}},{"name":"nsfw","in":"query","required":false,"description":"exclude: leave out NSFW posts; only: NSFW posts only.","schema":{"type":"string","enum":["exclude","only"]}},{"name":"domain","in":"query","required":false,"description":"Only posts linking to this domain (or its subdomains), e.g. github.com, i.redd.it, or self.python for text posts.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"python","count":24,"next_cursor":"dDNfMXg4OWJucQ==","posts":[{"id":"t3_1xdgdc2","title":"LiteLLM 1.107.0 on PyPI was malicious (Oct 21): it runs on every Python start via a .pth file.","author":"Key-Koala-8259","score":"13","comments":"4","created_at":"2026-10-23T14:57:54.148000+0000","url":"https://www.reddit.com/r/Python/comments/1xdgdc2/litellm_11070_on_pypi_was_malicious_oct_21_it/","permalink":"/r/Python/comments/1xdgdc2/litellm_11070_on_pypi_was_malicious_oct_21_it/","content_url":"https://www.reddit.com/r/Python/comments/1xdgdc2/litellm_11070_on_pypi_was_malicious_oct_21_it/","domain":"self.Python","post_type":"multi_media","language":"en","upvote_ratio":0.7407407407407407,"award_count":0,"score_value":13,"comment_count":4,"author_id":"t2_2dvo4lstj5","author_icon":"https://styles.redditmedia.com/t5_hqiqf2/styles/profileIcon_ao50kv39kozg1.jpeg?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=9…","author_profile":null,"subreddit":"Python","subreddit_id":"t5_2qh0y","subreddit_prefixed":"r/Python","stickied":false,"nsfw":false,"spoiler":false,"locked":false,"archived":false,"flair":"News","flairs":["News"],"text":"I wrote this up. How to check safely and what to rotate\nShort version: if you installed an unpinned litellm between 11:39 and 13:23 UTC on O…","text_html":"<p>\n      I wrote this up. <object role=\"none\"><a rpl class=\"relative pointer-events-auto a\n  \n  \n  \n  \n  underline\n  \n  cursor-pointer\" hre…","images":[],"media":[],"feed_index":25,"attributes":{"data-ks-item":true,"class":"block relative cursor-pointer group bg-neutral-background focus-within:bg-neutral-background-hover hover:bg-neutral-background-hover xs:roun…","permalink":"/r/Python/comments/1xdgdc2/litellm_11070_on_pypi_was_malicious_oct_21_it/","content-href":"https://www.reddit.com/r/Python/comments/1xdgdc2/litellm_11070_on_pypi_was_malicious_oct_21_it/","view-context":"SubredditFeed","comment-count":"4","is-slim-card":true,"view-type":"cardView","pdp-target":"_self","feedIndex":"25","award-count":"0","hide-awards-button":true,"moderation-verdict":"","is-ama":true,"is-embeddable":true,"is-desktop-viewport":true,"is-awardable":true,"created-timestamp":"2026-10-23T14:57:54.148000+0000","domain":"self.Python","id":"t3_1xdgdc2","post-title":"LiteLLM 1.107.0 on PyPI was malicious (Oct 21): it runs on every Python start via a .pth file.","post-language":"en","post-type":"multi_media","score":"13","upvote-ratio":"0.7407407407407407","subreddit-id":"t5_2qh0y","subreddit-prefixed-name":"r/Python","author-id":"t2_2dvo4lstj5","author":"Key-Koala-8259","icon":"https://styles.redditmedia.com/t5_hqiqf2/styles/profileIcon_ao50kv39kozg1.jpeg?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=9…","data-expected-lcp":true,"subreddit-name":"Python"}},{"id":"t3_1xdlm9d","title":"Tried decouple, Dynaconf, pydantic-settings and more: still hitting the same config gaps. Just me?","author":"Positive-Food-9915","score":"4","comments":"6","created_at":"2026-10-23T18:14:09.503000+0000","url":"https://www.reddit.com/r/Python/comments/1xdlm9d/tried_decouple_dynaconf_pydanticsettings_and_more/","permalink":"/r/Python/comments/1xdlm9d/tried_decouple_dynaconf_pydanticsettings_and_more/","content_url":"https://www.reddit.com/r/Python/comments/1xdlm9d/tried_decouple_dynaconf_pydanticsettings_and_more/","domain":"self.Python","post_type":"text","language":"en","upvote_ratio":0.7,"award_count":0,"score_value":4,"comment_count":6,"author_id":"t2_cu56o0k2","author_icon":"https://preview.redd.it/snoovatar/avatars/fd0aae32-645e-4d4d-838a-cd3a11467e13-headshot.png?width=64&height=64&crop=smart&auto=webp&s=24330d…","author_profile":null,"subreddit":"Python","subreddit_id":"t5_2qh0y","subreddit_prefixed":"r/Python","stickied":false,"nsfw":false,"spoiler":false,"locked":false,"archived":false,"flair":"Discussion","flairs":["Discussion"],"text":"I've tried a bunch of config tools over the years, including python-decouple, Dynaconf and pydantic-settings. Each one is good at its job, b…","text_html":"<p>\n      I&#39;ve tried a bunch of config tools over the years, including python-decouple, Dynaconf and pydantic-settings. Each one is good…","images":[],"media":[],"feed_index":27,"attributes":{"data-ks-item":true,"class":"block relative cursor-pointer group bg-neutral-background focus-within:bg-neutral-background-hover hover:bg-neutral-background-hover xs:roun…","permalink":"/r/Python/comments/1xdlm9d/tried_decouple_dynaconf_pydanticsettings_and_more/","content-href":"https://www.reddit.com/r/Python/comments/1xdlm9d/tried_decouple_dynaconf_pydanticsettings_and_more/","view-context":"SubredditFeed","comment-count":"6","view-type":"cardView","pdp-target":"_self","feedIndex":"27","award-count":"0","hide-awards-button":true,"moderation-verdict":"","is-embeddable":true,"is-desktop-viewport":true,"is-awardable":true,"created-timestamp":"2026-10-23T18:14:09.503000+0000","domain":"self.Python","id":"t3_1xdlm9d","post-title":"Tried decouple, Dynaconf, pydantic-settings and more: still hitting the same config gaps. Just me?","post-language":"en","post-type":"text","score":"4","upvote-ratio":"0.7","subreddit-id":"t5_2qh0y","subreddit-prefixed-name":"r/Python","author-id":"t2_cu56o0k2","author":"Positive-Food-9915","icon":"https://preview.redd.it/snoovatar/avatars/fd0aae32-645e-4d4d-838a-cd3a11467e13-headshot.png?width=64&height=64&crop=smart&auto=webp&s=24330d…","data-expected-lcp":true,"subreddit-name":"Python"}},"… 22 more"],"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/comments":{"get":{"operationId":"redditSubredditComments","summary":"Latest comments in a subreddit","description":"The newest comments across a community (100 per page): author, body, date, link, and the post each one replies to. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-comments","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"schema":{"type":"string"},"example":"AskReddit"},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"AskReddit","count":100,"next_cursor":"t1_19s459ey2k3eq","feed":{"title":"comments : AskReddit","subtitle":"r/AskReddit is the place to ask and answer thought-provoking questions.","updated":"2026-11-04T06:12:32+00:00","icon":"https://www.redditstatic.com/icon.png/","logo":"https://a.thumbs.redditmedia.com/IrfPJGuWzi_ewrDTBlnULeZsJYGz81hsSQoQJyw6LD8.png","category":"AskReddit","category_label":"r/AskReddit","url":"https://www.reddit.com/r/AskReddit/comments/?limit=100"},"comments":[{"id":"t1_19s45b3b4ynhf","author":"Elegant-Pair-4057","body":"Pushing Daisies and Raising Hope","published":"2026-11-04T06:12:21+00:00","updated":"2026-11-04T06:12:21+00:00","url":"https://www.reddit.com/r/AskReddit/comments/1xmzuwf/what_canceled_tv_show_are_you_still_not_over_even/19s45b3b4ynhf/","subreddit":"AskReddit","post_id":"t3_1xmzuwf","post_title":"What canceled TV show are you still not over, even years later?","post_url":"https://www.reddit.com/r/AskReddit/comments/1xmzuwf/what_canceled_tv_show_are_you_still_not_over_even/","author_url":"https://www.reddit.com/user/Elegant-Pair-4057","category_label":"r/AskReddit","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/AskReddit/comments/1xmzuwf/what_canceled_tv_show_are_you_still_not_over_even/19s45b3b4ynhf/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>Pushing Daisies and Raising Hope </p> </div><!-- SC_ON -->"},{"id":"t1_19s45b2yypw2q","author":"bimbobreastsinmyface","body":"I was that person. I don’t know why but when I was like ten I tossed a rock through the window of one of the rooms to our house thinking it …","published":"2026-11-04T06:12:21+00:00","updated":"2026-11-04T06:12:21+00:00","url":"https://www.reddit.com/r/AskReddit/comments/1xngr60/whats_the_dumbest_thing_youve_ever_seen_someone/19s45b2yypw2q/","subreddit":"AskReddit","post_id":"t3_1xngr60","post_title":"What's the dumbest thing you've ever seen someone do with complete confidence?","post_url":"https://www.reddit.com/r/AskReddit/comments/1xngr60/whats_the_dumbest_thing_youve_ever_seen_someone/","author_url":"https://www.reddit.com/user/bimbobreastsinmyface","category_label":"r/AskReddit","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/AskReddit/comments/1xngr60/whats_the_dumbest_thing_youve_ever_seen_someone/19s45b2yypw2q/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>I was that person. I don’t know why but when I was like ten I tossed a rock through the window of one of t…"},"… 98 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/details":{"get":{"operationId":"redditSubredditDetails","summary":"Subreddit details and rules","description":"Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-details","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"schema":{"type":"string"},"example":"programming"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"id":"t5_2fwo","name":"programming","prefixed_name":"r/programming","title":"programming","description":"Computer Programming","url":"https://www.reddit.com/r/programming/","weekly_visitors":210980,"weekly_contributions":2023,"created_at":"2006-02-28T18:19:29.538000+0000","icon":"https://styles.redditmedia.com/t5_2fwo/styles/communityIcon_1bqa1ibfp8q11.png?width=128&frame=1&auto=webp&s=400b33e7080aa4996c405a96b3872a12…","banner":null,"nsfw":false,"rules":[{"number":1,"title":"No LLM-Written Content","description":"If you don't want to write it, we don't want to read it. This includes the use of LLMs for translation or summarisation. Moderators reserve …"},{"number":2,"title":"AI-related posts must comply with the AI Policy","description":"Content about LLMs and AI is generally considered off-topic unless they are deeply technical . Refer to our wiki for more details."},"… 12 more"],"weekly_visitors_display":"210K","weekly_contributions_display":"2K","privacy":"Public","privacy_description":"Anyone can view, post, and comment to this community","quarantined":false,"id_card_widget_id":"widget_id-card-2fwo","bookmarks":[{"name":"FAQ","url":"https://www.reddit.com/r/programming/wiki/faq"}],"post_flairs_seen":[],"posts_count":3,"posts":[{"id":"t3_1xd9rwe","title":"eMudhra's Press Release on the CA Compromise","author":"random8847","score":"240","comments":"96","created_at":"2026-10-23T09:55:46.598000+0000","url":"https://www.reddit.com/r/programming/comments/1xd9rwe/emudhras_press_release_on_the_ca_compromise/","permalink":"/r/programming/comments/1xd9rwe/emudhras_press_release_on_the_ca_compromise/","content_url":"https://www.bseindia.com/xml-data/corpfiling/AttachLive/82503e00-335c-49dc-b022-f4633a08b642.pdf","domain":"bseindia.com","post_type":"link","language":"en","upvote_ratio":0.9347826086956522,"award_count":0,"score_value":240,"comment_count":96,"author_id":"t2_15ookh","author_icon":"https://www.redditstatic.com/avatars/defaults/v2/avatar_default_1.png","author_profile":null,"subreddit":"programming","subreddit_id":"t5_2fwo","subreddit_prefixed":"r/programming","stickied":false,"nsfw":false,"spoiler":false,"locked":false,"archived":false,"flair":null,"flairs":[],"text":null,"text_html":null,"images":[],"media":[],"feed_index":0,"attributes":{"data-ks-item":true,"class":"block relative cursor-pointer group bg-neutral-background focus-within:bg-neutral-background-hover hover:bg-neutral-background-hover xs:roun…","permalink":"/r/programming/comments/1xd9rwe/emudhras_press_release_on_the_ca_compromise/","content-href":"https://www.bseindia.com/xml-data/corpfiling/AttachLive/82503e00-335c-49dc-b022-f4633a08b642.pdf","view-context":"SubredditFeed","comment-count":"96","is-slim-card":true,"view-type":"cardView","pdp-target":"_self","feedIndex":"0","award-count":"0","hide-awards-button":true,"moderation-verdict":"","is-embeddable":true,"is-desktop-viewport":true,"is-awardable":true,"is-link-post":true,"created-timestamp":"2026-10-23T09:55:46.598000+0000","domain":"bseindia.com","id":"t3_1xd9rwe","post-title":"eMudhra's Press Release on the CA Compromise","post-language":"en","post-type":"link","score":"240","upvote-ratio":"0.9347826086956522","subreddit-id":"t5_2fwo","subreddit-prefixed-name":"r/programming","author-id":"t2_15ookh","author":"random8847","icon":"https://www.redditstatic.com/avatars/defaults/v2/avatar_default_1.png","data-expected-lcp":true,"subreddit-name":"programming"}},{"id":"t3_1x0j559","title":"Margaret Hamilton, computing pioneer who led software development for the Apollo program, dies at 90","author":"mareek","score":"3839","comments":"119","created_at":"2026-10-08T05:55:59.002000+0000","url":"https://www.reddit.com/r/programming/comments/1x0j559/margaret_hamilton_computing_pioneer_who_led/","permalink":"/r/programming/comments/1x0j559/margaret_hamilton_computing_pioneer_who_led/","content_url":"https://news.mit.edu/2026/margaret-hamilton-computing-pioneer-dies-1007","domain":"news.mit.edu","post_type":"link","language":"en","upvote_ratio":0.9856447064855165,"award_count":1,"score_value":3839,"comment_count":119,"author_id":"t2_3c9g","author_icon":"https://styles.redditmedia.com/t5_dss29/styles/profileIcon_snoo0235b7cc-8c31-42bf-b2f1-1c6dcea0ceee-headshot.png?width=64&height=64&frame=1&…","author_profile":null,"subreddit":"programming","subreddit_id":"t5_2fwo","subreddit_prefixed":"r/programming","stickied":false,"nsfw":false,"spoiler":false,"locked":false,"archived":false,"flair":null,"flairs":[],"text":null,"text_html":null,"images":[],"media":[],"feed_index":1,"attributes":{"data-ks-item":true,"class":"block relative cursor-pointer group bg-neutral-background focus-within:bg-neutral-background-hover hover:bg-neutral-background-hover xs:roun…","permalink":"/r/programming/comments/1x0j559/margaret_hamilton_computing_pioneer_who_led/","content-href":"https://news.mit.edu/2026/margaret-hamilton-computing-pioneer-dies-1007","view-context":"SubredditFeed","comment-count":"119","is-slim-card":true,"view-type":"cardView","pdp-target":"_self","feedIndex":"1","award-count":"1","award-id":"award_free_regret_2","award-icon-url":"https://i.redd.it/snoovatar/snoo_assets/marketing/regret_40.png","hide-awards-button":true,"moderation-verdict":"","is-embeddable":true,"is-desktop-viewport":true,"is-awardable":true,"is-link-post":true,"created-timestamp":"2026-10-08T05:55:59.002000+0000","domain":"news.mit.edu","id":"t3_1x0j559","post-title":"Margaret Hamilton, computing pioneer who led software development for the Apollo program, dies at 90","post-language":"en","post-type":"link","score":"3839","upvote-ratio":"0.9856447064855165","subreddit-id":"t5_2fwo","subreddit-prefixed-name":"r/programming","author-id":"t2_3c9g","author":"mareek","icon":"https://styles.redditmedia.com/t5_dss29/styles/profileIcon_snoo0235b7cc-8c31-42bf-b2f1-1c6dcea0ceee-headshot.png?width=64&height=64&frame=1&…","data-expected-lcp":true,"subreddit-name":"programming"}},"… 1 more"],"header_attributes":{"class":"nd:flex nd:visible [&:not(:defined)_.community-details]:hidden","name":"programming","subreddit-id":"t5_2fwo","display-name":"programming","prefixed-name":"r/programming","description":"Computer Programming","router-name":"subreddit","id-card-widget-id":"widget_id-card-2fwo","weekly-active-users":"210980","weekly-contributions":"2023","new-banner-experiment-enabled":true,"is-mod-insights-widget-experiment-enabled":true,"activity-indicators-enabled":true,"record-perfmark":"true"},"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/rules":{"get":{"operationId":"redditSubredditRules","summary":"Subreddit rules","description":"The community's rules in order: number, title, description (text and HTML). Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-rules","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"schema":{"type":"string"},"example":"Python"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"Python","subreddit_id":"t5_2qh0y","url":"https://www.reddit.com/r/Python/","count":11,"rules":[{"number":1,"title":"No showcase posts","description":"Due to an increase of showcases featuring AI content such as working with multiple AI models or wrappers around APIs, this is no longer allo…","description_html":"<div class=\"i18n-translatable-text ms-xl mb-2xs\">\n          <div id=\"-post-rtjson-content\" class=\"md px-md [--emote-size:20px]\" dir=\"auto\">\n…"},{"number":2,"title":"\"How do I\", Help, or similar questions belong in r/LearnPython","description":"If you are about to ask a question about how to do something in python, please check out r/LearnPython.\n\nIt is a very helpful community that…","description_html":"<div class=\"i18n-translatable-text ms-xl mb-2xs\">\n          <div id=\"-post-rtjson-content\" class=\"md px-md [--emote-size:20px]\" dir=\"auto\">\n…"},"… 9 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/search":{"get":{"operationId":"redditSubredditSearch","summary":"Search subreddits","description":"Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-search","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"q","in":"query","required":true,"schema":{"type":"string"},"example":"python"},{"name":"cursor","in":"query","required":false,"description":"Value of `next_cursor` from the previous page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"query":"python","count":10,"next_cursor":"eyJjYW5kaWRhdGVzX3JldHVybmVkIjoie1wic2VjdGlvbl8xX3BpcGVsaW5lXzBfZ2xvYmFsX21vZGlmaWVyc1wiOlwiMVwiLFwic2VjdGlvbl8xX3BpcGVsaW5lXzFfbG9jYWxfbW9k…","communities":[{"id":"t5_2qh0y","name":"Python","url":"https://www.reddit.com/r/Python/","nsfw":false,"description":"The largest Python community for Reddit! Stay up to date with the latest news, packages, and meta information relating to the Python program…","icon":"https://styles.redditmedia.com/t5_2qh0y/styles/communityIcon_lctik80p96tg1.png?width=64&frame=1&auto=webp&s=92baaacc951d52b5071629852df033d5…","weekly_visitors":113853,"weekly_contributions":773,"prefixed_name":"r/Python","quarantined":false,"position":0,"tracking":{"action_info":{"position":0,"relative_position":0},"search":{"safe_search":"UNAVAILABLE","structure_type":"search"},"subreddit":{"id":"t5_2qh0y","name":"Python","nsfw":false,"quarantined":false}}},{"id":"t5_2r8ot","name":"learnpython","url":"https://www.reddit.com/r/learnpython/","nsfw":false,"description":"Subreddit for posting questions and asking for general advice about all topics related to learning python.","icon":"https://styles.redditmedia.com/t5_2r8ot/styles/communityIcon_jwr5s7l5ici61.png?width=64&frame=1&auto=webp&s=5e8a6c0fb811bb5d907cb7227e0dd9a1…","weekly_visitors":203339,"weekly_contributions":1726,"prefixed_name":"r/learnpython","quarantined":false,"position":1,"tracking":{"action_info":{"position":1,"relative_position":1},"search":{"safe_search":"UNAVAILABLE","structure_type":"search"},"subreddit":{"id":"t5_2r8ot","name":"learnpython","nsfw":false,"quarantined":false}}},"… 8 more"],"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/similar":{"get":{"operationId":"redditSubredditSimilar","summary":"Similar subreddits","description":"Communities related to a subreddit: the related communities it lists in its sidebar (with member counts), then the communities Reddit's community search finds for its name (with weekly visitors and contributions). Each item says its `source`. Pass `next_cursor` back as `cursor` for more search results; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-similar","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"schema":{"type":"string"},"example":"Python"},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"Python","title":"Python","count":9,"next_cursor":"eyJjYW5kaWRhdGVzX3JldHVybmVkIjoie1wic2VjdGlvbl8xX3BpcGVsaW5lXzBfZ2xvYmFsX21vZGlmaWVyc1wiOlwiMVwiLFwic2VjdGlvbl8xX3BpcGVsaW5lXzFfbG9jYWxfbW9k…","communities":[{"id":"t5_2mx48p","name":"madeinpython","prefixed_name":"r/madeinpython","url":"https://www.reddit.com/r/madeinpython/","members":28339,"icon":"https://styles.redditmedia.com/t5_2mx48p/styles/communityIcon_v3atckzh8vw41.png?width=96&height=96&frame=1&auto=webp&s=20dee03cff9d5fcefefd5…","source":"community_widget","widget":"Related Python communities"},{"id":"t5_2r8ot","name":"learnpython","prefixed_name":"r/learnpython","url":"https://www.reddit.com/r/learnpython/","members":1062685,"icon":"https://styles.redditmedia.com/t5_2r8ot/styles/communityIcon_jwr5s7l5ici61.png?width=96&height=96&frame=1&auto=webp&s=b02f9795cfd640038e1af4…","source":"community_widget","widget":"Related Python communities"},"… 7 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/widgets":{"get":{"operationId":"redditSubredditWidgets","summary":"Subreddit sidebar widgets","description":"Everything in a community's sidebar, in order, each widget with its `kind` and data: bookmarks (links and menus), rules, post flairs (text, color, emoji, filter link), calendar events, text widgets (text, HTML, links), images, buttons and community lists (with member counts). Also the community card: title, description, weekly visitors and contributions, creation date, privacy and the status line. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-widgets","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"description":"Community name (Python), r/Python, or any reddit.com link inside the community.","schema":{"type":"string"},"example":"Python"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"Python","subreddit_id":"t5_2qh0y","url":"https://www.reddit.com/r/Python/","community":{"title":"Python","description":"The largest Python community for Reddit! Stay up to date with the latest news, packages, and meta information relating to the Python program…","weekly_visitors":96863,"weekly_contributions":664,"members_label":"Pythonistas","created_at":"2008-01-25T03:14:39.134Z","privacy":"Public","privacy_description":"Anyone can view, post, and comment to this community","status":"Pycon US 2025 starts next week!","status_emoji":"https://emoji.redditmedia.com/8yxdpg6xxnr71_t5_2qh0y/pythonLogo"},"count":8,"widgets":[{"position":1,"kind":"bookmarks","title":"Community Bookmarks","count":3,"items":[{"label":"Python.org","url":null,"links":[{"…":"2 fields"},{"…":"2 fields"},"… 6 more"]},{"label":"Daily megathreads","url":"https://www.reddit.com/r/Python/?f=flair_name%3A\"Daily%20Thread\"","links":[]},"… 1 more"]},{"position":2,"kind":"rules","title":"r/Python Rules","count":11,"rules":[{"number":1,"title":"No showcase posts","description":"Due to an increase of showcases featuring AI content such as working with multiple AI models or wrappers around APIs, this is no longer allo…","description_html":"<div class=\"i18n-translatable-text ms-xl mb-2xs\">\n          <div id=\"-post-rtjson-content\" class=\"md px-md [--emote-size:20px]\" dir=\"auto\">\n…"},{"number":2,"title":"\"How do I\", Help, or similar questions belong in r/LearnPython","description":"If you are about to ask a question about how to do something in python, please check out r/LearnPython.\n\nIt is a very helpful community that…","description_html":"<div class=\"i18n-translatable-text ms-xl mb-2xs\">\n          <div id=\"-post-rtjson-content\" class=\"md px-md [--emote-size:20px]\" dir=\"auto\">\n…"},"… 9 more"]},"… 6 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/wiki":{"get":{"operationId":"redditSubredditWiki","summary":"Subreddit wiki page","description":"A community wiki page as logged-out visitors read it: the latest revision (or the one `revision` opens) with its date, editor and edit reason, the table of contents, the text, the HTML, every link and the other wiki pages of the community it links to. `subreddit` also takes a wiki link (reddit.com/r/Python/wiki/index), which sets the page too. 404 when the page does not exist or the community keeps its wiki private. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-wiki","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"description":"Community name (Python), r/Python, or a reddit.com link to the community or to a wiki page.","schema":{"type":"string"},"example":"Python"},{"name":"page","in":"query","required":false,"description":"Wiki page name (index by default; nested pages like faq/general) or its link.","schema":{"type":"string"},"example":"index"},{"name":"revision","in":"query","required":false,"description":"Open an older revision: a `revision_cursor` from /reddit/v1/subreddit/wiki/revisions, or `older_revision_cursor` from this route for the revision before the one shown.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"Python","page":"index","revision_id":"WikiRevision_0eb54803-14af-11eb-8903-0e3e3e317287","revised_at":"2020-10-22T21:39:26.000Z","revised_by":"IAmKindOfCreative","revision_reason":"Added link to flair description and flair filtering tutorial","url":"https://www.reddit.com/r/Python/wiki/index/","is_latest":true,"revision_cursor":null,"older_revision_cursor":"V2lraVJldmlzaW9uXzBlYjU0ODAzLTE0YWYtMTFlYi04OTAzLTBlM2UzZTMxNzI4Nzow","toc":[{"title":"Welcome to r/Python","anchor":"wiki_welcome_to_r.2Fpython","level":1},{"title":"Questions about the Flair?","anchor":"wiki_questions_about_the_flair.3F","level":2},"… 15 more"],"text":"Welcome to r/Python\n\nSubreddit dedicated to news about the dynamic, interpreted, interactive, object-oriented, extensible programming langua…","content_html":"<h1 id=\"wiki_welcome_to_r.2Fpython\">Welcome to <a href=\"/r/Python\" rel=\"nofollow\">r/Python</a></h1>\n<p>Subreddit dedicated to news about the…","links":[{"text":"r/Python","url":"https://www.reddit.com/r/Python"},{"text":"Python","url":"https://www.python.org/"},"… 46 more"],"wiki_pages_linked":["flair","filters"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddit/wiki/revisions":{"get":{"operationId":"redditSubredditWikiRevisions","summary":"Subreddit wiki page history","description":"The edit history of a community wiki page, newest first: revision id, date, editor and edit reason, plus a `revision_cursor` that opens that revision with /reddit/v1/subreddit/wiki. `content=1` adds each revision's text, HTML and table of contents. Pass `next_cursor` back as `cursor` for older revisions; null at the first revision. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddit-wiki-revisions","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddit","in":"query","required":true,"description":"Community name (Python), r/Python, or a reddit.com link to the community or to a wiki page.","schema":{"type":"string"},"example":"Python"},{"name":"page","in":"query","required":false,"description":"Wiki page name (index by default) or its link.","schema":{"type":"string"},"example":"index"},{"name":"limit","in":"query","required":false,"description":"Revisions per page, 1 to 10 (default 3).","schema":{"type":"integer","default":"3"}},{"name":"content","in":"query","required":false,"description":"1 to include each revision's text, HTML and table of contents.","schema":{"type":"integer","enum":["0","1"]}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddit":"Python","page":"index","url":"https://www.reddit.com/r/Python/wiki/revisions/index/","count":3,"next_cursor":"V2lraVJldmlzaW9uXzk1MzczZWNjLWM4ZGItMTFlNi1hMGI1LTEyNGJjNzBkZjUwNjow","revisions":[{"position":1,"revision_id":"WikiRevision_0eb54803-14af-11eb-8903-0e3e3e317287","revised_at":"2020-10-22T21:39:26.000Z","revised_by":"IAmKindOfCreative","revision_reason":"Added link to flair description and flair filtering tutorial","revised_by_url":"https://www.reddit.com/user/IAmKindOfCreative/","revision_cursor":null},{"position":2,"revision_id":"WikiRevision_f1643084-c95c-11e6-944e-0a81867696ae","revised_at":"2016-12-23T22:12:50.000Z","revised_by":"Andrew_Shay","revision_reason":null,"revised_by_url":"https://www.reddit.com/user/Andrew_Shay/","revision_cursor":"V2lraVJldmlzaW9uXzBlYjU0ODAzLTE0YWYtMTFlYi04OTAzLTBlM2UzZTMxNzI4Nzow"},"… 1 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddits/feed":{"get":{"operationId":"redditSubredditsFeed","summary":"Combined feed of several subreddits","description":"One feed of posts from several communities ranked together, as Reddit's r/a+b view shows them: id, title, author, community, date, linked URL, thumbnail, images, text and permalink. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddits-feed","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"subreddits","in":"query","required":true,"description":"Up to 50 community names separated by commas (Python,learnpython), or a reddit.com/r/a+b link.","schema":{"type":"string"},"example":"Python,learnpython"},{"name":"sort","in":"query","required":false,"description":"hot (default), new, top, rising, controversial.","schema":{"type":"string","enum":["hot","new","top","rising","controversial"]},"example":"hot"},{"name":"time","in":"query","required":false,"description":"Time range for top/controversial: hour, day (default), week, month, year, all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"limit","in":"query","required":false,"description":"Posts per page, 1 to 100 (default 25).","schema":{"type":"integer","default":"25"}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"subreddits":["Python","learnpython"],"sort":"hot","time":null,"url":"https://www.reddit.com/r/Python+learnpython/hot/","count":25,"next_cursor":"t3_1xle2op","posts":[{"position":1,"id":"t3_1xmo0ik","author":"Kavin_muthukumar","subreddit":"learnpython","title":"How much Python do you actually need for a data analyst job?","text":"I work in data in the UK, and this is one of the most common questions I hear from people learning Python. Short answer: less than you’d thi…","created_at":"2026-11-03T08:58:05+00:00","updated_at":"2026-11-03T08:58:05+00:00","url":"https://www.reddit.com/r/learnpython/comments/1xmo0ik/how_much_python_do_you_actually_need_for_a_data/","author_url":"https://www.reddit.com/user/Kavin_muthukumar","category_label":"r/learnpython","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/learnpython/comments/1xmo0ik/how_much_python_do_you_actually_need_for_a_data/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>I work in data in the UK, and this is one of the most common questions I hear from people learning Python.…"},{"position":2,"id":"t3_1xmgv01","author":"zurtex","subreddit":"Python","title":"Pip 26.3 - Extended Pylock Support, Build Backend Warnings, and a caution on wheel installation","text":"Today I got to be the release manager for pip 26.3! There are two big features, and one documentation update, that I think worth talking abo…","created_at":"2026-11-03T02:20:39+00:00","updated_at":"2026-11-03T02:20:39+00:00","url":"https://www.reddit.com/r/Python/comments/1xmgv01/pip_263_extended_pylock_support_build_backend/","author_url":"https://www.reddit.com/user/zurtex","category_label":"r/Python","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":["https://github.com/notatallshaw/nab/","https://discuss.python.org/t/announcement-pip-26-3-release/109822","… 1 more"],"permalink":"/r/Python/comments/1xmgv01/pip_263_extended_pylock_support_build_backend/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>Today I got to be the release manager for pip 26.3! There are two big features, and one documentation upda…"},"… 23 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddits/new":{"get":{"operationId":"redditSubredditsNew","summary":"Newest subreddits","description":"Newly created public communities, newest first (100 per page by default): id, name, title, description, icon, creation date and creator. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddits-new","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Communities per page, 1 to 100 (default 100).","schema":{"type":"integer"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"order":"new","count":100,"next_cursor":"t5_kr2rf7","communities":[{"id":"t5_kr40yo","name":"AloneTwin","prefixed_name":"r/AloneTwin","title":"AloneTwin","url":"https://www.reddit.com/r/AloneTwin/","description":"An open space where you can tell all. Ask questions and expect real answers. Life experiences are most welcome. Everyone has a story and we …","icon":null,"created_at":"2026-11-04T06:12:10+00:00","creator":"Lioness-257","creator_url":"https://www.reddit.com/user/Lioness-257","position":1},{"id":"t5_kr40v6","name":"freewebtools266","prefixed_name":"r/freewebtools266","title":"freewebtools266","url":"https://www.reddit.com/r/freewebtools266/","description":"Free Web tools","icon":null,"created_at":"2026-11-04T06:11:56+00:00","creator":"AccomplishedBus5662","creator_url":"https://www.reddit.com/user/AccomplishedBus5662","position":2},"… 98 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/subreddits/popular":{"get":{"operationId":"redditSubredditsPopular","summary":"Popular subreddits","description":"The most popular communities in Reddit's order (100 per page by default): id, name, title, description, icon, creation date and creator. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-subreddits-popular","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"name":"limit","in":"query","required":false,"description":"Communities per page, 1 to 100 (default 100).","schema":{"type":"integer"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"order":"popular","count":100,"next_cursor":"t5_48t85","communities":[{"id":"t5_2qs0k","name":"Home","prefixed_name":"r/Home","title":"Home","url":"https://www.reddit.com/r/Home/","description":null,"icon":null,"created_at":"2009-01-25T02:25:57+00:00","creator":null,"creator_url":null,"position":1},{"id":"t5_2qh1i","name":"AskReddit","prefixed_name":"r/AskReddit","title":"Ask Reddit...","url":"https://www.reddit.com/r/AskReddit/","description":"r/AskReddit is the place to ask and answer thought-provoking questions.","icon":"https://a.thumbs.redditmedia.com/IrfPJGuWzi_ewrDTBlnULeZsJYGz81hsSQoQJyw6LD8.png","created_at":"2008-01-25T03:52:15+00:00","creator":null,"creator_url":null,"position":2},"… 98 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/user/about":{"get":{"operationId":"redditUserAbout","summary":"Reddit user profile","description":"A public profile: id, display name, description, karma (post and comment), account creation date, verification, avatar, trophies and the communities the user moderates. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-user-about","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"username","in":"query","required":true,"description":"Username, u/name or a profile URL.","schema":{"type":"string"},"example":"spez"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"id":"t2_1w72","username":"spez","display_name":"spez","url":"https://www.reddit.com/user/spez/","description":"Reddit CEO","karma":941388,"post_karma":184765,"comment_karma":756623,"created_at":"2005-06-06T00:00:00.000Z","verified":true,"nsfw":null,"avatar":"https://styles.redditmedia.com/t5_3k30p/styles/profileIcon_uj015iwx9s7g1.png?frame=1&auto=webp&crop=256%3A256%2Csmart&s=54cdc94b6359f3824001…","banner":null,"trophies":[{"name":"20-Year Club","description":null,"icon":"https://i.redd.it/cms/871b9df322b7cddd_trophy_image_for_20_year_club.png"},{"name":"Verified Email","description":null,"icon":"https://i.redd.it/cms/034d06bbd23e0a6d_trophy_image_for_verified_email.png"},"… 39 more"],"moderated_communities":["RDDT"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/user/comments":{"get":{"operationId":"redditUserComments","summary":"A Reddit user's comments","description":"Each comment has score, date, community, the post it replies to and the body. Pagination: pass the cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.\n\nEvery response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-user-comments","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"username","in":"query","required":true,"schema":{"type":"string"},"example":"spez"},{"name":"sort","in":"query","required":false,"description":"new (default), hot, top or controversial. Pass the same sort and time with the cursor.","schema":{"type":"string","enum":["new","hot","top","controversial"]}},{"name":"time","in":"query","required":false,"description":"With top/controversial: hour, day, week, month, year (default) or all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"username":"spez","count":25,"next_cursor":"t1_opmb3vk","feed":{"title":"comments by spez","subtitle":"Reddit CEO","updated":"2026-10-23T19:34:29+00:00","icon":"https://www.redditstatic.com/icon.png/","logo":null,"category":"u_spez","category_label":"u/spez","url":"https://www.reddit.com/user/spez/comments/"},"comments":[{"id":"t1_p1wosm9","post_title":"Modernizing Reddit’s infrastructure with you","subreddit":"u_spez","updated":"2026-08-05T18:31:50+00:00","text":"That was the thinking. Otherwise it would be easier to just replicate the UI.","url":"https://www.reddit.com/r/u_spez/comments/1vgbkge/modernizing_reddits_infrastructure_with_you/p1wosm9/","author":"spez","published":null,"post_id":"t3_1vgbkge","post_url":"https://www.reddit.com/r/u_spez/comments/1vgbkge/modernizing_reddits_infrastructure_with_you/","author_url":"https://www.reddit.com/user/spez","category_label":"u/spez","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/u_spez/comments/1vgbkge/modernizing_reddits_infrastructure_with_you/p1wosm9/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>That was the thinking. Otherwise it would be easier to just replicate the UI. </p> </div><!-- SC_ON -->"},{"id":"t1_p1w9sot","post_title":"Modernizing Reddit’s infrastructure with you","subreddit":"u_spez","updated":"2026-08-05T17:30:18+00:00","text":"If we replace every line of code but the output is the same, is it still old Reddit?","url":"https://www.reddit.com/r/u_spez/comments/1vgbkge/modernizing_reddits_infrastructure_with_you/p1w9sot/","author":"spez","published":null,"post_id":"t3_1vgbkge","post_url":"https://www.reddit.com/r/u_spez/comments/1vgbkge/modernizing_reddits_infrastructure_with_you/","author_url":"https://www.reddit.com/user/spez","category_label":"u/spez","thumbnail":null,"external_url":null,"images":[],"videos":[],"links":[],"permalink":"/r/u_spez/comments/1vgbkge/modernizing_reddits_infrastructure_with_you/p1w9sot/","content_html":"<!-- SC_OFF --><div class=\"md\"><p>If we replace every line of code but the output is the same, is it still old Reddit?</p> </div><!-- SC_ON …"},"… 23 more"],"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/user/overview":{"get":{"operationId":"redditUserOverview","summary":"A Reddit user's posts and comments","description":"The profile overview: posts and comments mixed in profile order (each item has `kind`: post or comment), with score, date, community, the post a comment replies to, and the body. Pass `next_cursor` back as `cursor`; null on the last page. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-user-overview","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"username","in":"query","required":true,"schema":{"type":"string"},"example":"GallowBoob"},{"name":"sort","in":"query","required":false,"description":"new (default), hot, top or controversial. Pass the same sort and time with the cursor.","schema":{"type":"string","enum":["new","hot","top","controversial"]}},{"name":"time","in":"query","required":false,"description":"With top/controversial: hour, day, week, month, year (default) or all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"username":"GallowBoob","sort":"new","time":null,"count":25,"posts_count":16,"comments_count":9,"next_cursor":"t3_1kp30pp","items":[{"id":"t3_fgghrs","title":"‪Everything in balance.‬ ‪Except karma ⬆️‬⬆️⬆️","subreddit":"u_GallowBoob","published":"2020-03-10T16:27:45.010000+0000","text":null,"url":"https://www.reddit.com/user/GallowBoob/comments/fgghrs/everything_in_balance_except_karma/","author":"GallowBoob","updated":"2020-03-10T16:27:45.010000+0000","author_url":"https://www.reddit.com/user/GallowBoob/","category_label":"u_GallowBoob","thumbnail":"https://preview.redd.it/everything-in-balance-except-karma-v0-41i4qishgvl41.jpg?width=640&crop=smart&auto=webp&s=e0b19c297fba6eef868714a9e1a…","external_url":null,"videos":[],"links":[],"content_html":null,"score":"7950","comments":"66","created_at":"2020-03-10T16:27:45.010000+0000","permalink":"/user/GallowBoob/comments/fgghrs/everything_in_balance_except_karma/","content_url":"https://i.redd.it/41i4qishgvl41.jpg","domain":"i.redd.it","post_type":"image","language":null,"upvote_ratio":0.96875,"award_count":null,"score_value":7950,"comment_count":66,"author_id":"t2_iqsg6","author_icon":"https://styles.redditmedia.com/t5_3kl0d/styles/profileIcon_c4zmya3oel6h1.png?width=48&height=48&frame=1&auto=webp&crop=48%3A48%2Csmart&s=d4c…","author_profile":null,"subreddit_id":"t5_3kl0d","subreddit_prefixed":"u_GallowBoob","stickied":true,"nsfw":false,"spoiler":false,"locked":true,"archived":false,"flair":null,"flairs":[],"text_html":null,"…":"25 more fields"},{"id":"t3_1x1pjzw","title":"She’s 2 years old! 🎉","subreddit":"aww","published":"2026-10-09T16:14:29.443000+0000","text":null,"url":"https://www.reddit.com/r/aww/comments/1x1pjzw/shes_2_years_old/","author":"GallowBoob","updated":"2026-10-09T16:14:29.443000+0000","author_url":"https://www.reddit.com/user/GallowBoob/","category_label":"r/aww","thumbnail":"https://preview.redd.it/shes-2-years-old-v0-tbq8zdb1vguh1.jpeg?width=640&crop=smart&auto=webp&s=d1cb5cb7b16adc17ced7c4806d741d7f07accd89","external_url":null,"videos":[],"links":[],"content_html":null,"score":"242","comments":"15","created_at":"2026-10-09T16:14:29.443000+0000","permalink":"/r/aww/comments/1x1pjzw/shes_2_years_old/","content_url":"https://i.redd.it/tbq8zdb1vguh1.jpeg","domain":"i.redd.it","post_type":"image","language":null,"upvote_ratio":0.9801587301587301,"award_count":0,"score_value":242,"comment_count":15,"author_id":"t2_iqsg6","author_icon":"https://styles.redditmedia.com/t5_3kl0d/styles/profileIcon_c4zmya3oel6h1.png?width=64&height=64&frame=1&auto=webp&crop=64%3A64%2Csmart&s=622…","author_profile":null,"subreddit_id":"t5_2qh1o","subreddit_prefixed":"r/aww","stickied":false,"nsfw":false,"spoiler":false,"locked":false,"archived":false,"flair":null,"flairs":[],"text_html":null,"…":"25 more fields"},"… 23 more"],"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/user/posts":{"get":{"operationId":"redditUserPosts","summary":"A Reddit user's posts","description":"Each post has score, upvote ratio, comment count, awards, flair, media (video, gallery, images) and flags. Pagination: pass the cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.\n\nEvery response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-user-posts","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"username","in":"query","required":true,"schema":{"type":"string"},"example":"GallowBoob"},{"name":"sort","in":"query","required":false,"description":"new (default), hot, top or controversial. Pass the same sort and time with the cursor.","schema":{"type":"string","enum":["new","hot","top","controversial"]}},{"name":"time","in":"query","required":false,"description":"With top/controversial: hour, day, week, month, year (default) or all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"cursor","in":"query","required":false,"description":"Cursor from `next_cursor` on the previous response; `next_cursor` is null on the last page.","schema":{"type":"string"}},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"username":"GallowBoob","count":25,"next_cursor":"t3_zgkubx","feed":{"title":"submitted by GallowBoob","subtitle":"The internet was a mistake 🌍 Always remember the human.","updated":"2026-10-23T19:34:29+00:00","icon":"https://www.redditstatic.com/icon.png/","logo":null,"category":"u_GallowBoob","category_label":"u/GallowBoob","url":"https://www.reddit.com/user/GallowBoob/submitted/"},"posts":[{"id":"t3_fgghrs","title":"‪Everything in balance.‬ ‪Except karma ⬆️‬⬆️⬆️","subreddit":"u_GallowBoob","published":"2020-03-10T16:27:45+00:00","text":null,"url":"https://www.reddit.com/r/u_GallowBoob/comments/fgghrs/everything_in_balance_except_karma/","author":"GallowBoob","updated":"2020-03-10T16:27:45+00:00","author_url":"https://www.reddit.com/user/GallowBoob","category_label":"u/GallowBoob","thumbnail":"https://preview.redd.it/41i4qishgvl41.jpg?width=640&crop=smart&auto=webp&s=cffa3a800d9d0132e434f81e1b8ebd72fbeaa447","external_url":"https://i.redd.it/41i4qishgvl41.jpg","images":["https://preview.redd.it/41i4qishgvl41.jpg?width=640&crop=smart&auto=webp&s=cffa3a800d9d0132e434f81e1b8ebd72fbeaa447","https://i.redd.it/41i4qishgvl41.jpg"],"videos":[],"links":[],"permalink":"/r/u_GallowBoob/comments/fgghrs/everything_in_balance_except_karma/","content_html":"<table> <tr><td> <a href=\"https://www.reddit.com/r/u_GallowBoob/comments/fgghrs/everything_in_balance_except_karma/\"> <img src=\"https://prev…"},{"id":"t3_1x1pjzw","title":"She’s 2 years old! 🎉","subreddit":"aww","published":"2026-10-09T16:14:29+00:00","text":null,"url":"https://www.reddit.com/r/aww/comments/1x1pjzw/shes_2_years_old/","author":"GallowBoob","updated":"2026-10-09T16:14:29+00:00","author_url":"https://www.reddit.com/user/GallowBoob","category_label":"r/aww","thumbnail":"https://preview.redd.it/tbq8zdb1vguh1.jpeg?width=640&crop=smart&auto=webp&s=9d10c0fea969e32b9a0968eb77a0fd2645f2a39c","external_url":"https://i.redd.it/tbq8zdb1vguh1.jpeg","images":["https://preview.redd.it/tbq8zdb1vguh1.jpeg?width=640&crop=smart&auto=webp&s=9d10c0fea969e32b9a0968eb77a0fd2645f2a39c","https://i.redd.it/tbq8zdb1vguh1.jpeg"],"videos":[],"links":[],"permalink":"/r/aww/comments/1x1pjzw/shes_2_years_old/","content_html":"<table> <tr><td> <a href=\"https://www.reddit.com/r/aww/comments/1x1pjzw/shes_2_years_old/\"> <img src=\"https://preview.redd.it/tbq8zdb1vguh1.…"},"… 23 more"],"credits_used":1,"cached":false}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/user/rank":{"get":{"operationId":"redditUserRank","summary":"Where a user's posts rank in a subreddit","description":"Walks the community's feed (sort and time as on Reddit) up to `max_pages` pages of about 25 posts and returns each post by the user with its rank (1-based position), page and full post data. `best_rank` is the highest one; `reached_end` says the whole feed was scanned. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-user-rank","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"username","in":"query","required":true,"schema":{"type":"string"},"example":"GallowBoob"},{"name":"subreddit","in":"query","required":true,"schema":{"type":"string"},"example":"interestingasfuck"},{"name":"sort","in":"query","required":false,"description":"hot (default), new, top, rising, controversial, best.","schema":{"type":"string","enum":["hot","new","top","rising","controversial","best"]}},{"name":"time","in":"query","required":false,"description":"Time range for top/controversial: hour, day (default), week, month, year, all.","schema":{"type":"string","enum":["hour","day","week","month","year","all"]}},{"name":"max_pages","in":"query","required":false,"description":"Feed pages to scan, 1 to 10 (default 5).","schema":{"type":"integer"},"example":"3"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"username":"GallowBoob","subreddit":"interestingasfuck","sort":"hot","time":null,"pages_scanned":5,"posts_scanned":120,"reached_end":false,"count":0,"best_rank":null,"posts":[],"cached":false,"credits_used":3}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}},"/reddit/v1/user/stats":{"get":{"operationId":"redditUserStats","summary":"Reddit user stats","description":"Karma split (total, post, comment), number of posts and comments, account creation date and age, premium flag, display name, description and avatar. Reddit no longer shows awarder/awardee karma publicly; those fields are null. Every response includes `credits_used`: the credits this call cost.\n\nPrice: 1 credit per successful call. Docs: https://api.sh/docs/reddit-user-stats","tags":["Reddit"],"x-credits":1,"parameters":[{"name":"username","in":"query","required":true,"description":"Username, u/name or a profile URL.","schema":{"type":"string"},"example":"spez"},{"$ref":"#/components/parameters/raw"},{"$ref":"#/components/parameters/fields"},{"$ref":"#/components/parameters/fresh"},{"$ref":"#/components/parameters/output"},{"$ref":"#/components/parameters/records"}],"responses":{"200":{"description":"The data as JSON (or CSV / NDJSON with `output`).","headers":{"x-request-id":{"$ref":"#/components/headers/x-request-id"},"x-credits-used":{"$ref":"#/components/headers/x-credits-used"},"x-credits-remaining":{"$ref":"#/components/headers/x-credits-remaining"}},"content":{"application/json":{"schema":{"type":"object","additionalProperties":true},"example":{"username":"spez","url":"https://www.reddit.com/user/spez/","display_name":"spez","description":"Reddit CEO","avatar":"https://styles.redditmedia.com/t5_3k30p/styles/profileIcon_uj015iwx9s7g1.png","total_karma":941388,"post_karma":184765,"comment_karma":756623,"awarder_karma":null,"awardee_karma":null,"contributions":4079,"posts_count":851,"comments_count":3228,"contributions_note":"counts update every 24 hours","created_at":"2005-06-06T00:00:00.000Z","cake_day":"Jun 6, 2005","account_age_days":7821,"account_age_years":21.4,"is_premium":true,"cached":false,"credits_used":1}},"text/csv":{"schema":{"type":"string"}},"application/x-ndjson":{"schema":{"type":"string"}}}},"400":{"$ref":"#/components/responses/E400"},"401":{"$ref":"#/components/responses/E401"},"402":{"$ref":"#/components/responses/E402"},"404":{"$ref":"#/components/responses/E404"},"502":{"$ref":"#/components/responses/E502"},"503":{"$ref":"#/components/responses/E503"}}}}},"components":{"securitySchemes":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Create keys at https://app.api.sh/keys. Authorization: Bearer <key> also works."}},"parameters":{"raw":{"name":"raw","in":"query","required":false,"description":"0 leaves out the bulky `raw` source blocks (often 10-30x smaller).","schema":{"type":"string","enum":["0","1"]}},"fields":{"name":"fields","in":"query","required":false,"description":"Comma-separated fields to return, e.g. `posts.id,posts.title`. Call metadata is always included.","schema":{"type":"string"}},"fresh":{"name":"fresh","in":"query","required":false,"description":"1 skips the 24-hour cache and fetches live.","schema":{"type":"string","enum":["1"]}},"output":{"name":"output","in":"query","required":false,"description":"csv or ndjson returns the response's records (its main list, or the object as one row) as CSV or NDJSON instead of JSON.","schema":{"type":"string","enum":["json","csv","ndjson"]}},"records":{"name":"records","in":"query","required":false,"description":"With output=csv|ndjson: the top-level list to turn into rows (e.g. `reviews`), or `.` for the whole object as one row.","schema":{"type":"string"}}},"schemas":{"Error":{"type":"object","properties":{"success":{"type":"boolean","const":false},"error":{"type":"string"}},"required":["success","error"]}},"responses":{"E400":{"description":"A parameter is missing or invalid. Not charged (unless the call ran and the source rejected the value; credits_used says).","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"E401":{"description":"Missing, invalid, revoked or expired API key. Not charged. See https://api.sh/docs/errors#401","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"E402":{"description":"Not enough credits, a spend limit you set was reached (`spend_limit`), or the key's monthly credit cap was reached (`key_cap`). Not charged.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"E404":{"description":"Not found, or not public. A lookup that ran costs the endpoint's price (credits_used says); an unknown route is free.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"E502":{"description":"The source site failed this time; retry. Not charged.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"E503":{"description":"Endpoint paused or temporarily unavailable; may include retry-after. Not charged.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"headers":{"x-request-id":{"description":"The call's id (logs, re-fetch with /v1/results/{id}).","schema":{"type":"string","format":"uuid"}},"x-credits-used":{"description":"Credits charged for this call.","schema":{"type":"integer"}},"x-credits-remaining":{"description":"Balance after the call.","schema":{"type":"integer"}}}},"externalDocs":{"url":"https://api.sh/docs"}}