YouTube oEmbed で動画タイトルとチャンネル名を取る

一言まとめ

`https://www.youtube.com/oembed?url=<動画URL>&format=json` は API キー不要・CORS 開放で、`title` と `author_name`(チャンネル名)が返る。ブラウザから直接叩ける。

作成 · 更新 · #youtube#oembed#cors
目次 5 sections
  1. 01 挙動
  2. 02 フィールドの意味
  3. 03 動画 ID の取り方
  4. 04 関連
  5. 05 更新履歴

調査時点: 2026-09。

挙動#

GET https://www.youtube.com/oembed?url=https://www.youtube.com/watch?v=dQw4w9WgXcQ&format=json
→ 200
access-control-allow-origin: <リクエストの Origin をそのまま返す>
{"title":"Rick Astley - Never Gonna Give You Up (Official Video) (4K Remaster)",
"author_name":"Rick Astley", ...}
  • API キー不要。
  • CORS が開いている(リクエストの Origin をそのまま返す)ので、サーバを挟まずブラウザから fetch できる。
  • User-Agent ヘッダが無くても 200 が返る。

フィールドの意味#

フィールド内容
title動画タイトル
author_nameチャンネル名。公式音源ならそのままアーティスト名。自動生成の Topic チャンネルは レミオロメン - Topic の形

「YouTube は動画タイトル 1 本しか取れない」という前提は誤りで、タイトルとチャンネル名の 2 フィールドが取れる。曲名検索のクエリを組むときに「アーティスト名を必ず付ける」方針を YouTube 由来の入力でも守れる。

動画 ID の取り方#

共有テキストなどから動画 ID を抜く場合、youtu.be/ID / watch?v=ID / shorts/ID / live/ID / embed/ID と、m. music. サブドメインの組み合わせに対応する。ID が取れれば oEmbed が権威あるタイトルを返すので、共有元のテキスト形式の差異を気にしなくてよい。

関連#

更新履歴#

  • 2026-09-12: 初版(ローカル調査ノート)
  • 2026-10-17: Wiki へ移植、概念ページとして再構成

同じトピック — Web