購入特典

ポチリプ
Threads複数アカウント
分析データ表示方法ガイド

Threadsを複数つないだあと、アカウントを切り替えるだけで、それぞれのThreadsの数字がダッシュボードに出るようにします。

このガイドの対象

Instagramのアカウントを2つ以上ポチリプに登録して運用している場合のガイドです。

Threadsをひとつしか使わないなら、この作業は必要ありません。

ポチリプは、Threadsを複数つなぐことはできます。
でも、そのままだと分析に出てくる数字は、いつも最初につないだThreadsのままです。

アカウントを切り替えても、Threadsの数字だけ変わらない。
これを、切り替えたアカウントの数字がちゃんと出るようにします。

アカウント A に切替 アカウント B に切替 A のThreadsの数字が出る B のThreadsの数字が出る そのまま そのまま
この状態にするのが、このガイドのゴールです

始める前に

  • ポチリプの設置が終わっていること
  • Instagramのアカウントを2つ以上、ポチリプに登録していること
  • つなぎたいThreadsが、それぞれログインできる状態であること
1

分析が切り替わるようにする

最初にここをやります。文をコピーして貼るだけ。10〜20分ほどで終わります。

手順

  1. ターミナル(Macは「ターミナル」、Windowsは「PowerShell」)を開く
  2. ポチリプのフォルダに移動して、claude と打つ
  3. 下の「コピー」を押して、そのまま貼り付けて、Enterを押す
  4. 終わるまで待つ(途中で聞かれたら「はい」で進めて大丈夫です)
  5. ポチリプの画面を開き直す
この文をコピーして貼るだけ
ポチリプを「Instagramのアカウントごとに、別のThreadsの数字を出せる」形に直してください。
いまはThreadsを複数つないでも、読み出しがいつも最初の1件(ORDER BY id LIMIT 1)に固定されているため、
アカウントを切り替えても同じThreadsの数字しか出てきません。

【前提】Cloudflare Workers + Hono + D1 のプロジェクトです。
触るのは src/index.ts、public/app.js、migrations/ の3か所。データベース名は wrangler.jsonc の d1_databases から読んでください。

【1】マイグレーションを1つ足す(例:migrations/0023_threads_per_account.sql)
- threads_accounts に owner_account_id TEXT を追加する(このThreads連携がぶら下がるInstagramアカウント = accounts.ig_user_id)
- 既存の連携行は accounts の一番小さいidの ig_user_id を入れて、最初のアカウントに帰属させる
- media_insights のうち product_type = 'THREADS' で account_id が NULL の行も、同じく最初のアカウントに帰属させる

【2】src/index.ts を直す
- ヘルパー activeThreadsAccount(c) を追加する。いま選択中のアカウント(既存の activeAccountId)に紐づく threads_accounts を1件返す
- GET /auth/threads/callback:Cookie の iad_account で選択中アカウントを取り、無ければ最初のアカウントを使う。
  同じ owner_account_id に別のThreadsが繋がっていたら先に DELETE してから INSERT する(1アカウント = 1Threads)。owner_account_id も保存する
- GET /api/threads-account、POST /api/threads-account/refresh-token、DELETE /api/threads-account:どれも owner_account_id で絞る(削除も選択中アカウントの分だけ)
- refreshInsightsCache:includeThreads の引数をやめて、渡されたIGアカウントに紐づくThreadsだけを扱う。
  Threads行を media_insights に入れるときは account_id にそのThreadsの owner_account_id を入れる。
  期限切れ行の掃除と、6時間キャッシュの更新対象の条件も account_id で絞る
- GET /api/insights-analysis:Threads行も account_id で絞る(いまは全アカウント共通で表示されてしまっている)。件数を返す cacheInfo も同じ条件で絞る
- GET /api/follower-stats:activeThreadsAccount を使う。フォロワー履歴のキーを threads: に変える。
  ただし一番最初に連携したThreadsだけは、旧キー 'threads' の履歴も読めるようにフォールバックを付ける(過去の記録を失わないため)
- GET /api/threads-insights/:mediaId:activeThreadsAccount を使う
- processScheduledPosts:予約投稿の account_id に紐づくThreadsで公開する(アカウントごとのキャッシュを持たせる)。
  account_id が入っていない古い予約は、最初のThreads連携で公開する
- cron の scheduled:インサイト更新は各Instagramアカウントごとに回し、その中でそのアカウントのThreads分も更新する。
  フォロワーの日次記録は、連携している全部のThreadsをループして threads: のキーで記録する

【3】public/app.js を直す
- 接続設定のThreads連携の説明文に、次の内容を足す:
  「Threadsの連携はアカウントごとに別々です。左下でアカウントを切り替えてから、そのアカウントで使うThreadsを連携してください。連携するときは、ブラウザのThreadsを繋ぎたいアカウントでログインしておくこと」

【4】反映まで済ませる
- npx wrangler d1 migrations apply <データベース名> --remote
- npx wrangler deploy
- 反映後、既存の連携が消えていないか、いまのThreadsがどのアカウントに付いているかをデータベースで確認して報告してください

既存のデータは消さないでください。作業の前に、いまの threads_accounts と media_insights の中身を確認してから進めてください。
終わったあとの状態 いま繋がっているThreadsは、ぜんぶ「最初に登録したInstagramアカウント」に付いた状態になります。
2つ目のThreadsを別のアカウントに付け替える作業が、このあとの2番です。
2

