Skip to main content

Reddit

Overview

The Reddit source supports Full Refresh as well as Incremental syncs.

Full Refresh sync means every time a sync is run, Airbyte will copy all rows in the tables and columns you set up for replication into the destination in a new table. Incremental sync means only changed resources are copied from Reddit. For the first run, it will be a Full Refresh sync.

Steps for getting api_key

You can make a POST request from Postman to exchange your Reddit username and password for an api_key authorized to make requests.

First make an app to get the client ID and secret for authentication:

  1. Go to Reddit's App Preferences Page:
  • Visit https://www.reddit.com/prefs/apps, select create another app and input an app name. Select the script option and set the redirect URI as https://oauth.pstmn.io/v1/callback.
  1. Copy Your App Credentials:
  • After creating the app, you will see the Client ID (below your app name) and Client Secret (labeled as "secret").
  • Client ID: Copy this value as it will be your Authorization Username in Postman.
  • Client Secret: Copy this value as it will be your Authorization Password in Postman.
  1. Visit Postman via web or app and make a new request with following guidelines:
  • Request - POST https://www.reddit.com/api/v1/access_token
  • Authorization - Basic Auth -username: <YOUR_USERNAME>, password: <YOUR_PASSWORD>
  • Body - x-www-form-urlencoded - grant_type: password, username: YOUR_REDDIT_USERNAME, password: YOUR_REDDIT_PASSWORD

Hit send to receive api_key in the response under access_token

Records and rate limiting

  • The Reddit API has rate limiting of 100 queries per minute (QPM) per OAuth client ID. It is handled with an exponential backoff strategy, with maximum 3 retries.
  • If the api_key expires, a new access token will need to be generated through Postman.
  • The Reddit API has a hard limit of fetching 1000 records per single stream call with subsequent pagination.

Configuration

InputTypeDescriptionDefault Value
api_keystringAPI Key.
querystringQuery. Specifies the query for searching in reddits and subredditsairbyte
include_over_18booleanInclude over 18 flag. Includes mature contentfalse
exactbooleanExact. Specifies exact keyword and reduces distractions
limitnumberLimit. Max records per page limit1000
subredditsarraySubreddits. Subreddits for exploration[r/funny, r/AskReddit]
start_datestringStart date.

Streams

Stream NamePrimary KeyPaginationSupports Full SyncSupports Incremental
selfnameNo pagination
searchDefaultPaginator
subreddit_searchDefaultPaginator
message_inboxDefaultPaginator
subreddit_popularDefaultPaginator
subreddit_exploreDefaultPaginator

IP allow list

If you use Airbyte Cloud and your organization restricts access to specific IPs, add the Airbyte Cloud IP addresses to your allow list.

Reference

Config fields reference

Field
Type
Property name
API Key
required
string
api_key
string
start_date
boolean
exact
boolean
include_over_18
number
limit
string
query
array
subreddits

Changelog

Expand to review
VersionDatePull RequestSubject
0.0.502026-04-2877395Update dependencies
0.0.492026-04-2176717Update dependencies
0.0.482026-03-3175878Update dependencies
0.0.472026-03-1774911Update dependencies
0.0.462026-02-2473532Update dependencies
0.0.452026-02-0372651Update dependencies
0.0.442026-01-2072024Update dependencies
0.0.432026-01-1471479Update dependencies
0.0.422025-12-1870617Update dependencies
0.0.412025-11-2570060Update dependencies
0.0.402025-11-1869624Update dependencies
0.0.392025-10-2968912Update dependencies
0.0.382025-10-2168335Update dependencies
0.0.372025-10-1467872Update dependencies
0.0.362025-10-0867541Update dependencies
0.0.352025-09-3066443Update dependencies
0.0.342025-09-0965716Update dependencies
0.0.332025-08-2465446Update dependencies
0.0.322025-08-1064831Update dependencies
0.0.312025-08-0264457Update dependencies
0.0.302025-07-1963628Update dependencies
0.0.292025-07-1263054Update dependencies
0.0.282025-07-0562697Update dependencies
0.0.272025-06-2862217Update dependencies
0.0.262025-06-2161787Update dependencies
0.0.252025-06-1460557Update dependencies
0.0.242025-05-1060162Update dependencies
0.0.232025-05-0359473Update dependencies
0.0.222025-04-2759106Update dependencies
0.0.212025-04-1958458Update dependencies
0.0.202025-04-1257923Update dependencies
0.0.192025-04-0557298Update dependencies
0.0.182025-03-2956770Update dependencies
0.0.172025-03-2256163Update dependencies
0.0.162025-03-0855061Update dependencies
0.0.152025-02-2354586Update dependencies
0.0.142025-02-1553957Update dependencies
0.0.132025-02-0853455Update dependencies
0.0.122025-02-0153004Update dependencies
0.0.112025-01-2552494Update dependencies
0.0.102025-01-1851854Update dependencies
0.0.92025-01-1151376Update dependencies
0.0.82024-12-2850683Update dependencies
0.0.72024-12-2150232Update dependencies
0.0.62024-12-1449697Update dependencies
0.0.52024-12-1249368Update dependencies
0.0.42024-12-1149104Starting with this version, the Docker image is now rootless. Please note that this and future versions will not be compatible with Airbyte versions earlier than 0.64
0.0.32024-10-2947827Update dependencies
0.0.22024-10-2847542Update dependencies
0.0.12024-08-2344579Initial release by btkcodedev via Connector Builder