# Connecting a Facebook Page to Social Quack

> One free Meta app, one sign-in — and every Facebook Page you manage posts on schedule.

Facebook takes a few more clicks than the other setups, not because it is hard but because Meta's developer site has a lot of menus. Everything below is one-time: you create a small app of your own, paste two values into Social Quack, sign in, publish the app, and you are done. There is **no App Review and no business verification** — Meta's Standard Access already covers Pages managed by the app's own admin, which is you.

Two things worth knowing before you start. The App ID and secret you create are stored encrypted on your own Mac; they go straight from there to Facebook when you connect a Page, and Social Quack has no server of its own that ever sees them. And because the developer app is yours, its posting allowance is yours alone — you are not sharing a pool with other Social Quack customers, so nobody else's activity can get you rate-limited or banned.

## 1. What you need

- A Facebook **Page** you are an **admin** of. Social Quack posts to Pages only — apps cannot post to a personal profile.
- The Facebook account that holds that role, for the sign-in step.
- Social Quack open at **Channels** in the sidebar → the **Facebook Page** card → **Set up app keys**. That panel has the two boxes you will fill in and, above them, the redirect address you will need in step 4, with a copy button next to it. Keep it open in the background while you work through the Meta site.

One sign-in connects **every** Page you are an admin of — each one arrives as its own channel, and you can remove the ones you don't want afterwards.

## 2. Create your Meta app

