Before you start
Reddit grants scopes on its consent screen, not on the app form. PostQueen asks for the four scopes and refuses the connect if Reddit grants fewer.
flair is the one that lets the composer list each subreddit’s flairs.
Create the app
1
Open the app form
Go to reddit.com/prefs/apps and choose are you a developer? create an app…, or create another app… if the account already has one.
2
Fill in the form
- name: a name for your install, such as
PostQueen for Example Inc. - App type: web app. A script app can only use its own account, and an installed app gets no secret.
- description and about url: optional.
- redirect uri: your address from the next step.
3
Set the redirect URI
Use the address that matches how you run PostQueen:Reddit compares it exactly, both when you sign in and when PostQueen exchanges the code.The redirect URI is where the network sends the browser back after someone approves PostQueen. It is
your
FRONTEND_URL + /integrations/social/ + the network’s identifier, for example
https://postqueen.example.com/integrations/social/pinterest.Most networks need exactly one URI, with no trailing slash. Two exceptions: TikTok Business needs
the trailing slash (/integrations/social/tiktok-business/), and a Google web client that also
serves Google Business Profile lists both /integrations/social/youtube and
/integrations/social/gmb. Channel developer apps lists every
network’s ending.4
Copy the client ID and secret
The app now shows in the list. The client ID is the string under the app’s name and type, and the secret is on the secret row. Copy both, and keep the secret private.
Set the variables
Add the two keys to your environment:docker restart or
docker compose restart keeps the old container and its old environment.
In the folder that holds docker-compose.yaml, recreate only the postqueen service:
docker compose down for a settings change: on
a host that runs other Compose services in the same project, it stops them too.
Then open PostQueen, go to Channels, choose Add Channel and pick this network. You are
sent to its login to authorize PostQueen, and the channel appears in the Channels list once you
accept.
The channel is in the Channels list with its avatar and name.
Add Channel does not check whether your variables are set. A missing or misspelled key shows
up as a broken authorization page on the network’s side rather than a helpful message in
PostQueen, so if the login page itself looks wrong, check the keys before anything else.
App review
- Access. Reddit asks every app to request access through its Data API request form and wait for approval. Describe what your install posts and for whom.
- Commercial use. Reddit treats any use by or on behalf of a business as commercial, and that needs Reddit’s written approval and an agreement. See Reddit’s Data API terms.
- Rate limit. An approved app gets 100 requests a minute, averaged over 10 minutes, shared by every channel on your install. PostQueen publishes one Reddit post at a time.
Troubleshooting
Not enough scopes, when choosing a provider, please add all the scopes
Not enough scopes, when choosing a provider, please add all the scopes
Reddit returned a token without all four scopes. Connect again and allow every permission on Reddit’s screen.
Reddit shows invalid redirect_uri parameter
Reddit shows invalid redirect_uri parameter
The address PostQueen sent is not the app’s redirect uri. It is exactly your
FRONTEND_URL followed by /integrations/social/reddit. Check the scheme, the port and that there is no trailing slash.Reddit rejected the post to r/name:
Reddit rejected the post to r/name:
Reddit refused that subreddit and gave its reason after the colon: a missing flair, a post type the subreddit does not allow, or a karma or account-age rule. Fix the post for that subreddit and schedule it again.