將 TikTok 連接到 Social Quack —— 完整指南
TikTok 是唯一一個連接時要填一份表單、錄一段簡短螢幕錄影的平台,而不是點兩下就好。這一頁會帶您在大約 20 分鐘內完成,每個答案都已備妥、直接貼上即可。這件事只需要做一次。
想跳過 TikTok 的審查?改用 Zernio 連接:貼上一把金鑰、登入、發文 —— 幾分鐘搞定,不用填表。請看 Zernio 指南。本頁是使用您自己的開發者應用程式、自己動手的路線。
分成兩個階段,完成第 1 階段後就能開始發文:
| 階段 | 您會得到什麼 | 時間 |
|---|---|---|
| 1. 建立應用程式 | 連接帳號並發文 —— 但在 TikTok 審查應用程式之前,貼文都是私人的(只有您看得到) | 約 10 分鐘 |
| 2. 送出審查 | 公開發文 | 您這邊約 10 分鐘,之後 TikTok 那端需要 1–5 個工作天 |
第 1 階段 —— 建立您的 TikTok 開發者應用程式
- 前往 https://developers.tiktok.com,用您的 TikTok 帳號登入。(系統可能會請您驗證電子郵件並接受開發者條款。)
- Manage apps → Connect an app。填入:
- App name(應用程式名稱):任何名字都行,例如
My Social Quack - App icon(應用程式圖示):任何一張 1024×1024 的圖片(您的標誌或一張照片)
- Category(類別):Productivity(或最接近的選項)
- Description(說明):貼上下方「可直接貼上的答案」裡的那一段
- Terms of Service URL:
https://socialquack.com/terms· Privacy Policy URL:https://socialquack.com/privacy - Platform(平台):勾選 Desktop
- App name(應用程式名稱):任何名字都行,例如
- Add products(左側欄):加入 Login Kit 和 Content Posting API。
- 在 Content Posting API 裡,打開 Direct Post。
- Login Kit → Redirect URI:勾選 Desktop,然後把 Social Quack 裡顯示的重新導向網址原封不動貼上(Channels → TikTok → Set up keys ▾ → Set up app keys —— 它看起來像
http://localhost:4400/oauth/tiktok/callback)。儲存。為什麼選 Desktop 而不是 Web?Social Quack 是在您自己的電腦上執行的。TikTok 的 Desktop 平台允許
localhost重新導向,也不需要您驗證網域;選 Web 就得驗證。 - Scopes(權限範圍):確認您的產品底下列有這三項:
user.info.basic、video.upload、video.publish。 - 建立 Sandbox —— 這是每個人都會漏掉的一步。在 TikTok 審查您的應用程式之前,它的主要(「正式」)client key 會被拒絕,出現
unauthorized_client。在應用程式頁面點 Sandbox(右上角)→ Create sandbox。給它同樣的產品(Login Kit、開啟 Direct Post 的 Content Posting API)、同樣的權限範圍和同樣的 Redirect URI,並在 Target users(目標使用者)底下加入您自己的 TikTok 使用者名稱。 - Sandbox → Client key / Client secret:把兩個值都複製到 Social Quack(Channels → TikTok → Set up keys ▾ → Set up app keys),然後點 Connect(連接)。在 TikTok 登入頁上核准。您的帳號就會出現在 Connected(已連接)底下。
- 測試時請用一個拋棄式 TikTok 帳號。Sandbox 應用程式只能發文到私人帳號(否則會出現
unaudited_client_can_only_post_to_private_accounts)—— 而您不會想把真正的帳號改成私人。請建立一個全新的 TikTok 帳號(任何電子郵件都行),把它設為私人(Profile → ☰ → Settings and privacy → Privacy → Private account),把它的使用者名稱加到 sandbox 的 Target users 底下,然後在 Social Quack 裡連接那個帳號。 - 從 Compose(撰寫)發一支測試影片。勾選 TikTok 頻道時,會出現 TikTok options(TikTok 選項)面板 —— 選擇誰能看到這則貼文(在 sandbox 中只提供 "Only you")、留言/合拍(Duet)/拼接(Stitch)開關,以及是否為商業內容。它會發布到那個拋棄式帳號。第 1 階段就完成了。
審查通過之後:回到 Edit keys ▾ → Edit app keys,貼上應用程式的正式 Client key/secret(在 App details 裡,不是 sandbox 的),然後點 Connect —— 這次用您真正的帳號。從此之後,隱私選單會提供 Everyone / Friends / Followers / Only you。
照片貼文需要多一個步驟:TikTok 是從公開網址抓取照片,所以請在 Social Quack 的 Settings(設定)裡設定 Media hosting(媒體代管),接著在您的 TikTok 應用程式裡打開 Content Posting API → URL properties,驗證那個網域。影片不需要這一步。
第 2 階段 —— 送出審查(解除只能私人發文的限制)
在開發者入口網站打開您的應用程式 → Submit for review。TikTok 會要三樣東西:每個產品和權限範圍的說明、一支示範影片,以及應用程式的基本資料。您需要的一切都在下面。
可直接貼上的答案
App description(應用程式說明)
Personal social-media scheduling tool. I write posts on my own computer (Social Quack, a self-hosted scheduler that runs locally on my Mac/PC) and it publishes them to my own TikTok account at the scheduled time. Single user: me. No data about other TikTok users is collected or stored; nothing runs on a server.
Explain how each product and scope works within your app(說明每個產品和權限範圍在應用程式中的用途)
Login Kit — used once to sign in with my own TikTok account so the app can obtain an access token for that account. The token is stored encrypted on my computer only.
Content Posting API (Direct Post) — used to publish videos and photo posts that I create and schedule myself. The app uploads the video file directly (FILE_UPLOAD) at the scheduled time with the caption I wrote, using the privacy level I chose.
user.info.basic — reads my own display name, avatar and username to show which account is connected in the app.
video.upload — uploads the video file to TikTok for a post I scheduled.
video.publish — publishes that upload as a post on my own account, with my caption and privacy setting.
Data handling: the app is local-only software. Access tokens are stored encrypted on my device, never transmitted to any third-party server, and are deleted when I disconnect the account. No content or data from other users is accessed.
若被問到 "Does your app allow users to post publicly?" → Yes — the user chooses the privacy level (public, friends, or private) for each post, matching what they'd pick in the TikTok app.
若被問到網站/使用者如何取得應用程式 → Desktop application installed on the user's computer; the website is https://socialquack.com.
示範影片 —— 要錄些什麼
TikTok 想看到實際流程,不是行銷影片。一段 60–90 秒的螢幕錄影就很完美。Mac:QuickTime → File → New Screen Recording,或 ⌘⇧5。 不需要旁白;加字幕是加分,但非必要。
腳本(請依序照做 —— 審查人員會找的正是這幾個環節):
- (0:00) 打開 Social Quack。簡短帶過 Channels(頻道)頁面。
- (0:05) 在 TikTok 上點 Connect。TikTok 登入頁會在瀏覽器中打開 —— 把列出權限範圍(user info、upload、publish)的授權畫面拍進去,然後點 Authorize。拍出它回到 Social Quack,而您的 TikTok 帳號已經列在 Connected 底下。
- (0:25) 前往 Compose。輸入文案,點 Upload 附上一支短影片,勾選 TikTok 頻道。在出現的 TikTok 選項面板上多停留一下 —— 審查人員會檢查它:那一行 "Posting to TikTok as …",打開 Who can see this post 下拉選單並選一個值,展示 Allow comments / Duet / Stitch 開關,把 Disclose commercial content 打開再關掉,讓 Your brand / Branded content 顯示出來,並讓 "By posting, you agree to TikTok's Music Usage Confirmation" 這一行入鏡。接著選一個一兩分鐘後的時間(或點 Post now)。
- (0:45) 展示貼文在 Queue(佇列)中的狀態為 scheduled,然後等它(或在 Post now 之後)變成 published。點 view 連結。
- (1:00) 展示貼文出現在 TikTok 本身 —— 網頁版個人檔案或您的手機畫面 —— 讓審查人員看到文案和影片確實發到了帳號上。
- (1:15,可選但很有說服力) 前往 Channels → Remove TikTok 頻道,展示中斷連接會撤銷應用程式的存取權。
整段一鏡到底即可,不需要剪輯。存成 MP4,上傳到審查表單的示範影片欄位。
送出之後
- 通常需要 1–5 個工作天。無論結果如何,您都會收到電子郵件。
- 如果被退件,原因通常是以下其中之一:示範影片沒拍到授權畫面、沒拍到貼文出現在 TikTok 上,或權限範圍說明沒寫出每一項權限範圍的用途。修正那一點再重新送出 —— 當天就可以。
- 等待期間照常使用應用程式:私人貼文全程都能發。
- 一旦通過,Social Quack 裡什麼都不用改 —— 您的下一則貼文就會直接使用您選的隱私等級。
疑難排解
| 您看到的訊息 | 代表什麼 | 該怎麼辦 |
|---|---|---|
TikTok 登入頁上出現 unauthorized_client / client_key |
您在審查前就用了正式金鑰 | 建立 Sandbox,把自己加為目標使用者,改用 sandbox 的 client key/secret |
TikTok 登入頁上出現 redirect_uri 錯誤 |
Login Kit 裡的網址不完全相符 | 從 Social Quack 的 TikTok 卡片重新複製一次,包含通訊埠;確認已勾選 Desktop |
unaudited_client_can_only_post_to_private_accounts |
Sandbox 應用程式 + 已連接的帳號是公開的 | 連接一個設為 Private(私人)的拋棄式帳號(第 8 步) |
| "TikTok: choose who can see this post" | 沒有在 TikTok 選項面板裡選擇隱私等級 | 在 Compose 裡勾選 TikTok 頻道並選擇觀看對象 |
貼文失敗,出現 privacy_level_option_mismatch |
應用程式尚未通過審查,所以只允許私人 | 審查前這是正常的 —— 貼文為私人;送出審查即可解除 |
貼文失敗,出現 unaudited_client_can_only_post_to_private_accounts |
同上 | 同上 |
| "TikTok session fully expired" | 您已經一年沒發文,refresh token 失效了 | Channels → Remove → 再 Connect 一次 |
| 照片貼文失敗,影片卻正常 | 媒體網域尚未驗證 | Content Posting API → URL properties → 驗證您的媒體代管網域 |