Twitter API で取得できるデータとは?
API が返せる公開 X(Twitter)データは15種類あります。表示回数やいいね数付きの投稿から、プロフィール、フォロワー、2006年までさかのぼる検索、リスト、スペース、トレンドまでです。ただし、他人のいいね、ブックマーク、DM を返す API はありません。
結論: 公式 X API は、開発者アカウントと OAuth の設定をしたうえで、そのほとんどを読み取れます。料金は投稿1,000件あたり$5.00、プロフィールまたはフォロワー1,000件あたり$10.00です。15種類すべてをキー1つで読み取るなら、Twitter(X)API 兼スクレイピングツールである Sorsa API をお使いください。45のエンドポイントがあり、フォロワーは1,000件あたり$0.007から、100回分の無料リクエストから始められます。
- エンドポイント
GET /followers- 1ページの件数
- フォロワー200件
- 料金
- 1,000件あたり$0.007から
#API が返す公開 X データ15種類
公開 X データとは、X が誰にでも表示しているデータです。非公開ではないアカウントの投稿、プロフィール、フォロワー一覧、その横に並ぶ数値です。API はこれを JSON で返し、15種類に分けられます。
- プロフィール: 名前、自己紹介、所在地、登録日、フォロワー数・フォロー数・投稿数、アバター、認証バッジ。
- このアカウントについて: X がアカウントに紐づける国、ユーザー名の変更回数と時期、X Premium の状態。
- フォロワーとフォロー中: どちらの側も全件のリストで、各アカウントにプロフィールが付く。
- 投稿: 本文、言語、日時、6種類のエンゲージメント数(いいね、リポスト、リプライ、引用、表示回数、ブックマーク)、リンク、メディア、投稿者。
- タイムライン: 1つのアカウントの投稿、リプライ、リポスト。
- エンゲージメントの一覧: 投稿へのリプライ、引用投稿、リポストしたアカウント。
- 投稿検索: X の高度な検索を、検索コマンドを含めて指定でき、2006年までのアーカイブ全体が対象。
- メンション: アカウントをタグ付けした投稿。いいね数、リプライ数、リポスト数、日付で絞り込める。
- アカウント検索: 名前、ハンドル、自己紹介がキーワードに一致するアカウント。
- リスト: リストのメンバーとフォロワー、メンバーの投稿をまとめた1本のフィード。
- コミュニティ: コミュニティの詳細、メンバー、投稿と、その内部の検索。
- スペース: ライブ音声ルームのタイトル、状態、ホスト、スピーカー、リスナー、リスナー数。
- トレンド: 国や都市で話題になっているもの。
- X 記事(Articles): 長文投稿の全文、カバー画像、指標。
- チェック: あるアカウントが別のアカウントをフォローしているか、投稿をリポストしたかなど、はい/いいえの答え。
非公開のデータは、このリストに含まれません。2024年6月以降、X は投稿にいいねした人を投稿者本人にだけ、アカウントのいいねをそのアカウント本人にだけ表示しており、他人のいいね、ブックマーク、メッセージを返す API はありません。取得できないものの一覧は、このページの後半にあります。
データへの経路にも違いがあります。公式 X API は15種類のほとんどをカバーしますが、「このアカウントについて」のデータのフィールドはなく、返した項目ごとに課金されます。すべての料金は、ガイド X API 料金にまとめました。
#Sorsa API で各データを取得する
プロジェクトを X データに対応づけるなら、Sorsa API を使います。15種類すべてを、API キー1つ、45のエンドポイントで返し、全プランで毎秒20リクエスト、料金はフォロワー1,000件あたり$0.007から、ツイート1,000件あたり$0.014からです。X の開発者アカウントもアプリも OAuth も不要です。詳しくは、ガイド 開発者アカウントなしで Twitter API を使うで説明しています。
どのリクエストも料金は同じなので、表には、1リクエストが運ぶ項目数と1,000件あたりの費用を、同じデータに対する公式 X API の従量課金の料金(新しいタブで開きます)と並べて示しました。45のエンドポイントのパラメータは、Sorsa API エンドポイントのページに掲載しています。
| データ | Sorsa API のエンドポイント | 1リクエストあたり | Sorsa API、1,000件あたり | 公式 X API、1,000件あたり |
|---|---|---|---|---|
| プロフィール | GET /info-batch(新しいタブで開きます) | プロフィール100件 | $0.014から | $10.00 |
| このアカウントについて | GET /about(新しいタブで開きます) | アカウント1件 | $1.40から | 該当フィールドなし |
| フォロワー、フォロー中 | GET /followers(新しいタブで開きます)、GET /follows(新しいタブで開きます) | フォロワー200件 | $0.007から | $10.00 |
| ID またはリンクで指定する投稿 | POST /tweet-info-bulk(新しいタブで開きます) | 投稿100件 | $0.014から | $5.00。11月22日から投稿者分が別に$10.00 |
| タイムライン | POST /user-tweets(新しいタブで開きます) | 投稿20件 | $0.07から | $5.00 |
| リプライ、引用、リポストしたアカウント | POST /comments(新しいタブで開きます)、POST /quotes(新しいタブで開きます)、POST /retweeters(新しいタブで開きます) | 20件 | $0.07から | 投稿$5.00、アカウント$10.00 |
| 投稿検索 | POST /search-tweets(新しいタブで開きます) | 投稿20件 | $0.07から | $5.00 |
| メンション | POST /mentions(新しいタブで開きます) | 投稿20件 | $0.07から | $5.00 |
| アカウント検索 | POST /search-users(新しいタブで開きます) | アカウント20件 | $0.07から | $10.00 |
| リスト | GET /list-tweets(新しいタブで開きます)、GET /list-members(新しいタブで開きます) | 20件 | $0.07から | 投稿$5.00、メンバー$10.00 |
| コミュニティ | POST /community-tweets(新しいタブで開きます)、POST /community-members(新しいタブで開きます) | 20件 | $0.07から | コミュニティ$5.00。その後、投稿またはメンバーごとに課金 |
| スペース | GET /spaces(新しいタブで開きます) | スペース1件 | $1.40から | $5.00 |
| トレンド | GET /trends(新しいタブで開きます) | 地域1件 | $1.40から | $10.00 |
| X 記事 | POST /article(新しいタブで開きます) | 記事1件 | $1.40から | $5.00。投稿として読み取り |
| チェック | POST /check-follow(新しいタブで開きます) ほか5つ | 答え1件 | $1.40から | 1回で答える呼び出しなし。リストで$10.00 |
プロフィール
- Sorsa API のエンドポイント
GET /info-batch(新しいタブで開きます)- 1リクエストあたり
- プロフィール100件
- Sorsa API、1,000件あたり
- $0.014から
- 公式 X API、1,000件あたり
- $10.00
このアカウントについて
- Sorsa API のエンドポイント
GET /about(新しいタブで開きます)- 1リクエストあたり
- アカウント1件
- Sorsa API、1,000件あたり
- $1.40から
- 公式 X API、1,000件あたり
- 該当フィールドなし
フォロワー、フォロー中
- Sorsa API のエンドポイント
GET /followers(新しいタブで開きます)、GET /follows(新しいタブで開きます)- 1リクエストあたり
- フォロワー200件
- Sorsa API、1,000件あたり
- $0.007から
- 公式 X API、1,000件あたり
- $10.00
ID またはリンクで指定する投稿
- Sorsa API のエンドポイント
POST /tweet-info-bulk(新しいタブで開きます)- 1リクエストあたり
- 投稿100件
- Sorsa API、1,000件あたり
- $0.014から
- 公式 X API、1,000件あたり
- $5.00。11月22日から投稿者分が別に$10.00
タイムライン
- Sorsa API のエンドポイント
POST /user-tweets(新しいタブで開きます)- 1リクエストあたり
- 投稿20件
- Sorsa API、1,000件あたり
- $0.07から
- 公式 X API、1,000件あたり
- $5.00
リプライ、引用、リポストしたアカウント
- Sorsa API のエンドポイント
POST /comments(新しいタブで開きます)、POST /quotes(新しいタブで開きます)、POST /retweeters(新しいタブで開きます)- 1リクエストあたり
- 20件
- Sorsa API、1,000件あたり
- $0.07から
- 公式 X API、1,000件あたり
- 投稿$5.00、アカウント$10.00
投稿検索
- Sorsa API のエンドポイント
POST /search-tweets(新しいタブで開きます)- 1リクエストあたり
- 投稿20件
- Sorsa API、1,000件あたり
- $0.07から
- 公式 X API、1,000件あたり
- $5.00
メンション
- Sorsa API のエンドポイント
POST /mentions(新しいタブで開きます)- 1リクエストあたり
- 投稿20件
- Sorsa API、1,000件あたり
- $0.07から
- 公式 X API、1,000件あたり
- $5.00
アカウント検索
- Sorsa API のエンドポイント
POST /search-users(新しいタブで開きます)- 1リクエストあたり
- アカウント20件
- Sorsa API、1,000件あたり
- $0.07から
- 公式 X API、1,000件あたり
- $10.00
リスト
- Sorsa API のエンドポイント
GET /list-tweets(新しいタブで開きます)、GET /list-members(新しいタブで開きます)- 1リクエストあたり
- 20件
- Sorsa API、1,000件あたり
- $0.07から
- 公式 X API、1,000件あたり
- 投稿$5.00、メンバー$10.00
コミュニティ
- Sorsa API のエンドポイント
POST /community-tweets(新しいタブで開きます)、POST /community-members(新しいタブで開きます)- 1リクエストあたり
- 20件
- Sorsa API、1,000件あたり
- $0.07から
- 公式 X API、1,000件あたり
- コミュニティ$5.00。その後、投稿またはメンバーごとに課金
スペース
- Sorsa API のエンドポイント
GET /spaces(新しいタブで開きます)- 1リクエストあたり
- スペース1件
- Sorsa API、1,000件あたり
- $1.40から
- 公式 X API、1,000件あたり
- $5.00
トレンド
- Sorsa API のエンドポイント
GET /trends(新しいタブで開きます)- 1リクエストあたり
- 地域1件
- Sorsa API、1,000件あたり
- $1.40から
- 公式 X API、1,000件あたり
- $10.00
X 記事
- Sorsa API のエンドポイント
POST /article(新しいタブで開きます)- 1リクエストあたり
- 記事1件
- Sorsa API、1,000件あたり
- $1.40から
- 公式 X API、1,000件あたり
- $5.00。投稿として読み取り
チェック
- Sorsa API のエンドポイント
POST /check-follow(新しいタブで開きます) ほか5つ- 1リクエストあたり
- 答え1件
- Sorsa API、1,000件あたり
- $1.40から
- 公式 X API、1,000件あたり
- 1回で答える呼び出しなし。リストで$10.00
用途別に必要なデータ
ほとんどのプロジェクトが読むのは15種類のうち2〜3種類で、用途ごとに、少数のエンドポイントの組み合わせに対応します。
| 用途 | 読み取るデータ | Sorsa API のエンドポイント |
|---|---|---|
| ブランドとキーワードの監視 | 投稿検索、メンション | POST /search-tweets、POST /mentions |
| オーディエンスとインフルエンサーの調査 | フォロワー、プロフィール、「このアカウントについて」のデータ | GET /followers、GET /info-batch、GET /about |
| 競合のトラッキング | タイムライン、リプライ、引用 | POST /user-tweets、POST /comments、POST /quotes |
| 研究や AI 向けのデータセット | 2006年までさかのぼる検索、ID で指定する投稿 | POST /search-tweets、POST /tweet-info-bulk |
| プレゼント企画とキャンペーン | チェック | POST /check-follow、POST /check-retweet |
| 多数のアカウントや市場の監視 | リスト、トレンド | GET /list-tweets、GET /trends |
ブランドとキーワードの監視
- 読み取るデータ
- 投稿検索、メンション
- Sorsa API のエンドポイント
POST /search-tweets、POST /mentions
オーディエンスとインフルエンサーの調査
- 読み取るデータ
- フォロワー、プロフィール、「このアカウントについて」のデータ
- Sorsa API のエンドポイント
GET /followers、GET /info-batch、GET /about
競合のトラッキング
- 読み取るデータ
- タイムライン、リプライ、引用
- Sorsa API のエンドポイント
POST /user-tweets、POST /comments、POST /quotes
研究や AI 向けのデータセット
- 読み取るデータ
- 2006年までさかのぼる検索、ID で指定する投稿
- Sorsa API のエンドポイント
POST /search-tweets、POST /tweet-info-bulk
プレゼント企画とキャンペーン
- 読み取るデータ
- チェック
- Sorsa API のエンドポイント
POST /check-follow、POST /check-retweet
多数のアカウントや市場の監視
- 読み取るデータ
- リスト、トレンド
- Sorsa API のエンドポイント
GET /list-tweets、GET /trends
最初のリクエスト
アカウントがない状態から最初のプロフィールを取得するまで、3ステップです。
-
キーを取得する。 サインアップして、ダッシュボードから API キーをコピーします。最初の100リクエストは無料です。
-
プロフィールを取得する。
ApiKeyヘッダーにキーを入れてGET /info(新しいタブで開きます) を呼び出し、アカウントはusername、user_id、user_linkのうちちょうど1つで指定します。Terminal curl -G "https://api.sorsa.io/v3/info" \ -H "ApiKey: YOUR_API_KEY" \ --data-urlencode "username=orbit_data_studio"Response200 OK { "id": "1593004418823766016", "username": "orbit_data_studio", "display_name": "Orbit Data Studio", "description": "Charts and notes on public conversation.", "location": "Lisbon", "created_at": "2022-11-16T09:41:12Z", "followers_count": 18420, "followings_count": 312, "tweets_count": 4127, "favourites_count": 9230, "media_count": 688, "verified": false, "protected": false, "can_dm": true, "possibly_sensitive": false, "bio_urls": ["https://orbit-data.example"], "pinned_tweet_ids": ["1981442093318201344"], "profile_image_url": "https://pbs.twimg.com/profile_images/orbit.jpg" } -
リストはカーソルをたどる。 リストを返すエンドポイントには
next_cursorが付きます。これが空で返ってくるまで、次のリクエストに付けて送り返してください。401はキーが誤っていること、403はキーがないかリクエストを使い切ったこと、429は1秒間に20リクエストを超えたことを示します。
#投稿に含まれるもの:22個のフィールドと投稿者
Sorsa API の投稿には22個のフィールドがあり、その中に投稿者のプロフィール全体が入っています。POST /tweet-info(新しいタブで開きます) はリンクか ID で指定した投稿を1件、POST /tweet-info-bulk は最大100件を1リクエストで返します。リプライ、引用、リポストには、元の投稿も投稿者付きで含まれます。
公式 X API は、もっと少ないところから始まります。投稿の取得で既定で返るのは id、text、edit_history_tweet_ids の3つで、フィールドのガイド(新しいタブで開きます)にそう書かれています。残りは tweet.fields で指定します。投稿者は expansion で取得し、X の告知(新しいタブで開きます)によると、2026年11月22日からユーザー読み取り$0.010として課金されます。
次の表は、すべてのフィールドと、同じものを指す公式 X API v2 のフィールド名です。どちらの API 向けに書いたコードも、これで対応づけられます。
| Sorsa API のフィールド | 内容 | 公式 X API v2 のフィールド |
|---|---|---|
id、created_at、lang | 文字列の投稿 ID、ISO 8601の日時、言語コード | id、created_at、lang |
full_text | 長文投稿を含む本文全体 | text。長文投稿は note_tweet.text |
likes_count、retweet_count、reply_count、quote_count、bookmark_count | リクエスト時点のエンゲージメント数 | public_metrics.like_count、retweet_count、reply_count、quote_count、bookmark_count |
view_count | 表示回数(X ではインプレッション) | public_metrics.impression_count |
conversation_id_str | スレッドの最初の投稿の ID | conversation_id |
is_reply、in_reply_to_tweet_id、in_reply_to_username | リプライかどうか、どの投稿の、誰に対してか | referenced_tweets、in_reply_to_user_id |
is_quote_status、quoted_status、retweeted_status | 引用された投稿、またはリポストの元の投稿(全体) | referenced_tweets と expansion |
entities | 写真、動画、リンクの種類、リンク先、プレビュー | entities、attachments とメディアの expansion |
user | 投稿者のプロフィール全体 | author_id と expansion |
is_replies_limited、paid_partnership、made_with_ai | リプライの制限、X の有償パートナーシップと AI 生成のラベル | reply_settings、paid_partnership |
id、created_at、lang- 内容
- 文字列の投稿 ID、ISO 8601の日時、言語コード
- 公式 X API v2 のフィールド
id、created_at、lang
full_text- 内容
- 長文投稿を含む本文全体
- 公式 X API v2 のフィールド
text。長文投稿はnote_tweet.text
likes_count、retweet_count、reply_count、quote_count、bookmark_count- 内容
- リクエスト時点のエンゲージメント数
- 公式 X API v2 のフィールド
public_metrics.like_count、retweet_count、reply_count、quote_count、bookmark_count
view_count- 内容
- 表示回数(X ではインプレッション)
- 公式 X API v2 のフィールド
public_metrics.impression_count
conversation_id_str- 内容
- スレッドの最初の投稿の ID
- 公式 X API v2 のフィールド
conversation_id
is_reply、in_reply_to_tweet_id、in_reply_to_username- 内容
- リプライかどうか、どの投稿の、誰に対してか
- 公式 X API v2 のフィールド
referenced_tweets、in_reply_to_user_id
is_quote_status、quoted_status、retweeted_status- 内容
- 引用された投稿、またはリポストの元の投稿(全体)
- 公式 X API v2 のフィールド
referenced_tweetsと expansion
entities- 内容
- 写真、動画、リンクの種類、リンク先、プレビュー
- 公式 X API v2 のフィールド
entities、attachmentsとメディアの expansion
user- 内容
- 投稿者のプロフィール全体
- 公式 X API v2 のフィールド
author_idと expansion
is_replies_limited、paid_partnership、made_with_ai- 内容
- リプライの制限、X の有償パートナーシップと AI 生成のラベル
- 公式 X API v2 のフィールド
reply_settings、paid_partnership
100件の投稿を一度に読み取るには、ID かリンクをバッチ用エンドポイントに送ります。
import requests
URL = "https://api.sorsa.io/v3/tweet-info-bulk"
HEADERS = {"ApiKey": "YOUR_API_KEY"}
ids = ["1985274530112847105", "1985190021774452736"] # up to 100
r = requests.post(URL, headers=HEADERS, json={"tweet_links": ids})
r.raise_for_status()
for t in r.json()["tweets"]:
print(t["id"], t["view_count"], t["likes_count"], t["user"]["username"])
知っておきたいこと
すべての数値は、その時点のスナップショットです。
likes_countやview_countなどはリクエスト時点の値で、その後も増え続けます。投稿どうしを比較する前に、読み取りごとにその時刻を保存してください。
#プロフィールに含まれるもの、そして「このアカウントについて」のデータ
Sorsa API のプロフィールは19個のフィールドで、1アカウントなら GET /info、最大100件なら GET /info-batch で取得します。GET /about は、X がアカウントの「このアカウントについて」ページにしか表示しない7つのフィールドを追加します。
| Sorsa API のフィールド | 内容 | 公式 X API v2 のフィールド |
|---|---|---|
id | 変わらないアカウント ID(文字列) | id |
username、display_name | @なしのハンドルと、表示名 | username、name |
description、bio_urls、location、created_at | 自己紹介、その中のリンク、入力どおりの所在地、登録日 | description、entities、location、created_at |
followers_count、followings_count、tweets_count、favourites_count、media_count | フォロワー数、フォロー数、投稿数、いいねした投稿数、メディア投稿数 | public_metrics の各数値 |
verified、protected、possibly_sensitive、can_dm | バッジ、非公開設定、センシティブのフラグ、DM の受付 | verified、protected、receives_your_dm |
pinned_tweet_ids、profile_image_url、profile_background_image_url | 固定投稿、アバター、バナー | pinned_tweet_id、profile_image_url、profile_banner_url |
id- 内容
- 変わらないアカウント ID(文字列)
- 公式 X API v2 のフィールド
id
username、display_name- 内容
- @なしのハンドルと、表示名
- 公式 X API v2 のフィールド
username、name
description、bio_urls、location、created_at- 内容
- 自己紹介、その中のリンク、入力どおりの所在地、登録日
- 公式 X API v2 のフィールド
description、entities、location、created_at
followers_count、followings_count、tweets_count、favourites_count、media_count- 内容
- フォロワー数、フォロー数、投稿数、いいねした投稿数、メディア投稿数
- 公式 X API v2 のフィールド
public_metricsの各数値
verified、protected、possibly_sensitive、can_dm- 内容
- バッジ、非公開設定、センシティブのフラグ、DM の受付
- 公式 X API v2 のフィールド
verified、protected、receives_your_dm
pinned_tweet_ids、profile_image_url、profile_background_image_url- 内容
- 固定投稿、アバター、バナー
- 公式 X API v2 のフィールド
pinned_tweet_id、profile_image_url、profile_banner_url
「このアカウントについて」のデータには、公式 X API に対応するものがありません。データ辞書(新しいタブで開きます)には、ユーザーの国やユーザー名の履歴が載っていません。GET /about が返すのは次のとおりです。
country:X がアカウントに紐づける国username_change_countとlast_username_change_at:ハンドルを変更した回数と、最後に変更した日時is_blue_verifiedとpremium_start_at:X Premium のチェックマークと、いつからかsourceとaffiliate_username:X に表示されるアカウントの接続元と、所属バッジの元のアカウント
1アカウントなら、無料の Twitter アカウント所在地確認ツールで、ブラウザ上で同じ国を確認できます。
知っておきたいこと
ID は文字列のまま保持してください。投稿 ID とアカウント ID は64ビットの数値で、JavaScript が数値として解析すると丸められます。保存するのは、持ち主がいつでも変更できる
usernameではなく、アカウントのidです。
#フォロワー、エンゲージメントの一覧、はい/いいえのチェック
アカウントのリストは、プロフィール全体のページとして返ります。GET /followers、GET /follows、GET /verified-followers(新しいタブで開きます) は1リクエスト最大200件を返すので、100万フォロワーなら5Kリクエスト、$7からです。カーソルのループと CSV は、ガイド Twitter フォロワーをエクスポートにあります。
1つの投稿をめぐる公開エンゲージメントは、3つのエンドポイントが1ページ20件ずつ返します。
POST /comments:投稿へのリプライ。関連度、新しさ、いいね数で並べ替えPOST /quotes:その投稿を引用した投稿。投稿者付きPOST /retweeters:リポストしたアカウント。新しい順で、プロフィール全体付き
アカウント自身の発信は、type に posts、replies、retweets を指定した POST /user-tweets で取得します。タイムライン全体を、公式 X API のタイムライン用エンドポイントが止まる最新3,200件を超えてさかのぼれます。ガイド ユーザーの全ツイートをダウンロードで、ファイルにする方法を説明しています。
チェックは1リクエストにつき1つの問いに答え、料金は1件あたり$0.0014からです。
POST /check-follow:あるアカウントが別のアカウントをフォローしているかPOST /check-retweet(新しいタブで開きます):アカウントが投稿をリポストしたか。1リクエストでリポスト100件を調べるPOST /check-quoted(新しいタブで開きます):quoted、retweet、not_foundのいずれかGET /check-comment(新しいタブで開きます):アカウントがリプライしたか、そのリプライ自体POST /check-community-member(新しいタブで開きます):アカウントがコミュニティに参加しているかGET /check-shadowban(新しいタブで開きます):検索除外と検索サジェスト除外。clean、banned、unknownのいずれかで、1時間キャッシュされる
プレゼント企画やキャンペーンでの実行方法は、Twitter エンゲージメント確認 APIのガイドで紹介しています。
#検索、リスト、コミュニティ、スペース、トレンド、記事
POST /search-tweets は、X の高度な検索を受け付けます。from:、to:、since:、until:、完全一致フレーズ、ハッシュタグを使え、popular か latest で並べ替えられ、2006年までのアーカイブ全体が対象です。日付範囲での取得は、過去の Twitter データのガイドで説明しています。
POST /mentions は、アカウントをタグ付けした投稿を探し、min_likes、min_replies、min_retweets、YYYY-MM-DD 形式の since_date と until_date で絞り込みます。POST /search-users は、名前、ハンドル、自己紹介に含まれる語でアカウントを探します。
リストは多数のアカウントを一度に見張る手段です。1回の GET /list-tweets リクエストで、全メンバーの最新の投稿が返り、1つのリストには最大5,000アカウントを入れられます。GET /list-members と GET /list-followers(新しいタブで開きます) は、そのアカウントをプロフィールとして返します。
コミュニティには5つのエンドポイントがあります。POST /community-info(新しいタブで開きます)(名前、説明、メンバー数、バナー、作成者、Unix タイムスタンプの作成時刻)、POST /community-members、POST /community-tweets、POST /community-search-tweets(新しいタブで開きます)(人気順か新着順)、そして1リクエスト最大10件の POST /search-communities(新しいタブで開きます) です。
GET /spaces は、スペースの ID かリンクを受け取り、タイトル、状態、開始予定、作成者、管理者・スピーカー・リスナーに分けた参加者、リプレイやクリップなどの設定、そしてライブのリスナー数、参加者数、リプレイの再生数といった統計を返します。時刻は Unix 時間の数値で返りますが、API の他の部分は ISO 8601の日時を使います。
GET /trends は、国や都市の Where On Earth ID である WOEID を受け取り、各トレンドの名前、検索クエリ、リンクを返します。POST /article は X 記事を返し、全文、プレビュー、カバー画像、公開日、views_count に表示回数を含む各数値、投稿者のプロフィールが含まれます。
#どの Twitter API も返さないデータ
X が非公開にしているデータを返す API はなく、公式 X API も例外ではありません。2024年6月11日、X は、いいねのエンドポイントが返すのは、認証したアカウント自身の投稿についてのいいねといいねしたユーザーだけで、ほかの投稿については空の結果になると告知しました(新しいタブで開きます)。
次の表の各行には、代わりに読み取れる公開シグナルがあります。
| データ | どの API も返さない理由 | 代わりに読み取れるもの |
|---|---|---|
| 投稿にいいねした人 | 2024年6月から非公開。投稿者本人だけが見られる | likes_count、公開されているリプライ、引用、リポストしたアカウント |
| アカウントのいいね | 2024年6月からそのアカウント本人にだけ非公開 | favourites_count(いいねした投稿の数) |
| ブックマーク | 保存したアカウント本人にだけ非公開 | 各投稿の bookmark_count |
| ダイレクトメッセージ | やり取りする当事者だけに非公開 | can_dm(アカウントが受け付けているか) |
| 非公開アカウントの投稿 | 承認済みのフォロワーだけが閲覧可能 | プロフィール(protected: true) |
| 削除された投稿 | 削除されると X から消える | 削除前に自分で保存したコピーのみ |
| 投稿やプロフィールを見た人 | X が表示するのは数値だけ | view_count |
| 過去のフォロワー一覧、フォロー日 | X は、誰がいつフォローしたかの公開履歴を持たない | 一覧を定期的にエクスポートし、id で比較する |
| メールアドレス、電話番号 | X では一切公開されない | なし |
投稿にいいねした人
- どの API も返さない理由
- 2024年6月から非公開。投稿者本人だけが見られる
- 代わりに読み取れるもの
likes_count、公開されているリプライ、引用、リポストしたアカウント
アカウントのいいね
- どの API も返さない理由
- 2024年6月からそのアカウント本人にだけ非公開
- 代わりに読み取れるもの
favourites_count(いいねした投稿の数)
ブックマーク
- どの API も返さない理由
- 保存したアカウント本人にだけ非公開
- 代わりに読み取れるもの
- 各投稿の
bookmark_count
ダイレクトメッセージ
- どの API も返さない理由
- やり取りする当事者だけに非公開
- 代わりに読み取れるもの
can_dm(アカウントが受け付けているか)
非公開アカウントの投稿
- どの API も返さない理由
- 承認済みのフォロワーだけが閲覧可能
- 代わりに読み取れるもの
- プロフィール(
protected: true)
削除された投稿
- どの API も返さない理由
- 削除されると X から消える
- 代わりに読み取れるもの
- 削除前に自分で保存したコピーのみ
投稿やプロフィールを見た人
- どの API も返さない理由
- X が表示するのは数値だけ
- 代わりに読み取れるもの
view_count
過去のフォロワー一覧、フォロー日
- どの API も返さない理由
- X は、誰がいつフォローしたかの公開履歴を持たない
- 代わりに読み取れるもの
- 一覧を定期的にエクスポートし、
idで比較する
メールアドレス、電話番号
- どの API も返さない理由
- X では一切公開されない
- 代わりに読み取れるもの
- なし
公式 X API でさえ、いいね、ブックマーク、メッセージを読み取れるのは、OAuth でアプリを承認したアカウント自身のものだけで、他人のものは読み取れません。
Sorsa API が設計上、対応していないもの
Sorsa API は読み取り専用で、書き込みはしません。投稿、いいね、フォロー、DM は対象外です。X のログイン情報を求めることもないので、アカウントが危険にさらされることはありません。投稿もしたい場合は、公式 X API と組み合わせてください。リクエスト方式で、ストリームや Webhook はありません。新しい投稿は、POST /search-tweets か GET /list-tweets をポーリングして取得します。全プランで毎秒20リクエストです。
#データの種類ごとの1,000件あたりの費用
Sorsa API は、何を返しても1リクエストとして課金するので、ページが大きいほど1,000件あたりの料金は下がります。フォロワー1,000件あたり$0.007から(1ページ200件)、ID で指定する投稿やプロフィール1,000件あたり$0.014から(1リクエスト100件)、検索結果1,000件あたり$0.07からです(1ページ約20件)。公式 X API は項目ごとに課金します。投稿1,000件あたり$5.00、プロフィールまたはフォロワー1,000件あたり$10.00で、11月22日からは各投稿の投稿者に$0.010が加わります。
無料の100リクエストで、最初の10K投稿をカード不要でカバーできます。
グレーは現在docs.x.comに載っている公式X APIの料金、青はリクエスト単価が最も低い場合のSorsa APIです。
失敗したリクエストに課金されることはありません。公式 X API は月300万件の投稿読み取りで止まり、それを超えると X が販売するのは Enterprise 契約だけです。新規アカウントに付く100回分の無料リクエストは、最大1万件のツイートか2万件のフォロワーに相当します。
#15種類すべてを、キー1つで読み取る
API が返すのは、15種類の公開 X データで、非公開のデータは1つもありません。読み取るなら Sorsa API をお使いください。キー1つ、45エンドポイント、ツイートは1,000件あたり$0.014から、フォロワーは$0.007からで、100回分の無料リクエストから始められます。カードは不要です。
#よくある質問
API で Twitter のデータはどこまでさかのぼれますか?
公開投稿は、Twitter が始まった2006年3月までさかのぼれます。Sorsa API の POST /search-tweets は、X の検索コマンドでそのアーカイブ全体に届き、since: と until: で任意の期間を取得できます。料金は結果1,000件あたり$0.07からです。アカウント自身のタイムラインは POST /user-tweets でさかのぼれ、最新の3,200件を超えて取得できます。
Twitter API で、誰がツイートにいいねしたかわかりますか?
他人の投稿についてはわかりません。2024年6月から X はいいねを非公開にしており、公式 X API が投稿にいいねした人を返すのは、その投稿を書いたアカウントに対してだけです。ほかの投稿では空のリストが返ります。いいね数はどの API でも返り、Sorsa API は、投稿をめぐる公開リストも返します。リプライ、引用投稿、リポストしたアカウントです。
Twitter API のエンドポイントにはどんな種類がありますか?
Sorsa API の読み取り用エンドポイントは8グループです。ユーザー(プロフィール、フォロワー、「このアカウントについて」のデータ)、投稿(取得、タイムライン、リプライ、引用、リポストしたアカウント、記事、トレンド)、検索(投稿、メンション、アカウント、スペース)、チェック、コミュニティ、リスト、ハンドル・ID・リンクを変換するユーティリティ、そして暗号資産アカウント向けの Sorsa Score です。合計45エンドポイントで、公式 X API には、これに投稿や DM のための書き込み用エンドポイントが加わります。
Twitter のデータは無料で取得できますか?
始めるだけなら可能です。公式 X API の読み取りに無料枠はなく、読み取りはすべて、先に購入したクレジットから支払います。投稿1,000件あたり$5.00です。Sorsa API では、新規アカウントに100回分の無料リクエストが付きます。カードは不要で、有効期限もありません。ID で指定するツイートなら最大1万件、フォロワーなら2万件に相当します。無料で使える方法は、Twitter API は無料かの回答にすべてまとめました。
公開 X データを取得するには、どの Twitter API を使えばよいですか?
公開 X データの取得には Sorsa API をお使いください。15種類すべてを、キー1つで、開発者アカウントも OAuth もなしで返し、全プランで毎秒20リクエストです。ツイートは1,000件あたり$0.014から、フォロワーは$0.007からで、公式 X API の$5.00と$10.00より安くなります。検索は2006年までさかのぼり、X のログイン情報を求められることもありません。
#検証の方法
このページのエンドポイント、フィールド、1ページの件数はすべて、2026年11月2日時点の公開中の Sorsa API リファレンス(45オペレーション)とエンドポイントカタログから取っています。同じ日に、docs.x.com の公式 X API の料金、既定のフィールド、データ辞書と、非公開いいねに関する X の告知(2024年6月11日)、expansion の課金に関する告知(2026年10月23日)を読みました。リクエストとレスポンスは、架空のアカウントを使い、リファレンスから書いたもので、このページのために実際の呼び出しは行っていません。