將 Instagram 連接到 Social Quack
把貼文排程到您自己的 Instagram 帳號 —— 不用 Facebook 粉絲專頁、不用 App Review,幾分鐘,而且只做這一次。
除非排程工具屬於您本人,否則 Instagram 不會讓它代您發文。所以這件一次性的工作,就是在 Meta 的網站上建立一個屬於自己的免費小型開發者應用程式,再把其中兩個值貼進 Social Quack。那些值會加密存在您自己的 Mac 上;而且因為開發者應用程式是您的,Instagram 的發文額度也完全屬於您 —— 不存在一池子別人的帳號,能把您一起拖進速率限制或封鎖。
請把 Social Quack 和瀏覽器並排開著:瀏覽器裡是 Meta 的開發者網站,旁邊就是應用程式。每個要貼進 Meta 網站的值,在應用程式裡都有複製按鈕。
1. 您的 Instagram 帳號必須是專業帳號
Social Quack 只能發布到專業(Professional)帳號 —— 商業或創作者。在手機的 Instagram App 裡:Settings → Account type(設定 → 帳號類型)。個人帳號根本無法透過 Instagram 的發布工具發文,所以這件事值得最先確認。
您不需要 Facebook 粉絲專頁,帳號也不必連結到任何一個。
2. 在 Social Quack 打開金鑰視窗
在應用程式裡點側邊欄的 Channels(頻道),在 Add a channel(新增頻道)底下找到 Instagram,點 Set up app keys(設定應用程式金鑰)。
讓那個視窗開著。它裡面有三樣您等一下會用到的東西:
- 和本頁相同的步驟,精簡版;
- 重新導向網址 —— 也就是您登入後 Instagram 把您送回來的位址。Social Quack 會依您的環境算出正確的那一個,並附上複製按鈕,所以請一律從那裡取用,別自己打一個看起來很像的;
- 您要貼上的兩個欄位:
Instagram App ID和Instagram App Secret。
3. 在 Meta 應用程式裡加上 Instagram 用途
- 前往 https://developers.facebook.com,用您的 Facebook 帳號登入。
- 打開您的應用程式。如果您先前為了連接 Threads 建過一個,同一個就能用 —— 不需要第二個。
- 從來沒建過?My Apps → Create app,取任何名字都行,當 Meta 問您的應用程式要做什麼時選用途 "Manage messaging & content on Instagram",它要求時再附加或建立一個商家組合管理系統(business portfolio)。
- 在應用程式裡選 Add use case → "Manage messaging & content on Instagram" —— 除非您剛剛建立應用程式時就選了,那它已經在裡面了。
這個用途以前叫做 Instagram API with Instagram Login。同一個東西,改了名字 —— 若您在較舊的文章裡看到舊名稱,那就是這裡沒錯。
4. 告訴應用程式要把您送回哪裡
在那個用途裡打開 API setup with Instagram login → Set up Instagram business login,填三個欄位:
| Meta 頁面上的欄位 | 該填什麼 |
|---|---|
| OAuth redirect URIs | Social Quack 在 Set up app keys 視窗裡顯示、附有複製按鈕的那個重新導向網址。請從那裡複製 —— 不要自己重打。 |
| Deauthorize URL | https://socialquack.com/oauth/callback/uninstall |
| Data deletion URL | https://socialquack.com/oauth/callback/delete |
儲存頁面。重新導向網址必須一字不差地相符,所以請一律用複製而不是手動輸入 —— 那是 Instagram 登入頁拒絕繼續最常見的單一原因。
別因為那個位址在
socialquack.com而不在您自己的電腦上就慌了。Instagram 拒絕任何會把您送回不安全位址的登入,所以 Social Quack 給您一個安全的網址去註冊,再把登入結果直接交回給在您 Mac 上執行的應用程式。
5. 把兩把金鑰複製到 Social Quack
還在同一個頁面上,找到 Instagram App ID 和 Instagram App Secret,貼進 Social Quack 對應的欄位。
這不是儀表板其他地方顯示的 Meta App ID 和密鑰。它們長得很像,但是不同的數字。請從 API setup with Instagram login 取用。
點 Save(儲存)。Social Quack 會把它們加密存在您的 Mac 上,並立刻在瀏覽器打開 Instagram 的登入頁。如果您還沒做第 6 步,這次登入會失敗 —— 這是預期中的事,第 6 步就是解法。
登入真的成功之後 —— 也就是完成第 6 步之後 —— Instagram 會請您核准三項權限:
| 權限 | 用途 |
|---|---|
instagram_business_basic |
讀取您的使用者名稱和大頭貼,讓帳號能出現在 Connected(已連接)底下 |
instagram_business_content_publish |
發布您排定的貼文 |
instagram_business_manage_comments |
把多段貼文的後續段落以留言形式補上 |
三項全部核准。第三項正是把多段貼文的後續段落變成留言的關鍵 —— 少了它,貼文本身還是會發出去,然後回報失敗:"Posted, but adding the comment thread failed"。
6. 把您的帳號加為 Instagram Tester —— 並接受邀請
您的應用程式會一直留在開發模式(見第 8 步),而在該模式下,Instagram 只允許您邀請過的帳號使用它。您的帳號就是其中之一:
- 在您的 Meta 應用程式裡:App roles → Roles → Add people → 把您的 Instagram 帳號加為 Instagram Tester。
- 接著在手機的 Instagram App 裡接受邀請:Settings → Website permissions → Apps and websites → Tester invites。
在您接受之前,邀請會一直是 pending(待處理),第 5 步的登入就會失敗。如果您第一次連接就被錯誤訊息彈回來,幾乎都是這個原因 —— 接受邀請,然後在 Instagram 卡片上再點一次 Connect(連接)。
7. 媒體代管 —— 每則 Instagram 貼文都要有照片或影片
有兩條 Instagram 規則決定了這一步:沒有純文字貼文,而且 Instagram 是從公開網址去抓照片和影片,不接受上傳。
在 Social Quack 打開 Settings → Media hosting(設定 → 媒體代管)。只要授權有效,Social Quack 就會替您代管檔案,完全不用設定:檔案只在貼文發出的那一刻被複製一份,一天之內就會刪除,您的原始檔從不離開您的 Mac。若您想自己提供檔案,Use your own bucket instead(改用自己的儲存空間)可搭配任何相容 S3 的儲存服務 —— 搭配自訂網域的 Cloudflare R2 儲存桶就很好用。
由於沒有純文字貼文,Social Quack 會在您排程時就攔下來,而不是等到之後才失敗:"Instagram has no text-only posts — attach an image or video"。而如果附了檔案卻無處代管,貼文會在預定時間失敗,訊息是 "This platform needs a public URL for media…" —— 請啟用您的授權,或在這裡設定自己的儲存空間。
8. 發一則試試
打開 Compose(撰寫),勾選 Instagram 頻道,附上照片或影片,寫好文案並排定時間。
- 文案最多可寫 2,200 個字元。
- 最多附上 10 張照片或影片 —— 超過一個就會變成輪播。
- 單一影片會以 Reel 形式發布。
- 多段貼文的其餘段落會變成留言:第一個後續段落發成該貼文的留言,再後面的則是那則留言的回覆。
- 發布後,Queue(佇列)會直接連到 Instagram 上的貼文。
整件事就到這裡。您的應用程式會一直留在開發模式,而這已經足以發布到您自己的帳號 —— 沒有 App Review 要通過。只要您持續發文,連接就會自行續期:Instagram 核發一張 60 天的通行證,當這張通行證進入最後一週、而剛好有貼文發到這個帳號時,Social Quack 就會替您換一張新的。若停更兩個月,通行證就會失效 —— Instagram 屆時會請您重新連接帳號。
如果出了狀況
| 您看到的訊息 | 代表什麼 | 該怎麼辦 |
|---|---|---|
| Instagram 登入失敗,或是直接帶著錯誤彈回來 | Tester 邀請還在待處理 | 在 Instagram App 裡接受它:Settings → Website permissions → Apps and websites → Tester invites,然後重新連接(第 6 步) |
| Instagram 根本不讓這個帳號連接 | 它是個人帳號 | 在 Instagram App 裡改成商業或創作者帳號:Settings → Account type(第 1 步) |
| Instagram 的登入頁抱怨重新導向網址,或是一直沒回到應用程式 | 存在 Meta 的重新導向網址不完全相符 | 用 Channels → Instagram → Edit app keys(編輯應用程式金鑰)裡的複製按鈕再複製一次,貼進 Meta 的 OAuth redirect URIs 儲存,然後重新連接(第 4 步) |
| 登入才剛開始就被拒絕 | 貼上的是 Meta App ID 和密鑰,而不是 Instagram 的那組 | 請從 API setup with Instagram login 取用 Instagram App ID 和 Instagram App Secret(第 5 步) |
| 明明已經在那個瀏覽器登入了,Instagram 還是要您登入 | 正常現象 —— 這個連接流程一定會要求重新登入一次 | 照常登入即可 |
| "Instagram has no text-only posts — attach an image or video"(按 Post now(立即發布)時是 "Instagram requires an image or video on every post") | 這則貼文沒有照片或影片,而 Instagram 沒有純文字貼文 | 在 Compose 裡附上檔案,或是把這則貼文的 Instagram 頻道取消勾選(第 7 步) |
| "This platform needs a public URL for media…" | Instagram 從網址抓取照片和影片,而 Social Quack 沒有地方可以放 | 在 Settings → License 啟用您的授權,或在 Settings → Media hosting 設定自己的儲存空間(第 7 步) |
| "Instagram could not process the media" | Instagram 拒絕了這個檔案本身 | 換一個檔案試試 —— 標準的 JPEG 或 MP4,接近您平常用手機發的那種 |
| "Instagram took too long to process the media" | 大型影片還在 Instagram 那端處理中 | 不用做什麼;Social Quack 會視為暫時性狀況並再試一次 |
| "Posted, but adding the comment thread failed" | 貼文已經發出,但後續段落補不上去 | 打開 Channels,重新連接 Instagram 並核准全部三項權限,包含留言那一項(第 5 步) —— 同一個帳號會就地重新連上 |