Connect your Facebook Pages
This takes about five minutes, once. After it, your Facebook connection never expires and you never have to do it again.
Two ways to connect
Five minutes of setup. Your connection is permanent, you get a proper "Continue with Facebook" button, and you don't need approval from anyone. This is the method below.
Paste a token from Graph API Explorer. Works in one minute, but Facebook expires it within a couple of hours and your scheduled posts stop publishing. Use it only to try things out.
The rest of this page walks through the recommended method. If you just want to test quickly, jump to the quick method — but come back and do this properly before you rely on it.
1. Create your Meta app
Go to developers.facebook.com/apps and click Create app.
- Give it any name — "My Page Scheduler" is fine. Only you will see it.
- When asked what you want your app to do, choose Other, then Business.
- Finish creating it. You'll land on the app's dashboard.
2. Add Facebook Login
In the left sidebar, look for Facebook Login for Business. If it isn't there, add it: Products → + Add product → Facebook Login for Business → Set up. Choose Web if it asks for a platform.
3. Add the redirect URL
In the left sidebar click Facebook Login for Business, then Settings underneath it.
Scroll to Client OAuth settings and:
- Make sure Client OAuth login is On.
- Make sure Web OAuth login is On.
- In the Valid OAuth Redirect URIs box, paste exactly this:
https://postscheduling.app/api/auth/facebook/callbackClick Save changes at the bottom of the page.
4. Fill in Settings → Basic
Now open App settings → Basic in the left sidebar. Fill in these four:
| Field | What to enter |
|---|---|
| App domains | postscheduling.appJust the domain — no https://, no slashes, no path. |
| Privacy Policy URL | https://postscheduling.app/privacy.html |
| Terms of Service URL | https://postscheduling.app/terms.html |
| User data deletion | Choose Data deletion instructions URL, thenhttps://postscheduling.app/data-deletion.html |
While you're on this page, copy your App ID, and click Show next to App secret and copy that too. You'll paste both into PostScheduling in the next step. Click Save changes.
5. Connect in PostScheduling
- In PostScheduling, open Connect / Update Pages (or go to Settings).
- Open Use your own Meta app and paste your App ID and App Secret. Click Save & verify — we check them with Facebook straight away, so you'll know immediately if something's mistyped.
- Press Continue with Facebook.
- Facebook's own login screen opens. Sign in, choose the Pages you want PostScheduling to manage, and approve.
- You're returned to your dashboard with those Pages connected — permanently.
Common mistakes
- Redirect URL in the wrong box. It belongs in Facebook Login for Business → Settings, not Settings → Basic.
- App domains with https:// or a path. It should be only
postscheduling.app. - Publishing the app. Don't. Development Mode is what makes this work without App Review.
- "Currently ineligible for submission" warning. Ignore it. That banner is only about submitting for App Review, which you don't need. Your app works right now.
- Using a Page you don't fully administer. You need full admin control of a Page for it to appear.
Quick method — temporary only
If you just want to try PostScheduling before setting up an app, you can paste a token instead.
- Open Graph API Explorer.
- Add these four permissions:
pages_show_list,pages_read_engagement,pages_manage_posts,pages_manage_engagement. - Click Generate Access Token and approve.
- Copy the User Access Token on its own — not the JSON response — and paste it into PostScheduling → Connect / Update Pages → Advanced.
How your access is handled
- Your Facebook password and 2FA codes are never requested or seen. You approve access on Facebook's own screen.
- Page Access Tokens and your App Secret are encrypted with AES-GCM before being stored.
- The encryption key is kept separately as a Cloudflare Worker Secret, not in the database.
- Neither your tokens nor your App Secret are ever displayed back to you or intentionally logged.
- They're decrypted inside the server only to carry out something you asked for — scheduling, publishing, rescheduling or cancelling.
- You can remove everything at any time from Settings → Disconnect All Facebook Pages, or follow Delete Your Data.