1. Go to **https://developers.facebook.com** and log in with your Facebook account.
2. **My Apps → Create app.**
3. When it asks what you want your app to do, pick the use case **"Manage everything on your Page"**. (Already have a Meta app you'd rather reuse? Open it and add that use case from **Dashboard → Add use case**.)
4. Meta will ask you to attach or create a **business portfolio**. Pick your own, or create one if you have none.

## 3. Add the permissions

On the use case card click **Customize**, then under **Permissions and features** click **Add** next to each of these four:

| Permission | What it is for |
|---|---|
| `pages_manage_posts` | Publishing the post to your Page. |
| `pages_read_engagement` | Required alongside the one above before Facebook will hand Social Quack a Page to post as. |
| `pages_manage_engagement` | Posting the extra parts of a multi-part post as comments under the first one. |
| `pages_read_user_content` | Facebook requires this one together with `pages_manage_engagement`. Leave it out and sign-in fails with "Invalid Scopes". |

`pages_show_list` is already included with this use case, so there is nothing to add for it. So is `business_management`, which is what makes Pages that belong to a business portfolio show up in the list at all — another reason to pick the **"Manage everything on your Page"** use case rather than assembling permissions yourself.

If any of the four is missing, the sign-in screen in step 6 will say **"Invalid Scopes"**. And if you ever add a permission *after* connecting a Page, the existing connection does not grow into it — go back to **Channels** in Social Quack, click **Connect** on the **Facebook Page** card under *Add a channel*, and sign in again to approve the new permission. Don't press **Remove** on the connected channel first: that deletes the channel *and every post still queued for it*, and it changes nothing on Facebook's side. Connecting again updates the Page you already have and keeps its queue.

## 4. Tell Meta where to send you back

In the left menu open **Facebook Login for Business → Settings**.

1. Paste the redirect address into **Valid OAuth Redirect URIs**. That address is shown in Social Quack in the same **Set up app keys** screen, with a copy button beside it — this page can't print it for you, because Social Quack works out the right address for your own setup. Copy it from the app and paste it whole.
2. Click **Save changes** at the bottom of the page.
3. *Only now* paste the same address into the **Redirect URI Validator** box and click **Check URI**. It must say the URI is valid. Checking before you have saved always fails, which is the single most common wrong turn on this page.

> The address is on `socialquack.com` rather than on your own computer because Meta accepts only addresses that begin with `https://`. It simply hands the sign-in straight back to the app running on your Mac.

## 5. Copy the App ID and App Secret

Stay in the left menu, scroll to the bottom, and open **App settings → Basic**.

- Copy the **App ID** into the **`Meta App ID`** box in Social Quack.
- Click **Show** next to the App Secret and copy it into **`Meta App Secret`**.

While you are on this screen: if the **Privacy Policy URL** field is empty, put `https://socialquack.com/privacy` in it and click **Save changes**. Meta blocks the login screen entirely until the app has one.

## 6. Connect your Pages

Click **Save** in the *Set up app keys* panel — that is Social Quack's own Save button, not Meta's **Save changes** from step 5. Social Quack stores the two keys and opens Facebook's sign-in in your normal web browser straight away; if it doesn't, click **Connect** on the **Facebook Page** card.

Sign in there with the Facebook account that is an **admin of the Page**. On Facebook's permission screen, leave everything ticked — unticking a Page or a permission there is the usual reason the next screen comes back empty.

When the browser tells you the tab can be closed, switch back to Social Quack. Every Page you manage now appears as its own channel under Channels. Remove any you don't want to post to — they are brand new, so there is nothing queued on them to lose.

## 7. Publish the app — don't skip this

Left menu → **Dashboard** → scroll to the bottom box **"Check requirements then publish"** → **Publish**.

Until you do this, Facebook shows everything the app posts **only to you**. The post looks perfectly normal on your own screen and is invisible to everyone else — which is a confusing hour to spend if you don't know about it. Publishing makes those posts public, including ones already made.

If it complains about the Privacy Policy URL even though you entered it in step 5: open **App settings → Basic**, click **Save changes** again, then go back to **Dashboard** and press **Publish** once more.

## 8. What you can post

| | |
|---|---|
| **Text** | Up to 63,206 characters. |
| **Link** | Tick the Facebook channel in Compose and you get a **Link to attach** box. Facebook renders a preview card for it. It is ignored on photo and video posts. |
| **Photos** | Up to 10 in one post. |
| **Video** | One per post. |
| **Multi-part posts** | Extra parts are posted as comments under the first post, in order. |

A single post cannot mix a video with photos — Facebook has no such format. Schedule them as two posts.

Photos and video upload straight from your Mac to Facebook, so there is nothing to configure under media hosting for this platform.

Your Page connection does not expire on a timer. It only breaks if you change your Facebook password, lose your admin role on the Page, or remove the app from your Facebook account — in which case you reconnect in Channels.

## If something goes wrong

| What you see | What it means | What to do |
|---|---|---|
| **"Invalid Scopes"** on the Facebook sign-in screen | One of the four permissions is missing from the use case | Add all four (step 3), then click **Connect** on the **Facebook Page** card again |
| **"Facebook returned no pages you can post to"** | You are not an admin or editor of any Page, something was unticked on the permission screen, or — while the app is still unpublished — your Facebook account has no role on the app | Check your Page role, connect again and untick nothing; publish the app (step 7) |
| The **Redirect URI Validator** says the URI is not valid | You clicked **Check URI** before **Save changes** | Save first, then check (step 4) |
| Facebook refuses to show the login screen at all | The app has no **Privacy Policy URL** | Put `https://socialquack.com/privacy` under **App settings → Basic** and **Save changes** |
| The post is published, but friends and customers can't see it | The app is still unpublished — Facebook shows its posts only to you | **Dashboard → "Check requirements then publish" → Publish** (step 7). Earlier posts become visible too |
| **"Facebook refused: missing permission"** on a post | The Page was connected before you added that permission; the older connection doesn't gain it | Add it under **Customize → Permissions and features** (comments under the first part need `pages_manage_engagement`), then click **Connect** on the **Facebook Page** card again in Channels. Don't **Remove** the channel — that deletes its queued posts, and reconnecting over the top is what grants the permission |
| **"Facebook token is no longer valid — reconnect the page in Channels"** | Your Facebook password changed, you lost your role on the Page, or the app was removed from your account | Channels → click **Connect** on the **Facebook Page** card again; the existing channel and everything queued on it carry on |
| A post fails, then goes out by itself a few minutes later | Facebook applied a temporary rate limit | Nothing — Social Quack recognises these and retries on its own |
| Some of the images didn't appear | The post mixed a video with photos | Post the video and the photos separately |
