Skip to main content
On a self-hosted PostQueen the Whop app is yours. PostQueen signs in to Whop with OAuth and PKCE, so it needs only the app’s client ID: there is no client secret to set.

Before you start

PostQueen does not check the granted Whop scopes when an account connects. With one missing, the channel connects and looks healthy, and the first post fails and asks for a reconnect. Select all six scopes before anyone connects.

Create the app

1

Create the app

Open the Whop developer dashboard and create an app.
2

Add the redirect URI

In the app’s OAuth section, add the redirect URI. Whop compares it exactly, scheme, port and path included:
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.
3

Select the scopes

Choose View available scopes and select the six from the table above. PostQueen asks for exactly these: the three sign-in scopes, forum:post:create to post, forum:read to list forums and company:basic:read to list companies.
4

Copy the client ID

Copy the app’s client ID, which looks like app_xxxxx. You do not need the client secret.

Set the variable

Add the client ID to your environment:
Recreate the app container so it reads the new variables. A plain 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:
The database, Redis and Temporal keep running. Avoid 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.
Each post then picks a company and one of its forums.

Troubleshooting

The app is missing a scope, or the account did not grant it. Select all six scopes on the app, then reconnect the channel.
Whop no longer accepts the channel’s token. Reconnect the channel.
The address PostQueen sent is not in the app’s OAuth section. It is exactly your FRONTEND_URL followed by /integrations/social/whop, with no trailing slash.
The account has no company with a forum, or the app lacks company:basic:read or forum:read. Add a forum to the company in Whop, or add the scopes and reconnect.
Last modified on September 23, 2026