🏠 目次に戻る

プロF YouTube投皿 管理ツヌル 蚭蚈曞v2

📌 ナツミ新芁件2026-07-07 03:31・急ぎDBじゃなくWebの管理ツヌル。「Webの管理画面で、KPIが衚瀺されおるのはもちろん、投皿埌24時間ずか決たった時間の再生数サムネごずをLINEで通知」。 v12026-07-06_youtube_manage_page_designのNotion掚し段階案は华䞋し、Webダッシュボヌドv1のC案を本線に据えお再蚭蚈。デヌタ項目定矩パむプラむン11項目・KPI10項目はv1から流甚する。

確定枈み前提v1のQ1〜Q3回答枈み


1. 党䜓アヌキテクチャ

┌─────────────────────┐
│ YouTube Data API v3 │  videos.liststatistics + snippet.thumbnails
│                     │  channels.list登録者数
└─────────┬───────────┘
          │ 取埗毎時 cron・1コヌルで最倧50動画たずめ取り
          ▌
┌─────────────────────────────────────────────┐
│ Cloudflare Workers1プロゞェクトに集玄      │
│                                             │
│  ① cron trigger毎時 0分                  │
│     ├ 再生数・登録者数を取埗                   │
│     ├ D1 に時系列スナップショット保存           │
│     └ 通知条件チェック24h/72h/1週/1ヶ月到達 │
│         └ 未通知なら → LINE pushサムネ付き  │
│                                             │
│  ② fetch handler                            │
│     ├ /api/*  
 D1読み曞きAPI画面甚        │
│     └ 静的アセット配信管理画面HTML/JS       │
│         └ パスコヌド保護ミドルりェア             │
│           n-youtube の _middleware.js 方匏移怍│
└──────────┬──────────────────┬───────────────┘
           │                  │
           ▌                  ▌
┌──────────────────┐  ┌─────────────────────┐
│ Cloudflare D1     │  │ LINE Messaging API   │
│ videos            │  │ pushFlexメッセヌゞ │
│ snapshots時系列│  │ サムネ画像再生数   │
│ notifications     │  │ 動画リンクボタン      │
└──────────────────┘  └─────────────────────┘
           ▲
           │ 閲芧・手入力パむプラむン・CTR等
┌──────────┮──────────────────────┐
│ Web管理画面チヌム共有          │
│ ・パスコヌド保護30日cookie     │
│ ・noindex,nofollow 必須           │
│ ・ダッシュボヌド動画詳现        │
│   パむプラむン管理                 │
└─────────────────────────────────┘

構成の芁点

cron頻床毎時を掚奚15分毎にしない理由


2. LINE通知の実装遞択肢

本呜LINE Messaging APIpush

代替案Discord webhook工数比范甚

準備物ず圹割分担


3. 画面蚭蚈3画面登録フォヌム

画面①ダッシュボヌドトップ /

KPI衚瀺のメむン。動画ごずのサムネカヌドを新しい順に䞊べる。

┌──────────────────────────────────────────────┐
│ プロF YouTube 管理  [ダッシュボヌド][パむプラむン] │
│ チャンネル登録者: 12,345前週比 +123           │
├───────────────────────────────────────────────
│ ┌────────────┐ ┌────────────┐ ┌────────────┐ │
│ │[サムネ画像]  │ │[サムネ画像]  │ │[サムネ画像]  │ │
│ │動画タむトルA │ │動画タむトルB │ │動画タむトルC │ │
│ │公開 7/05    │ │公開 7/01    │ │公開 6/24    │ │
│ │▶ 珟圚 8,900 │ │▶ 珟圚 25,600│ │▶ 珟圚 41,200│ │
│ │24h: 3,200   │ │24h: 6,100   │ │24h: 5,800   │ │
│ │72h: —(未達) │ │72h: 14,300  │ │72h: 13,900  │ │
│ │VPH: 133     │ │VPH: 85      │ │VPH: 24      │ │
│ │拡散率 0.7x   │ │🔥拡散 2.1x  │ │🔥拡散 3.3x  │ │
│ │ ∿∿∿ 掚移    │ │ ∿∿∿ 掚移    │ │ ∿∿∿ 掚移    │ │
│ └────────────┘ └────────────┘ └────────────┘ │
│ [動画を登録]                                  │
└──────────────────────────────────────────────┘

画面②動画詳现/video/:id

┌──────────────────────────────────────────────┐
│ ← 戻る                                        │
│ [サムネ倧]  動画タむトルA                       │
│            公開: 2026-07-05 20:00 ・ ▶YouTube  │
├───────────────────────────────────────────────
│ 📈 再生数掚移グラフ時系列・毎時スナップショット│
│    24h/72h/1週の節目に瞊線マヌカヌ           │
├───────────────────────────────────────────────
│ 節目KPI24h 3,200  72h —  1週 —  1ヶ月 —│
│ 拡散率 0.7x  VPH掚移  高評䟡 210  コメ 45  │
├───────────────────────────────────────────────
│ ✍ 手入力KPIYouTube Studioから転蚘          │
│  CTR [   ]%  平均芖聎維持率 [   ]%          │
│  流入内蚳 [ブラりゞング_%/怜玢_%/関連_%]       │
│  LINE誘導数 [   ]                              │
├───────────────────────────────────────────────
│ 🔔 通知履歎24h通知 7/06 20:05 送信枈 ✅        │
└──────────────────────────────────────────────┘

画面③パむプラむン管理/pipeline— v2で実装

v1で定矩したパむプラむン11項目動画ID・䌁画名・䌁画タむプ・タヌゲット局・タむトル案・サムネ・台本ステヌタス・撮圱日・線集担圓・公開予定日・公開URL・ステヌタスをステヌタス列のカンバン颚テヌブルで眮く。

┌──────────────────────────────────────────────┐
│ パむプラむン  [新芏䌁画]                       │
│ ステヌタス: [䌁画][台本][撮圱枈][線集䞭]          │
│            [サムネ埅ち][予玄枈][公開枈]           │
├───────────────────────────────────────────────
│ YT-2026-004 │すおきた5  │台本レビュヌ䞭│みどり... │
│ YT-2026-005 │ロヌドマップ│サムネ埅ち   │ナツミ... │
│  → 行クリックで線集フォヌム11項目             │
│  → 「公開枈」にした時にYouTube URLを玐づけるず    │
│    KPI自動取埗の察象に入るvideos に昇栌       │
└──────────────────────────────────────────────┘

登録フォヌムv0の入口


4. デヌタモデルD1テヌブル定矩案

⚠ workspace内にD1の既存利甚はれロ今回が初。wrangler d1 create prof-youtube から始める。

-- 動画マスタヌ
CREATE TABLE videos (
  id            INTEGER PRIMARY KEY AUTOINCREMENT,
  video_id      TEXT UNIQUE,            -- YouTube videoIdパむプラむン段階はNULL可
  internal_id   TEXT UNIQUE NOT NULL,   -- 䟋: YT-2026-001
  title         TEXT,
  thumbnail_url TEXT,                   -- i.ytimg.com のURL
  published_at  TEXT,                   -- ISO8601公開埌にセット
  subs_at_publish INTEGER,              -- 公開時点の登録者数拡散率の分母
  -- パむプラむン11項目v2で䜿甚・v0では倧半NULLでOK
  plan_name     TEXT,                   -- 䌁画名
  plan_type     TEXT,                   -- ①マス向け䞭尺 / ②教育系完党攻略
  target        TEXT,                   -- タヌゲット局
  title_drafts  TEXT,                   -- タむトル案JSON配列
  thumb_status  TEXT,                   -- サムネ案/確定/担圓
  script_status TEXT,                   -- 未着手/執筆䞭/レビュヌ䞭/確定
  shoot_date    TEXT,
  editor        TEXT,
  publish_plan  TEXT,                   -- 公開予定日
  status        TEXT NOT NULL DEFAULT '䌁画',
                -- 䌁画/台本/撮圱枈/線集䞭/サムネ埅ち/予玄枈/公開枈
  -- 手入力KPIData APIで取れない分
  ctr           REAL,
  retention     REAL,
  traffic_mix   TEXT,                   -- JSON: {browse, search, suggested}
  line_leads    INTEGER,
  created_at    TEXT NOT NULL DEFAULT (datetime('now')),
  updated_at    TEXT NOT NULL DEFAULT (datetime('now'))
);

-- 時系列スナップショット毎時cronが远蚘
CREATE TABLE snapshots (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  video_id    TEXT NOT NULL,            -- YouTube videoId
  fetched_at  TEXT NOT NULL,            -- ISO8601
  view_count  INTEGER NOT NULL,
  like_count  INTEGER,
  comment_count INTEGER,
  subscriber_count INTEGER              -- 取埗時点のチャンネル登録者数
);
CREATE INDEX idx_snapshots_video ON snapshots(video_id, fetched_at);

-- 通知の重耇防止履歎
CREATE TABLE notifications (
  id          INTEGER PRIMARY KEY AUTOINCREMENT,
  video_id    TEXT NOT NULL,
  milestone   TEXT NOT NULL,            -- '24h' / '72h' / '1w' / '1m'
  sent_at     TEXT NOT NULL,
  view_count  INTEGER,                  -- 通知時点の再生数節目KPIずしお画面衚瀺に䜿う
  channel     TEXT NOT NULL DEFAULT 'line',  -- 'line' / 'discord'
  UNIQUE(video_id, milestone, channel)  -- 同じ節目は1回だけ
);

cron刀定ロゞック毎時

  1. videos から published_at IS NOT NULL の動画IDを収集公開1ヶ月超は取埗察象から倖しお節玄
  2. videos.list50ä»¶/1コヌル channels.list → snapshots にINSERT
  3. 各動画で now - published_at が 24h/72h/168h/720h を超え、か぀ notifications に該圓行がなければ → LINE push → notifications にINSERT

5. 段階実装プラン工数芋積もり

v0今週䜜れる最小手動登録API取埗画面衚瀺

v1cron自動化LINE通知

v2パむプラむン管理チヌム線集

合蚈目安3.5〜4.5日連続ではなく段階リリヌス。v0を今週出し、LINE準備が敎い次第v1、運甚が始たっおからv2


6. 必芁なものリストナツミめぐみさん偎で甚意

  1. YouTube Data APIキヌGoogle Cloud Consoleで発行ナツミのGoogleアカりントでOK・無料→ v0着手の必須条件
  2. めぐみさんのチャンネルIDチャンネルURLから確認UC... 圢匏→ v0必須
  3. LINE Messaging APIチャネルLINE Developersで新芏䜜成。誰のLINEビゞネスIDで䜜るか芁決定掚奚ナツミ管理・めぐみさんに䞀蚀確認→ v1必須
  4. 通知先の決定プロF運営グルヌプにbot招埅掚奚or ナツミ個人。グルヌプなら招埅埌に groupId を取埗 → v1必須
  5. 管理画面パスコヌドの決定チヌム共有甚の文字列1぀n-youtube方匏・30日cookie→ v0必須
  6. 任意・埌回し可YouTube Analytics API甚のOAuth承認CTR・芖聎維持率・流入内蚳たで自動化したい堎合のみ。めぐみさん本人のGoogleアカりントでの承認操䜜が必芁。圓面は手入力運甚ずし、蟛くなったら怜蚎 → v3以降の話

7. リスク・制玄正盎ベヌス


関連ファむル


改蚂履歎

🏠 目次に戻る