YouTube 動画検索

動画を検索する YouTube 検索 API

YouTube を HTTP で検索し、チャンネル名と再生時間を各結果とともに取得します。Google Cloud プロジェクトや日次クォータの管理は不要です。

エンドポイント
POST https://api.search1api.com/search
YouTube の検索結果に含まれるもの

結果は他のエンジンと同じ JSON 形式で返るため、既存のパース処理をそのまま利用できます。

1
動画タイトルとリンク

リンクは youtube.com の視聴ページを指します。

2
チャンネルと再生時間

スニペットはチャンネル名と再生時間から始まります。

3
動画の説明

スニペットの残りは動画の説明文です。

主な用途

チュートリアル探索 / メディア監視 / コンテンツ調査

クォータなしで再生時間とチャンネルを取得

`search_service` に `youtube` を指定すると、YouTube の動画から結果が返ります。エンドポイント、認証方式、レスポンス構造は他のエンジンと同じで、Google Cloud プロジェクトは関与しません。

スニペット内の再生時間

`snippet` フィールドの形式は「チャンネル | 再生時間 | 説明」で、再生時間は `12:30` のような可読形式です。取得前に長編チュートリアルか短いクリップかを判別できます。

帰属情報としてのチャンネル

チャンネル名が結果とともに返ります。動画を見る価値があるかは、これで決まることが少なくありません。

日次クォータの見積もりが不要

リクエストは YouTube Data API のユニットではなく Search1API のクレジットで課金されるため、日次クォータを前提にワークロードを設計する必要がありません。

標準の Search パラメータ

`max_results` は最大 50、ほかに `include_sites`、`exclude_sites`、`time_range` が利用できます。

YouTube 検索 API とは?

YouTube 検索 API は、YouTube の動画を構造化された結果として返す HTTP インターフェースです。Google は YouTube Data API を提供していますが、Cloud プロジェクトと API キーが必要で、検索呼び出しは単純な読み取りよりはるかに高い割合で日次クォータを消費するため、緻密な管理が求められます。Search1API は YouTube を Search endpoint の検索サービスの 1 つとして提供し、動画タイトル、視聴リンク、チャンネル・再生時間・説明を含むスニペットを、他のエンジンと同じ JSON 形式で返します。ユーザーにチュートリアルを提示したい、あるトピックに動画があるか確認したいというエージェントの用途では、通常これで十分です。

実装の流れ

典型的な流れ

YouTube を HTTP で検索し、チャンネル名と再生時間を各結果とともに取得します。Google Cloud プロジェクトや日次クォータの管理は不要です。

1

`search_service` に `youtube` を指定してクエリを送信します。

2

`snippet` をパイプで分割して、チャンネル、再生時間、説明を切り分けます。

3

一覧ではなく視聴ページが必要な場合は `crawl_results` を指定します。

1 回のリクエストでチャンネルと再生時間付きの動画を取得

1 回の呼び出しで YouTube を検索し、各結果にチャンネルと再生時間を付けて返します。多くの場合、いずれも開かずに候補を順位付けできます。

bash
curl -X POST https://api.search1api.com/search \
-H "Authorization: Bearer $SEARCH1API_KEY" \
-H "Content-Type: application/json" \
-d '{
"query": "rust tutorial",
"search_service": "youtube",
"max_results": 5
}'

主な用途

チュートリアルを推薦する際に長さで適合を判断するアシスタント。

ブランドやトピックの動画露出を追うメディア監視。

ある題材がどう教えられているかを調べるコンテンツ調査。

トピッククエリからプレイリストを組み立てるキュレーションツール。

FAQ

YouTube Data API のキーは必要ですか?

不要です。認証は Search1API のキーで行います。リクエストは https://api.search1api.com/search への POST で、`search_service` に `youtube` を指定します。

YouTube Data API と何が違いますか?

YouTube Data API は Google Cloud プロジェクトを必要とし、検索呼び出しが日次クォータを大きく消費します。Search1API は自身の残高から検索 1 回につき 1 クレジットを課金します。一方で、返るのは検索結果であり、字幕、アナリティクス、チャンネル管理といった Data API の全機能はカバーしません。

動画の再生時間は含まれますか?

含まれます。再生時間はスニペットの 2 番目のフィールドで、`M:SS` または `H:MM:SS` 形式のため変換なしで読めます。

YouTube 検索の料金はいくらですか?

検索 1 回あたり 1 クレジット、`crawl_results` で取得に成功したページごとに 1 クレジットが加算されます。チャージの基本レート($1 = 1,000 クレジット)では 1,000 回の検索が $1 です。登録時にクレジットカードなしで 100 クレジットが付与されます。

字幕は取得できますか?

検索結果からは取得できません。`crawl_results` を指定すると視聴ページを取得し、ページ本文を Markdown で返しますが、字幕の抽出はこのエンドポイントの対象外です。

他の動画ソースにも対応していますか?

同じ Search endpoint が中国語動画の `bilibili` に対応します。`reddit`、`x`、`github`、一般 Web エンジン、その他の中国語エンジンと合わせ、1 つの契約で計 17 エンジンを利用できます。