本書は ViralForge で Instagram への自動投稿 (Feed / Reel / Carousel) を有効化するための、クライアント様側の作業手順です。
| モード | App Review | Business Verification | 投稿可能な IG アカウント | 所要期間 |
|---|---|---|---|---|
| テストユーザー運用 (推奨初期構成) | 不要 | 不要 | App 管理者 + Tester Role に追加した IG アカウントのみ | 30 分〜半日 |
| 公開サービス運用 | 必須 (instagram_content_publish 等) |
必須 | 任意の Instagram Business アカウント | 2 週間〜1 ヶ月 |
自社 SNS 運用や顧客少数に限定する用途であれば テストユーザー運用で十分 です。本書はまずテストユーザー運用を前提に進め、公開サービス化したい場合の追加手順を §4 にまとめます。
ViralForge の Instagram 連携は Instagram Graph API (Facebook Graph API 経由) を使用します。Instagram Basic Display API ではありません。
必須条件:
個人アカウントの場合は、Instagram アプリ内 設定 → アカウント → プロアカウントに切り替える で Business に変換してください。
Instagram Graph API への投稿は 3 step:
status_code = FINISHED まで待機/media_publish で公開ViralForge では services/instagram_client.py が自動実行します。
| タイプ | 説明 | 上限 |
|---|---|---|
| Feed | 静止画 1 枚 + caption | JPEG 8MB、比率 4:5 / 1:1 / 1.91:1 |
| Reel | 縦型動画 + caption | MP4 1GB 以内、3〜90 秒、9:16 推奨 |
| Carousel | 画像 + 動画 混在可能 | 最大 10 media |
設定 → Instagram で IG とリンク済https://viral-forge.net/privacy.htmlhttps://viral-forge.net/terms.htmlOther、App type = BusinessApp Dashboard 左メニュー Add Products から:
Instagram Platform と表示されることあり)App Settings → Basic から App ID (数値) と App Secret (Show ボタンで表示) を控えます。App Secret は第三者に共有しないでください。
必要な権限 4 つ:
instagram_basicinstagram_content_publishpages_show_listpages_read_engagementテストユーザー運用: Standard Access のまま Tester Role で招待したユーザーに対してすべて動作。App Review 不要。
公開サービス運用のみ: App Review → Permissions and Features から Request Advanced Access で申請 (§4 参照)。
OAuth は招待 Accept したユーザーで行う必要があります。他ユーザーでログインすると This app is still in development エラーになります。
テストユーザー運用で十分な場合は §4 はスキップしてください。
instagram_content_publish 等の Advanced Access を一般公開 IG アカウントに対して使うには App Review 通過が必要。提出物:
https://viral-forge.net/privacy.htmlhttps://viral-forge.net/terms.html審査は通常 3〜7 営業日、差し戻しで 2〜3 往復、全体 2〜4 週間を見込んでください。
Meta Business Manager の https://business.facebook.com/settings/security から Start Verification。法人登記簿謄本 / 納税証明書 / 公共料金請求書などを提出。審査 3〜14 日程度。
Instagram Graph API のトークンは 3 段階で交換されます。
この交換は ViralForge が自動で行います。運用者は OAuth ボタンを押すだけです。
ViralForge の Instagram 連携は、全体設定 (Admin) に登録した Instagram App を organization 経由で OAuth 接続する構成です。
| エラー | 原因 | 対処 |
|---|---|---|
OAuthException (code 190) |
Access Token 期限切れ / 失効 | 組織設定から再認証。Page Token は通常永続だがパスワード変更等で失効する |
This app is still in development |
認証ユーザーが Tester Role に未追加 | §3.5 の手順で招待 + Accept |
Business Discovery Feature Limited |
公開サービス運用で App Review 未通過 | 審査申請状況を確認 (テストユーザー運用なら不要) |
Media ID not found |
Reel/Carousel の container が publish 前に ready にならなかった | 動画サイズ・比率を確認。ViralForge 側で自動リトライ (30 秒 polling × 最大 5 回) |
Rate limit exceeded |
24h 50 post 超過 | スケジュール見直し、1 時間以上空ける |
Not an Instagram Business Account |
個人アカウントのまま | Business / Creator に切り替えて再リンク |
App Secret / Page Access Token は Fernet 暗号化で DB 保存、multi-tenant 分離されています。