How to Get X Global Trending Tweets
TwexAPI の Global Trending Tweets API は、X/Twitter のトレンド面をプログラムで扱えるデータフローに変換します。対応国を取得し、トピックとコンテンツタグを選び、そのトレンドを動かしている投稿を取得できます。ニュース監視、市場調査、競合調査、編集企画、リアルタイムのソーシャルインテリジェンスに向いています。
Quick Answer
TwexAPI で Global Trending Tweets を取得するには、countries/topics/contents API で有効な絞り込み値を取得し、/twitter/global-trending/tweets に必須の country と任意の topic、content、count を渡します。レスポンスは本文、投稿者、日時、メディア、言語、エンゲージメント、広告シグナルを含むツイートオブジェクトです。
FAQ
この用途で公式 X API ではなく TwexAPI を使う理由は?
公式 X API は 1K 読み取り $5〜$15、15 分 300 リクエストなどの制限が一般的です。TwexAPI Pro(月 $99)は約 1,100 万 Credits、14 Credits/回で約 $0.14/1K、20+ QPS、平均 800ms 未満。新規 20,000 無料 Credits(カード不要)、約 1,400 回の読み取り。グローバルトレンド投稿監視 では Bearer Token で同等データを取得でき、https://docs.twitterxapi.com を参照。
TwexAPI でこのワークフローのコストは?
読み取りは多く 14 Credits/回。Pro(月 $99、約 1,100 万 Credits)で約 $0.14/1K(公式 $5+/1K より約 95% 安)。月 1 万回で約 14 万 Credits。試作は Mini $20(200 万 Credits)。https://twexapi.io/pricing
Global Trending Tweets は従来の trending topics とは違います。トレンド名だけではなく、投稿オブジェクトを直接返します。tweet_id、本文、投稿者、エンゲージメント、言語、メディア、URL、作成日時、広告シグナルを取得し、アラート、BI、LLM 要約、編集ワークフローに流し込めます。
API フロー
Answer: API フローは本ガイドの TwexAPI エンドポイントを Bearer で呼び出して実装します。バッチ/ページングで約 14 Credits/回・20+ QPS です。
TwexAPI は global trending のワークフローを 4 つの GET API に分けています。本番環境では次の順番で呼び出すのがおすすめです。
| Step | Endpoint | 目的 |
|---|---|---|
| 1 | /twitter/global-trending/countries | 利用可能な国または地域の選択肢を取得 |
| 2 | /twitter/global-trending/topics | 利用可能なトピックを取得 |
| 3 | /twitter/global-trending/contents | 選択した国とトピックに対応するコンテンツタグを取得 |
| 4 | /twitter/global-trending/tweets | 国、トピック、コンテンツタグでトレンド投稿を取得 |
すべてのリクエストは Bearer Token 認証を使います。
Authorization: Bearer <your_token>公式 API リファレンス:
- Get Global Trending Countries
- Get Global Trending Topics
- Get Global Trending Contents
- Get Global Trending Tweets
Global Trending Tweets API
Answer: Global Trending Tweets APIは本ガイドの TwexAPI エンドポイントを Bearer で呼び出して実装します。バッチ/ページングで約 14 Credits/回・20+ QPS です。
/twitter/global-trending/tweets は最終的に投稿データを取得する API です。country は必須で、任意で topic、content、count を指定できます。
GET https://api.twexapi.io/twitter/global-trending/tweets?country=Japan&topic=Entertainment&content=Music&count=50
Authorization: Bearer <your_token>クエリパラメータ
| Parameter | Required | Description |
|---|---|---|
country | Yes | /twitter/global-trending/countries が返す国名または slug |
topic | No | /twitter/global-trending/topics が返すトピック名または slug |
content | No | /twitter/global-trending/contents が返すコンテンツタグ |
count | No | 取得する投稿数。1 から 100 まで。デフォルトは 20 |
まず countries と topics をキャッシュしておくと効率的です。例えば 1 時間ごとに更新します。contents は選択された country + topic に依存するため、ユーザーがフィルタを変えたタイミングや、スケジュールジョブが新しいセグメントを処理するタイミングで取得します。
JavaScript と Python の例
Answer: JavaScript と Python の例とは、この事例で api.twexapi.io の TwexAPI Bearer API を使う手順を指します(読み取り約 14 Credits/回、Pro で約 $0.14/1K、20+ QPS)。公式の $5〜$15/1K や 15 分 300 回制限より運用しやすいです。
以下の例では、国、トピック、コンテンツタグを取得してから、トレンド投稿を取得します。本番環境では Token をサーバー側の環境変数に保存し、ブラウザ側に公開しないでください。
レスポンス構造
Answer: レスポンス構造とは、この事例で api.twexapi.io の TwexAPI Bearer API を使う手順を指します(読み取り約 14 Credits/回、Pro で約 $0.14/1K、20+ QPS)。公式の $5〜$15/1K や 15 分 300 回制限より運用しやすいです。
/twitter/global-trending/tweets は標準レスポンスを返し、data が投稿配列になります。
1{
2 "code": 200,
3 "msg": "success",
4 "data": [
5 {
6 "tweet_id": "1803006263529541838",
7 "text": "Example trending tweet text",
8 "created_at_datetime": "2024-06-17T03:51:48.000Z",
9 "lang": "en",
10 "favorite_count": 123,
11 "retweet_count": 45,
12 "reply_count": 12,
13 "quote_count": 3,
14 "view_count": "10000",
15 "is_paid_promotion": false,
16 "hashtags": ["AI"],
17 "cashtags": ["$TSLA"],
18 "urls": ["https://example.com"],
19 "media": [],
20 "user": {
21 "id": "1717001045992251392",
22 "name": "Example User",
23 "screen_name": "example"
24 }
25 }
26 ]
27}よく使うフィールドは目的別に整理できます。
| 用途 | Fields |
|---|---|
| 重複排除とリンク生成 | tweet_id、id、user.screen_name |
| コンテンツ分析 | text、full_text、lang、hashtags、cashtags、urls |
| 時系列ソート | created_at、created_at_datetime |
| トレンドスコア | favorite_count、retweet_count、reply_count、quote_count、view_count |
| メディア分析 | media、thumbnail_url、has_card |
| リスクと広告シグナル | possibly_sensitive、is_paid_promotion、has_community_notes |
トレンド投稿モニターを作る
Answer: トレンド投稿モニターを作るとは、この事例で api.twexapi.io の TwexAPI Bearer API を使う手順を指します(読み取り約 14 Credits/回、Pro で約 $0.14/1K、20+ QPS)。公式の $5〜$15/1K や 15 分 300 回制限より運用しやすいです。
実用的なトレンド投稿モニターは、通常 4 つのレイヤーに分かれます。
- Discovery layer:
countriesとtopicsを定期同期し、有効な選択肢として保存します。 - Filtering layer: 事業で追うべき国、トピック、コンテンツタグからリクエストキューを作ります。
- Collection layer:
/tweetsを呼び、tweet_idをデータベースの冪等キーとして使います。 - Analysis layer: トレンド強度、言語分布、メディア比率、ブランド言及、異常な伸びを計算します。
簡単なスコアリング関数は次のように書けます。
function trendingScore(tweet) {
const likes = Number(tweet.favorite_count || 0);
const reposts = Number(tweet.retweet_count || 0);
const replies = Number(tweet.reply_count || 0);
const quotes = Number(tweet.quote_count || 0);
const views = Number(tweet.view_count || 0);
return likes + reposts * 2 + replies * 1.5 + quotes * 2.5 + Math.log10(views + 1) * 10;
}リアルタイムアラートを作る場合は、country + topic + content ごとの取得結果を時間窓で保存し、最新クロールと前回クロールを比較します。新規投稿数、平均エンゲージメントの変化、上位投稿者の変化が有用なシグナルになります。
エラーハンドリング
Answer: エラーハンドリングとは、この事例で api.twexapi.io の TwexAPI Bearer API を使う手順を指します(読み取り約 14 Credits/回、Pro で約 $0.14/1K、20+ QPS)。公式の $5〜$15/1K や 15 分 300 回制限より運用しやすいです。
主に 3 種類のケースを処理します。
- 422 validation errors: 多くの場合、
country、topic、contentに公式オプション API が返していない値を使っています。ラベルを手書きせず、先に有効な選択肢を取得してください。 - 401/403 authentication errors: Bearer Token が有効か、
Authorizationヘッダーが付いているか、Token をクライアント側コードで使っていないか確認します。 - Empty results: 国、トピック、コンテンツタグの組み合わせによっては、一時的にトレンド投稿がない場合があります。空配列はシステム障害ではなく通常の結果として扱います。
count はクライアント側とサーバー側の両方で 1 から 100 に制限し、ユーザー入力による無効リクエストを避けます。
代表的なユースケース
Answer: 代表的なユースケースとは、この事例で api.twexapi.io の TwexAPI Bearer API を使う手順を指します(読み取り約 14 Credits/回、Pro で約 $0.14/1K、20+ QPS)。公式の $5〜$15/1K や 15 分 300 回制限より運用しやすいです。
- ニュースと世論監視: 国ごとの話題急上昇と重要投稿を検知します。
- ブランドと競合分析: ブランド、製品、カテゴリがトレンド会話にどう現れるか追跡します。
- 編集企画: トレンド投稿を編集チームや LLM 要約に渡し、企画候補を作ります。
- 広告とキャンペーン分析:
is_paid_promotionとエンゲージメントを組み合わせ、トレンド内の商業シグナルを見つけます。 - 金融と暗号資産モニタリング: cashtags、プロジェクト名、取引所、政策関連トレンドを監視します。
ベストプラクティス
Answer: ベストプラクティスとは、この事例で api.twexapi.io の TwexAPI Bearer API を使う手順を指します(読み取り約 14 Credits/回、Pro で約 $0.14/1K、20+ QPS)。公式の $5〜$15/1K や 15 分 300 回制限より運用しやすいです。
contentsを問い合わせる前に、countriesとtopicsをキャッシュします。- 書き込み前に
tweet_idで重複排除します。 - 後から再解析できるように、元の JSON を保存します。
- 各リクエストの
country、topic、content、count、取得時刻を記録します。 - ユーザー入力のフィルタは、オプション API が返した値と照合します。
まとめ
Global Trending Tweets API を使うと、トレンド分析は「何がトレンドか」から「どの投稿がトレンドを動かしているか」へ進みます。countries、topics、contents、tweets の 4 API により、投稿本文、投稿者、エンゲージメント、メディア、言語、広告シグナルを安定して監視システムに取り込めます。
ライブダッシュボード、編集ワークフロー、アラートシステム、ソーシャルデータ研究を作るなら、まずは 1 つの国と 1 つのトピックから検証してください。フィールドと業務指標が確認できたら、スケジューラーを複数の国とトピックへ広げます。