つなぎたいThreadsを「テスター」に入れる

ここが、いちばんつまずくところです。申請を出す人承認する人が別々なので、2画面を行き来します。

Metaの決まりで、アプリを使ってよいThreadsアカウントを名指しで登録しないと、つなげません。
この登録が「テスター」です。招待状を送って、送られた側が受け取る。それだけの話です。

あなた(パソコン) 送られる つなぎたいアカウント Metaの開発者画面 名前を入れて招待 招待が届く Threadsの設定の中へ Threadsで承認 ここまでやって完了
招待を送っただけでは、まだつながりません。承認まで必ずやってください

前半 パソコンで招待を送る

  1. developers.facebook.com/apps を開いて、ポチリプ用に作ったアプリを選ぶ
  2. 左のメニューから「アプリの役割」→「役割」を開く
  3. Threadsテスターという欄を探す(Instagramテスターとは別の欄です。見間違えに注意)
  4. 「ユーザーを追加」を押して、つなぎたいThreadsのユーザーネームを入れる(@のあとの名前です)
  5. つなぎたいアカウントが3つあるなら、3つとも同じように追加する

後半 そのアカウント側で受け取る

ここを忘れる人がとても多いです。招待されたアカウント本人で操作します。

  1. スマホでもパソコンでもいいので、招待したアカウントでThreadsにログインする
  2. Threadsの設定を開く
  3. アカウントを開く
  4. ウェブサイトの権限を開く
  5. 届いている招待の「承認」を押す

追加したアカウントの数だけ、この5つを繰り返します。

承認していないと、次で必ず止まります つなごうとしたときに「対象外」「権限がありません」と出たら、そのアカウントが承認をしていません。ここに戻ってきてください。
3

つなぐ前に、2つの名前をそろえる

つなぐ作業そのものはボタン1つ。その前の準備で失敗します。

ポチリプは、そのときブラウザでログインしているThreadsをつなぎます。
だから、つなぐ前に次の2つを同じアカウントにそろえます。

ブラウザのThreads アカウント B でログイン中 ポチリプの左下 アカウント B を選んでいる この2つが同じなら 正しくつながります
片方がAのまま、もう片方がBだと、意図しないアカウントがつながります

そろえる手順

  1. ブラウザでThreadsを開く
  2. 右上(スマホは右下)のアイコンから「アカウントを切り替える」を押して、つなぎたいアカウントに変える
  3. 別のタブでポチリプを開く
  4. ポチリプの画面左下のアイコンを押して、そのThreadsを紐づけたいInstagramアカウントに切り替える
  5. 2つが同じ人になっているか、声に出して確かめる

そろったら、つなぐ

  1. 左のメニューから「接続設定」を開く
  2. 「4. Threads連携」まで下がる
  3. 「保存してThreadsと連携する」を押す(「保存のみ」ではありません)
  4. Threadsの許可画面が出たら「許可」を押す
  5. 接続設定にThreadsの名前が出れば成功

2つ目・3つ目も、この画面のとおりに繰り返すだけです。

間違ったアカウントがつながったときは やり直せば上書きされます。ブラウザのThreadsとポチリプの左下、2つをそろえ直して、もう一度「保存してThreadsと連携する」を押してください。
4

切り替えて、分析を見る

ここまで来たら完成です。見る場所だけ覚えてください。

画面の上のほう まん中あたり 投稿のインサイト分析 ここがいちばん下 アカウント切り替え ここで Threadsを選ぶ
左下で人を変える。いちばん下で数字を見る。この2か所だけです
  1. ポチリプの画面をいちばん下までスクロールする
  2. 「投稿のインサイト分析」の中の、左のプルダウン(「すべての投稿」と書いてある四角)を押す
  3. Threads を選ぶ
  4. 期間を選ぶ(7日・14日・30日・90日、または月ごと)
  5. 左下でアカウントを切り替えると、そのアカウントのThreadsの数字に変わります

フォロワー数と、7日・30日でどれだけ増えたかも、そのアカウントのものが出ます。

つないだ直後は空のことがあります 「データ更新」を押して、数分待ってからもう一度見てください。数字は少しずつ自動で集まります。

うまくいかないとき

切り替えても、同じThreadsの数字のまま

1番が反映されていない可能性があります。Claude Codeに「wrangler deploy まで終わっているか確認して」と伝えてください。そのあとポチリプの画面を開き直す(スマホは一度タブを閉じる)と直ることもあります。

許可画面で「対象外」と出る

そのThreadsが承認をしていません。2番の後半に戻って、そのアカウントでThreadsにログインし、設定 → アカウント → ウェブサイトの権限、で承認してください。

つなぎたいのと違うアカウントがつながった

ブラウザのThreadsが前のアカウントのままだったのが原因です。3番の「そろえる手順」からやり直せば上書きされます。

Threadsテスターの欄が見つからない

Instagramテスターの欄と間違えていることが多いです。「アプリの役割」→「役割」の中に、Threads用の欄が別にあります。無い場合は、アプリにThreadsのユースケースが追加されていません。

数字が増えない・止まっている

分析の「データ更新」を押してください。それでも動かないときは、接続設定でThreadsの期限が切れていないか見てください。切れていたら、つなぎ直せば戻ります。