Twitterの検索演算子 2026年版
Twitterの検索演算子は、from:、since:、min_faves:、filter:images のような短いコマンドで、x.comの検索ボックスに入力して、アカウント、日付、エンゲージメント、メディアで投稿を絞り込みます。1つのクエリに入るのは約22個までです。
要点: 演算子はコロンの後ろにスペースを入れず、OR は大文字で書き、日付は since:2026-10-01 until:2026-11-01 のように指定します。終了日は含まれず、どちらもUTCで数えます。公式X APIは、いくつかのフィルターの名前を変えています。x.comのクエリをそのままコードで実行するなら、Sorsa APIの POST /search-tweets が使えます。1,000ツイートあたり$0.07からで、100回分の無料リクエストで試せます。
- エンドポイント
POST /search-tweets- 1ページの件数
- 1リクエストあたり約20ツイート
- 料金
- 1,000件あたり$0.07から
#Twitterの検索演算子の仕組み
検索演算子とは、from: や lang: のようなコロン付きのキーワード、または引用符やマイナス記号などの記号で、Xの単純な検索をフィルターに変えるものです。x.comやアプリの検索ボックスに、通常の語句の隣に入力すると、Xはすべての条件を満たす投稿だけを返します。
入力ではなくクリックでクエリを組み立てるなら、無料のTwitter高度な検索ツールを開いてください。そこで設定したフィルターは、すべて演算子としてクエリに書き込まれ、最初の20件の一致投稿も表示されます。Xの公式フォーム(x.com/search-advanced)は、語句、アカウント、場所、日付に対応し、ログイン済みのアカウントでしか開けません(Xヘルプセンター(新しいタブで開きます))。
クエリが動くかどうかは、7つのルールで決まります。
- スペースはANDを意味します。
vector databaseは、両方の語を含む投稿を、順序を問わず見つけます。 ORは大文字でなければなりません。小文字の「or」は語として検索されます。- 前にマイナス記号を付けると、語、フレーズ、演算子を除外します。例:
-crypto - 二重引用符は完全一致のフレーズを表し、Xによるスペルの自動修正を止めます。
- 丸括弧は語をグループ化します。ANDはORより結び付きが強いので、
cats OR black dogsはcats OR (black dogs)と解釈されます。 - コロンの後ろにスペースは入れません。
from:nasaはアカウントで絞り込みますが、from: nasaでは演算子が壊れます。 - 演算子は大文字小文字を区別しません。1つのクエリに約22個を超えると、Xは結果を返さなくなります。
#絞り込みの対象別に見る、Twitterの検索演算子一覧
以下の表は、Xのウェブ検索が受け付ける演算子を、絞り込みの対象ごとにまとめたものです。Xがヘルプページで文書化しているのは基本的なものだけです。残りは長年の公開テストから得られたもので、GitHub上のIgor Brigadirのリファレンス(新しいタブで開きます)にまとめられています。あまり使われない演算子は、レポートの根拠にする前に、小さなクエリで試してください。
語句、フレーズ、論理
語句とフレーズが一致する対象は、投稿の本文、投稿者の名前とハンドル、短縮リンクの展開後のURLです。
| 演算子 | 見つかるもの | 例 |
|---|---|---|
word word | 両方の語を含む投稿 | nasa esa |
OR | どちらかの語を含む投稿 | rust OR golang |
"phrase" | 完全一致のフレーズ(スペル修正なし) | "state of the art" |
-word | その語を含まない投稿 | jaguar -car |
( ) | グループ化した語 | (rust OR go) compiler |
"a * b" | 間の任意の1語(引用符の中のみ) | "best * for startups" |
+word | 入力したとおりの語 | +radiooooo |
#tag | ハッシュタグ | #buildinpublic |
$TICKER | キャッシュタグ | $NVDA |
? | 質問している投稿 | crm ? |
word word- 見つかるもの
- 両方の語を含む投稿
- 例
nasa esa
OR- 見つかるもの
- どちらかの語を含む投稿
- 例
rust OR golang
"phrase"- 見つかるもの
- 完全一致のフレーズ(スペル修正なし)
- 例
"state of the art"
-word- 見つかるもの
- その語を含まない投稿
- 例
jaguar -car
( )- 見つかるもの
- グループ化した語
- 例
(rust OR go) compiler
"a * b"- 見つかるもの
- 間の任意の1語(引用符の中のみ)
- 例
"best * for startups"
+word- 見つかるもの
- 入力したとおりの語
- 例
+radiooooo
#tag- 見つかるもの
- ハッシュタグ
- 例
#buildinpublic
$TICKER- 見つかるもの
- キャッシュタグ
- 例
$NVDA
?- 見つかるもの
- 質問している投稿
- 例
crm ?
アカウント
アカウントの演算子は、メンションの演算子そのものを除いて、@を付けずにハンドルを指定します。
| 演算子 | 見つかるもの | 例 |
|---|---|---|
from: | アカウントが書いた投稿 | from:nasa |
to: | アカウント宛てのリプライ | to:nasa |
@handle | アカウントにメンションした投稿 | @nasa -from:nasa |
list: | 公開リストのメンバーの投稿(リストIDで指定) | list:1849212213712385091 |
filter:verified | 認証済みアカウントの投稿 | robotics filter:verified |
filter:blue_verified | X Premium加入者の投稿 | robotics filter:blue_verified |
filter:follows | フォロー中のアカウントの投稿(ログイン済みのx.comのみ) | pricing filter:follows |
filter:social | Xが選ぶ、より広いネットワークの投稿(トップタブ、ログイン時) | rust filter:social |
from:- 見つかるもの
- アカウントが書いた投稿
- 例
from:nasa
to:- 見つかるもの
- アカウント宛てのリプライ
- 例
to:nasa
@handle- 見つかるもの
- アカウントにメンションした投稿
- 例
@nasa -from:nasa
list:- 見つかるもの
- 公開リストのメンバーの投稿(リストIDで指定)
- 例
list:1849212213712385091
filter:verified- 見つかるもの
- 認証済みアカウントの投稿
- 例
robotics filter:verified
filter:blue_verified- 見つかるもの
- X Premium加入者の投稿
- 例
robotics filter:blue_verified
filter:follows- 見つかるもの
- フォロー中のアカウントの投稿(ログイン済みのx.comのみ)
- 例
pricing filter:follows
filter:social- 見つかるもの
- Xが選ぶ、より広いネットワークの投稿(トップタブ、ログイン時)
- 例
rust filter:social
エンゲージメント
エンゲージメントの演算子は、いいね、リポスト、リプライの下限を設定します。前にマイナス記号を付けると、下限が上限に変わります。約1,000を超える件数は概数なので、高いしきい値に近い結果は、わずかにずれることがあります。
| 演算子 | 見つかるもの | 例 |
|---|---|---|
min_faves: | N件以上のいいね | min_faves:100 |
min_retweets: | N件以上のリポスト | min_retweets:50 |
min_replies: | N件以上のリプライ | min_replies:20 |
-min_faves: | N件未満のいいね | -min_faves:10 |
-min_retweets: | N件未満のリポスト | -min_retweets:5 |
-min_replies: | N件未満のリプライ | -min_replies:3 |
filter:has_engagement | いいね、リプライ、リポストのいずれかがある投稿 | -filter:has_engagement |
min_faves:- 見つかるもの
- N件以上のいいね
- 例
min_faves:100
min_retweets:- 見つかるもの
- N件以上のリポスト
- 例
min_retweets:50
min_replies:- 見つかるもの
- N件以上のリプライ
- 例
min_replies:20
-min_faves:- 見つかるもの
- N件未満のいいね
- 例
-min_faves:10
-min_retweets:- 見つかるもの
- N件未満のリポスト
- 例
-min_retweets:5
-min_replies:- 見つかるもの
- N件未満のリプライ
- 例
-min_replies:3
filter:has_engagement- 見つかるもの
- いいね、リプライ、リポストのいずれかがある投稿
- 例
-filter:has_engagement
リプライ、リポスト、引用、スレッド
X検索は、ネイティブのリポストをデフォルトで除外し、リプライは含めます。そのため、最もよく使う種類のフィルターは -filter:replies と include:nativeretweets の2つです。
| 演算子 | 見つかるもの | 例 |
|---|---|---|
filter:replies | リプライのみ | from:nasa filter:replies |
-filter:replies | トップレベルの投稿のみ | -filter:replies from:nasa |
filter:self_threads | 投稿者が自分の投稿に付けたリプライ | from:nasa filter:self_threads |
conversation_id: | 1つのスレッドの全投稿 | conversation_id:2110405289047048193 |
filter:quote | 引用投稿 | "launch" filter:quote |
quoted_tweet_id: | 1つの投稿の引用 | quoted_tweet_id:2110405289047048193 |
quoted_user_id: | アカウントの投稿の引用(数値IDで指定) | quoted_user_id:1592041833471827968 |
include:nativeretweets | 投稿に加えてリポストも | from:nasa include:nativeretweets |
filter:nativeretweets | ボタンで行ったリポストのみ | from:nasa filter:nativeretweets |
filter:retweets | 昔の「RT」形式のリツイートと引用 | from:nasa filter:retweets |
filter:replies- 見つかるもの
- リプライのみ
- 例
from:nasa filter:replies
-filter:replies- 見つかるもの
- トップレベルの投稿のみ
- 例
-filter:replies from:nasa
filter:self_threads- 見つかるもの
- 投稿者が自分の投稿に付けたリプライ
- 例
from:nasa filter:self_threads
conversation_id:- 見つかるもの
- 1つのスレッドの全投稿
- 例
conversation_id:2110405289047048193
filter:quote- 見つかるもの
- 引用投稿
- 例
"launch" filter:quote
quoted_tweet_id:- 見つかるもの
- 1つの投稿の引用
- 例
quoted_tweet_id:2110405289047048193
quoted_user_id:- 見つかるもの
- アカウントの投稿の引用(数値IDで指定)
- 例
quoted_user_id:1592041833471827968
include:nativeretweets- 見つかるもの
- 投稿に加えてリポストも
- 例
from:nasa include:nativeretweets
filter:nativeretweets- 見つかるもの
- ボタンで行ったリポストのみ
- 例
from:nasa filter:nativeretweets
filter:retweets- 見つかるもの
- 昔の「RT」形式のリツイートと引用
- 例
from:nasa filter:retweets
メディアとリンク
メディアのフィルターは投稿に添付されたものに、リンクのフィルターは投稿が指す先に一致します。card_name: の演算子はすべて、アンケートも含めて、約7日前までしかさかのぼれません。card_name:poll2choice_text_only は、2択のテキストだけのアンケートを見つけます。
| 演算子 | 見つかるもの | 例 |
|---|---|---|
filter:media | 画像、動画、GIFのすべて | #nyc filter:media |
filter:images | 画像(リンクされたものも含む) | #nyc filter:images |
filter:twimg | Xにアップロードされた画像 | #nyc filter:twimg |
filter:videos | 動画のすべて(YouTubeリンクも含む) | keynote filter:videos |
filter:native_video | Xにアップロードされた動画 | keynote filter:native_video |
card_name:animated_gif | GIF | monday card_name:animated_gif |
filter:spaces | Xスペースへのリンク | ai filter:spaces |
filter:links | すべてのリンク(メディアのリンクも含む) | -filter:media filter:links |
url: | ドメインへのリンク(ハイフンはアンダースコアに置き換え) | url:github.com |
filter:news | ニュースサイトへのリンク | election filter:news |
filter:hashtags | ハッシュタグのある投稿 | from:nasa filter:hashtags |
filter:mentions | 他のアカウントにメンションした投稿 | from:nasa filter:mentions |
filter:safe | センシティブと設定された投稿を除外 | anime filter:safe |
filter:media- 見つかるもの
- 画像、動画、GIFのすべて
- 例
#nyc filter:media
filter:images- 見つかるもの
- 画像(リンクされたものも含む)
- 例
#nyc filter:images
filter:twimg- 見つかるもの
- Xにアップロードされた画像
- 例
#nyc filter:twimg
filter:videos- 見つかるもの
- 動画のすべて(YouTubeリンクも含む)
- 例
keynote filter:videos
filter:native_video- 見つかるもの
- Xにアップロードされた動画
- 例
keynote filter:native_video
card_name:animated_gif- 見つかるもの
- GIF
- 例
monday card_name:animated_gif
filter:spaces- 見つかるもの
- Xスペースへのリンク
- 例
ai filter:spaces
filter:links- 見つかるもの
- すべてのリンク(メディアのリンクも含む)
- 例
-filter:media filter:links
url:- 見つかるもの
- ドメインへのリンク(ハイフンはアンダースコアに置き換え)
- 例
url:github.com
filter:news- 見つかるもの
- ニュースサイトへのリンク
- 例
election filter:news
filter:hashtags- 見つかるもの
- ハッシュタグのある投稿
- 例
from:nasa filter:hashtags
filter:mentions- 見つかるもの
- 他のアカウントにメンションした投稿
- 例
from:nasa filter:mentions
filter:safe- 見つかるもの
- センシティブと設定された投稿を除外
- 例
anime filter:safe
言語とアプリ
lang: は2文字の言語コードを受け取り、Xの自動判定をそのまま信頼します。判定が最も弱いのは、非常に短い投稿です。
| 演算子 | 見つかるもの | 例 |
|---|---|---|
lang: | 1つの言語の投稿 | ramen lang:ja |
lang:und | Xが分類できない投稿(絵文字のみなど) | lang:und filter:images |
lang:qme | メディアのリンクだけでできた投稿 | lang:qme from:nasa |
source: | 1つのアプリから送られた投稿(スペースはアンダースコア) | source:tweetdeck |
lang:- 見つかるもの
- 1つの言語の投稿
- 例
ramen lang:ja
lang:und- 見つかるもの
- Xが分類できない投稿(絵文字のみなど)
- 例
lang:und filter:images
lang:qme- 見つかるもの
- メディアのリンクだけでできた投稿
- 例
lang:qme from:nasa
source:- 見つかるもの
- 1つのアプリから送られた投稿(スペースはアンダースコア)
- 例
source:tweetdeck
位置情報
位置情報の演算子が見るのは、場所や座標を持つ投稿だけです。これは人々の投稿のごく一部なので、位置情報クエリが返すのは会話のごく一部になります。
| 演算子 | 見つかるもの | 例 |
|---|---|---|
near: | ある場所の近くにタグ付けされた投稿(2語なら引用符) | coffee near:boston |
within: | near: の半径(kmまたはmi) | coffee near:tokyo within:15km |
geocode: | 座標から半径内の投稿 | geocode:40.7128,-74.0060,5km |
place: | Xの場所IDを1つ指定してタグ付けされた投稿 | place:96683cc9126741d1 |
near:- 見つかるもの
- ある場所の近くにタグ付けされた投稿(2語なら引用符)
- 例
coffee near:boston
within:- 見つかるもの
near:の半径(kmまたはmi)- 例
coffee near:tokyo within:15km
geocode:- 見つかるもの
- 座標から半径内の投稿
- 例
geocode:40.7128,-74.0060,5km
place:- 見つかるもの
- Xの場所IDを1つ指定してタグ付けされた投稿
- 例
place:96683cc9126741d1
日付と時刻の演算子は、次の独立した節で解説します。
#Twitterを日付で検索する方法
Xを日付で検索するには、最初の日を since: に、最後の日の翌日を until: に、どちらも YYYY-MM-DD の形式で指定します。since: はその日を含み、until: はその日の始まりで止まります。どちらの日も、UTCの午前0時から始まります。
-
話題またはアカウントから始めます。
"solar eclipse"、または1つのアカウントの投稿ならfrom:nasaです。 -
最初の日を加えます。
since:2026-10-01は10月1日を含みます。 -
最後の日の翌日を加えます。
until:2026-11-01なら、11月1日そのものは含まれないので、10月全体をカバーします。 -
「最新」タブを読みます。 一致するすべての投稿が時系列で並びます。トップには、順位づけされた一部が表示されます。
クエリ全体は from:nasa since:2026-10-01 until:2026-11-01 となります。1日だけなら since:2026-10-15 until:2026-10-16 です。Xの詳細検索フォームでは、「期間」にある「開始」と「終了」の欄が、この2つの演算子を書き出します。
知っておきたいこと
日付はお使いの時計ではなく、UTCに従います。10月15日のUTCの1日は、ニューヨークでは10月14日の午後8時から10月15日の午後8時までです。そのため、その日付で検索すると、前日の夜を拾い、当日の夜を取りこぼします。ニューヨークの1日を指定するなら、時刻をUTCで書きます。
since:2026-10-15_04:00:00_UTC until:2026-10-16_04:00:00_UTC
下で期間を選ぶと、x.com用、Sorsa API用、公式X API用の、それぞれの形式で演算子をコピーできます。
31日間: 2026年10月1日から10月31日、UTCの0:00から翌0:00まで。
from:nasa since:2026-10-01 until:2026-11-01
from:nasa since_time:1790812800 until_time:1793491200
start_time=2026-10-01T00:00:00Z&end_time=2026-11-01T00:00:00Z
日付を入れると演算子が出力されます。終了日は1日進められ、時刻はすべてUTCに変換されます。
時刻、Unix時間、投稿ID
1日より短い期間では、X検索は日付のほかに、時刻と投稿IDも受け付けます。次の各行が演算子1つと、それが見つけるものです。
since:2026-10-01 # on or after a UTC date
until:2026-11-01 # before a UTC date
since:2026-10-15_14:00:00_UTC # from a time of day, in UTC
until:2026-10-15_18:00:00_UTC # before a time of day
since_time:1792072800 # from a Unix second
until_time:1792087200 # before a Unix second
within_time:2d # the last 2 days; also h, m and s
since_id:2108468174910472193 # newer than a post ID
max_id:2110405289047048193 # that post ID and older
2010年11月以降のすべての投稿IDには、作成された瞬間が含まれています。そのため、since_id: と max_id: が正確な時刻の境界として使えます。無料のツイートIDから日付への変換ツールは、任意のIDからその時刻を読み取ります。日付の演算子は、クエリに少なくとも1つ別の語がないと、何も返しません。
X検索はどこまでさかのぼれるか
X検索は、2006年3月の最初の公開投稿までさかのぼり、日付の形式ではそれ以降の任意の日を受け付けます。古い結果が薄くなるのは、投稿が削除されたり、アカウントが非公開になったりした箇所です。X検索が返すのは、現在公開されているものだけだからです。1つのアカウントがある日に何を投稿したかを知るには、無料の日付でツイートを検索ツールが使えます。数年分を一括で取得するなら、過去のTwitterデータのガイドがバックフィルを扱っています。
#公式X APIの検索演算子
公式X API v2は、これらの演算子の独自の方言を使います。ほとんどのフィルターの名前が変わり、日付はリクエストのパラメーターで渡し、ウェブ上の名前である min_faves: や min_retweets: は400エラーで拒否されます(Xの演算子リファレンス(新しいタブで開きます))。Sorsa APIは、x.comの検索ボックスと同じ演算子を読み取るので、クエリは両者の間でそのまま移せます。
| やりたいこと | Sorsa APIとx.com | 公式X API v2 |
|---|---|---|
| いいね100以上 | min_faves:100 | min_likes:100 |
| リポスト20以上 | min_retweets:20 | min_reposts:20 |
| リプライ10以上 | min_replies:10 | min_replies:10 |
| 2026年10月のみ | since:2026-10-01 until:2026-11-01 | start_time、end_time パラメーター |
| 直近2日間 | within_time:2d | start_time パラメーター |
| リプライのみ | filter:replies | is:reply |
| 引用投稿のみ | filter:quote | is:quote |
| 1つの投稿の引用 | quoted_tweet_id: | quotes_of_tweet_id: |
| 画像つきの投稿 | filter:images | has:images |
| 何らかのメディアつきの投稿 | filter:media | has:media |
| リンクつきの投稿 | filter:links | has:links |
| 認証済みの投稿者 | filter:verified | is:verified |
| リポスト | デフォルトで除外 | キーワード検索で除外 |
| フォロー中のアカウント | x.comのみ(ログイン時) | 演算子なし |
語句、from:、to:、@、#、$、lang:、list:、url: | 同じ | 同じ |
いいね100以上
- Sorsa APIとx.com
min_faves:100- 公式X API v2
min_likes:100
リポスト20以上
- Sorsa APIとx.com
min_retweets:20- 公式X API v2
min_reposts:20
リプライ10以上
- Sorsa APIとx.com
min_replies:10- 公式X API v2
min_replies:10
2026年10月のみ
- Sorsa APIとx.com
since:2026-10-01 until:2026-11-01- 公式X API v2
start_time、end_timeパラメーター
直近2日間
- Sorsa APIとx.com
within_time:2d- 公式X API v2
start_timeパラメーター
リプライのみ
- Sorsa APIとx.com
filter:replies- 公式X API v2
is:reply
引用投稿のみ
- Sorsa APIとx.com
filter:quote- 公式X API v2
is:quote
1つの投稿の引用
- Sorsa APIとx.com
quoted_tweet_id:- 公式X API v2
quotes_of_tweet_id:
画像つきの投稿
- Sorsa APIとx.com
filter:images- 公式X API v2
has:images
何らかのメディアつきの投稿
- Sorsa APIとx.com
filter:media- 公式X API v2
has:media
リンクつきの投稿
- Sorsa APIとx.com
filter:links- 公式X API v2
has:links
認証済みの投稿者
- Sorsa APIとx.com
filter:verified- 公式X API v2
is:verified
リポスト
- Sorsa APIとx.com
- デフォルトで除外
- 公式X API v2
- キーワード検索で除外
フォロー中のアカウント
- Sorsa APIとx.com
- x.comのみ(ログイン時)
- 公式X API v2
- 演算子なし
語句、
from:、to:、@、#、$、lang:、list:、url:- Sorsa APIとx.com
- 同じ
- 公式X API v2
- 同じ
2026年の2つの変更が、古い一覧やAIの回答で公式APIについての説明が食い違う理由です。Xは2026年1月19日に、検索エンドポイントで min_likes:、min_replies:、min_reposts: を停止し、5月4日に復活させました。このとき検索が新しいインデックスに移り、キーワードクエリのリツイートも返されなくなりました(XのAPI変更履歴(新しいタブで開きます))。公式APIはエンゲージメントのフィルターを「無視する」という説は、その間の数か月を説明したものです。現在は、ウェブ上の名前にはエラーを返します。
公式エンドポイントは、クエリ文字列の長さにも上限があります。過去7日間をカバーする直近検索は512文字、全アーカイブ検索は1,024文字です。has:media や is:reply のような論理積だけの演算子は、そこでは単独でクエリを構成できず、語、アカウント、ハッシュタグを隣に置く必要があります。
#Sorsa APIで同じクエリをコードから実行する
Xの検索演算子をコードから実行するなら、Twitter(X)API兼スクレイピングツールであるSorsa APIが使えます。POST /search-tweets は、x.comで入力するのと同じクエリをそのまま受け取り、1リクエストで約20ツイートを、各投稿者のプロフィール全体つきで返します。料金は結果1,000件あたり$0.07からです。公式X APIは1,000投稿あたり$5.00で、開発者アカウントとOAuthが必要なうえ、x.comとは別の演算子名を読み取ります。
-
キーを取得します。 登録して、ダッシュボードからAPIキーをコピーします。最初の100リクエストは無料です。
-
クエリを送ります。 演算子はJSONボディの
queryフィールドに入れます。orderではpopular(トップ。デフォルト)かlatestを選びます。Terminal curl -X POST "https://api.sorsa.io/v3/search-tweets" \ -H "ApiKey: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "query": "\"vector database\" lang:en min_faves:50 since:2026-10-01", "order": "latest" }' -
ツイートを読み取ります。 各ツイートには、カウント、ISO 8601形式の日付、投稿者のプロフィールが付いてきます。
Response200 OK { "tweets": [ { "id": "2110405289047048193", "full_text": "Benchmarked three vector database engines on 40M vectors.", "created_at": "2026-10-14T16:20:05Z", "lang": "en", "likes_count": 184, "retweet_count": 41, "reply_count": 23, "quote_count": 6, "view_count": 52300, "is_reply": false, "user": { "id": "1592041833471827968", "username": "kestrel_db_engineering", "display_name": "Kestrel DB Engineering", "followers_count": 12480, "verified": false } } ], "next_cursor": "DAABCgABGSmiaxkAAgoAAgjEJ" } -
カーソルをたどります。 カーソルのないレスポンスが返るまで、同じクエリに
next_cursorを付けて送り返します。import requests URL = "https://api.sorsa.io/v3/search-tweets" HEADERS = {"ApiKey": "YOUR_API_KEY"} def search(query, order="latest"): body = {"query": query, "order": order} while True: r = requests.post(URL, headers=HEADERS, json=body) r.raise_for_status() page = r.json() yield from page["tweets"] cursor = page.get("next_cursor") if not cursor: break body["next_cursor"] = cursor q = '"vector database" lang:en min_faves:50 since:2026-10-01' for tweet in search(q): print(tweet["created_at"], tweet["user"]["username"])
403はキーがないかリクエストを使い切ったことを、429は1秒間に20リクエストを超えたことを示します。失敗したリクエストに課金されることはありません。すべてのフィールドはPOST /search-tweets のリファレンス(新しいタブで開きます)に載っています。クエリをスケジュールで繰り返し実行する方法は、Twitter検索APIのガイドで解説しています。
検索作業の費用は、結果の件数に比例します。Sorsa APIはリクエスト単位の課金で、1リクエストにつき約20件です。公式X APIは、返した投稿1件ごとに課金します。
| 検索結果 | Sorsa API(最安) | 公式X API |
|---|---|---|
| 1,000 | $0.07 | $5.00 |
| 10万 | $7 | $500 |
| 100万 | $70 | $5,000 |
1,000
- Sorsa API(最安)
- $0.07
- 公式X API
- $5.00
10万
- Sorsa API(最安)
- $7
- 公式X API
- $500
100万
- Sorsa API(最安)
- $70
- 公式X API
- $5,000
100回分の無料リクエストで約2,000件の検索結果を取得できるので、上のどのクエリでも、最初のテストは無料です。
#すぐに使える検索クエリ集
よく実行される検索を集めました。どのクエリも、x.comの検索ボックスと、Sorsa APIの query フィールドに、そのまま入力して使えます。語句、アカウント、日付は、ご自身のものに置き換えてください。x.comでは、検索結果ページのアドレスにクエリが含まれるため、ブックマークすれば検索を保存できます。アドレスの末尾に &f=live を付けると、「最新」タブが開きます。
# What people say about a brand, without its own posts
("acme cloud" OR @acme_cloud_status) -from:acme_cloud_status -filter:replies
# Questions in a niche that nobody has answered yet
("any recommendations" OR "what do you use") crm ? -min_replies:1 lang:en
# The most liked posts on a topic this month
"vector database" min_faves:200 -filter:replies since:2026-10-01
# One account's posts on a subject in October 2026
from:kestrel_db_engineering benchmark since:2026-10-01 until:2026-11-01
# Complaints about a competitor
@brightpath_analytics (broken OR outage OR refund OR "not working")
# Every reply in one thread
conversation_id:2110405289047048193
# Quote posts of one post
quoted_tweet_id:2110405289047048193
# Images under a hashtag, original posts only
#buildinpublic filter:images -filter:replies
# Posts that link to your site, from other accounts
url:acmecloud.dev -from:acme_cloud_status
# Hiring posts with links, from the last 2 days
(hiring OR "we're hiring") "rust engineer" filter:links within_time:2d
1つのアカウントにタグ付けされたすべての投稿を、いいね、リプライ、日付のフィルターつきでリクエストに指定して追うには、TwitterメンションAPIのガイドを参照してください。
#検索結果が空になる原因
クエリの結果が空のとき、原因はたいてい、Xではなく構文にあります。まず次の点を確認してください。
- コロンの後ろのスペース、小文字の
or、YYYY-MM-DDではない日付の書き方。 - 終了日。
until:はその日自体を含まないため、until:2026-10-31では10月31日が抜けます。 - トップタブ。 トップは結果を順位づけして絞り込みます。「最新」に切り替えるか、Sorsa APIに
"order": "latest"を送ってください。 - 非公開アカウント。 非公開や凍結されたアカウントは、誰が検索しても表示されません。
- 範囲の短さ。
card_name:がカバーするのは直近約7日間で、位置情報のフィルターが見るのはタグ付けされた投稿だけです。 - 演算子が多すぎる。 約22個を超えたら、クエリを2つに分けて、結果を統合します。
url:のハイフン。 t-mobile.comならurl:t_mobile.comと書きます。- Xがフィルターとして読む語。 photoやvideoを検索すると、メディアのフィルターに変わることがあります。その語は引用符で囲んでください。
- 公式APIの名前。
has:media、is:reply、min_likes:は公式X APIのものです。x.comとSorsa APIでは、filter:media、filter:replies、min_faves:を使います。
間違った結果の大半は、次の5組が原因です。
| この2つ | 違い |
|---|---|
to: と @ | to: はそのアカウントへのリプライを、@ はそのアカウントにタグ付けした全投稿を見つける |
filter:retweets と filter:nativeretweets | 昔の「RT」テキスト形式のリツイートと引用、対してボタンで行ったリポスト |
filter:nativeretweets と include:nativeretweets | リポストだけを返す、対して通常の結果にリポストを加える |
filter:images と filter:twimg | リンクされたものも含む任意の画像、対してXにアップロードされた画像 |
min_faves: と min_likes: | 同じ下限。x.comでの名前と、公式X APIでの名前 |
to:と@- 違い
to:はそのアカウントへのリプライを、@はそのアカウントにタグ付けした全投稿を見つける
filter:retweetsとfilter:nativeretweets- 違い
- 昔の「RT」テキスト形式のリツイートと引用、対してボタンで行ったリポスト
filter:nativeretweetsとinclude:nativeretweets- 違い
- リポストだけを返す、対して通常の結果にリポストを加える
filter:imagesとfilter:twimg- 違い
- リンクされたものも含む任意の画像、対してXにアップロードされた画像
min_faves:とmin_likes:- 違い
- 同じ下限。x.comでの名前と、公式X APIでの名前
投稿にいいねしたアカウントを一覧にする演算子はなく、ダイレクトメッセージや非公開アカウントを検索する演算子もありません。検索が対象とするのは、現在Xで公開されているものです。
#検索演算子を使って、コードからXを検索する
Twitterの検索演算子は、キーワード検索を精密なフィルターに変えます。x.comで動くクエリは、Sorsa APIでもそのままコードから実行できます。検索ボックスかTwitter高度な検索ツールでクエリを組み立て、POST /search-tweets に送ってください。1リクエストで約20ツイート、2006年までの任意の日付、全プラン毎秒20リクエストで、結果1,000件あたり$0.07からです。最初の100リクエストは無料です。
#よくある質問
2026年も、Xに高度な検索はありますか?
はい。Xの詳細検索フォーム(x.com/search-advanced)は、ログイン済みのアカウントなら今も開けます。ウェブとアプリの検索ボックスも、from:、since:、min_faves: などの演算子を引き続き受け付けます。エンゲージメントの演算子は、2026年5月4日に公式X APIにも min_likes:、min_replies:、min_reposts: という名前で戻りました。
until:は終了日を含みますか?
含みません。until: はその日付より前の投稿を返すので、日付そのものは含まれません。since:2026-10-01 until:2026-10-31 は、10月30日の終わりで止まります。最終日を含めるには、until: をその翌日に設定します。since: は逆で、その日付を含みます。どちらの日付もUTCの午前0時から始まります。
X検索で、1回に使える演算子はいくつですか?
x.comでは、約22個の演算子までが1つのクエリに入り、それを超えると結果が返らなくなります。この上限はXが公表したものではなく、公開テストで分かったものです。公式X APIは文字数で数えます。直近検索は1クエリ512文字、全アーカイブ検索は1,024文字です。長いアカウントや語のリストは、複数のクエリに分けて、結果を統合してください。
Xのアカウントなしで、Twitterの検索演算子を使えますか?
x.comでは使えません。Xは検索結果をログイン済みのアカウントにしか表示せず、x.com/search-advanced の詳細検索フォームも、ログイン済みのアカウントでしか開けません。ログインしていれば、このページのすべての演算子を、ウェブとアプリの検索ボックスで、通常の語句の隣に入力して使えます。
min_favesのようなTwitter検索演算子に対応するAPIはどれですか?
Sorsa APIは、POST /search-tweets で、x.comの演算子構文を、min_faves:、since:、until:、filter: を含めて、そのまま実行します。1リクエストで約20ツイートを投稿者のプロフィール全体つきで返し、2006年までさかのぼれて、全プラン毎秒20リクエストです。料金は結果1,000件あたり$0.07からで、公式X APIの$5.00を下回ります。
#検証の方法
2026年11月2日に、このページの演算子を、XのAPIドキュメント(演算子の一覧、クエリのルール、変更履歴、料金表)、Xの詳細検索のヘルプページ、自社のAPIリファレンスと検索ドキュメント、GitHubの公開リファレンスと照らし合わせました。今回の更新では、x.comでの実際の検索は行っていません。リクエストとレスポンスは、公開中のAPIリファレンスに基づいて書き、例には架空のアカウントを使っています。
出典
- Search operators, X API documentation(新しいタブで開きます)
- Build a query, X API documentation(新しいタブで開きます)
- X API changelog(新しいタブで開きます)
- X API pricing(新しいタブで開きます)
- How to use advanced search, X Help Center(新しいタブで開きます)
- twitter-advanced-search, Igor Brigadir on GitHub(新しいタブで開きます)
- Search operators, Sorsa API docs(新しいタブで開きます)