メインコンテンツへスキップ

クエリの構築

クエリの制限について 利用しているアクセスレベルに応じて、クエリには制限があります。 従量課金制のお客様の場合、クエリは最大 512 文字まで、Enterprise 契約のお客様の場合は最大 4,096 文字まで指定できます。 Enterprise アクセスをご利用の場合は、担当のアカウントマネージャーまでご連絡ください。 オペレーターの利用可否 ほとんどのオペレーターはすべての開発者が利用できますが、一部には Enterprise アクセスの承認を受けた方のみ利用できるものがあります。各オペレーターがどのアクセスレベルで利用可能かは、次のラベルを用いてlist of operatorsの表に記載しています。
  • コアオペレーター: 任意のProjectを使用している場合に利用可能。
  • アドバンスドオペレーター: Enterprise アクセスを持つ Project を使用している場合に利用可能。   

演算子の種類: 単独使用可能なものと結合必須のもの

単独使用可能な演算子 は、それ単体でも、あるいは他の任意の演算子 (結合が必要な演算子を含む) と組み合わせても使用できます。 たとえば、次のクエリは単独使用可能な演算子である #hashtag 演算子を使用しているため、有効です。 #xapiv2 結合必須の演算子 は、クエリ内でそれ単体では使用できません。少なくとも 1 つの単独使用可能な演算子と組み合わせて使用する場合にのみ利用できます。これは、これらの演算子のみを使用するとクエリがあまりに一般的になりすぎ、極めて大量の投稿にマッチしてしまうためです。 たとえば、次のクエリは、結合必須の演算子だけを含んでいるためサポートされません。 has:media has:links OR is:retweet “X data” のような単独使用可能な演算子 (フレーズ) を追加すると、そのクエリは正しく動作します。 “X data” has:mentions (has:media OR has:links)

ブール演算子とグルーピング

1つのクエリ内で複数の演算子を組み合わせたい場合、次のような手法が利用できます。
AND ロジック演算子同士の間にスペースを入れて連続して指定すると、ブールの「AND」ロジックになります。つまり、両方の条件を満たした場合にのみ投稿がマッチします。たとえば、snow day #NoSchool は、snow と day という語とハッシュタグ #NoSchool を含む投稿にマッチします。
OR ロジック演算子同士の間に OR を入れて連続して指定すると、OR ロジックになります。つまり、いずれかの条件を満たした場合に投稿がマッチします。たとえば、grumpy OR cat OR #meme と指定すると、少なくとも grumpy または cat の語、もしくはハッシュタグ #meme のいずれかを含む投稿にマッチします。
NOT ロジック、否定キーワード (または任意の演算子) の前にハイフン (-) を付けると、それを否定 (NOT) できます。たとえば、cat #meme -grumpy は、ハッシュタグ #meme と cat という語を含む投稿のうち、grumpy という語を含まないものにマッチします。よく使われるクエリ句として -is:retweet があります。これはリツイートにはマッチせず、オリジナルの投稿、引用ツイート、返信のみにマッチします。すべての演算子は否定できますが、否定された演算子だけを単独で使うことはできません。
グルーピング演算子をまとめてグルーピングするには、丸括弧を使用できます。たとえば、(grumpy cat) OR (#meme has:images) は、grumpy と cat の語を含む投稿、またはハッシュタグ #meme を含む画像付き投稿のいずれかを返します。AND が先に適用され、その後に OR が適用される点に注意してください。
否定に関する注意 演算子 -is:nullcast は常に否定形で使用する必要があります。 否定された演算子を単独で使用することはできません。 丸括弧でグループ化した一連の演算子全体をまとめて否定しないでください。代わりに、各演算子を個別に否定してください。たとえば、skiing -(snow OR day OR noschool) を使用する代わりに、skiing -snow -day -noschool を使用することをお勧めします。  演算の順序 AND と OR の機能を組み合わせる場合、次の演算順序によってクエリの評価方法が決まります。
  1. AND ロジックで接続された演算子が最初に結合される
  2. 次に、OR ロジックで接続された演算子が適用される
たとえば:
  • apple OR iphone ipad は、apple OR (iphone ipad) として評価されます
  • ipad iphone OR android は、(iphone ipad) OR android として評価されます
あいまいさをなくし、意図したとおりにクエリが評価されるようにするために、必要に応じて丸括弧で用語をグループ化してください。  たとえば:
  • (apple OR iphone) ipad
  • iphone (ipad OR android)  
句読点、ダイアクリティカルマーク、大文字小文字の区別 アクセントやダイアクリティカルマークを含む文字でキーワードやハッシュタグのクエリを指定した場合、そのアクセントやダイアクリティカルマーク付きの語と、通常の文字で書かれた語の両方を含む投稿テキストにマッチします。たとえば、キーワード Diacrítica またはハッシュタグ #cumpleaños を含むクエリは、Diacrítica#cumpleaños に加え、チルダ付きの í やエニェのない Diacritica#cumpleanos にもマッチします。 アクセントやダイアクリティカルマーク付きの文字は通常の文字と同様に扱われ、単語境界とは見なされません。たとえば、キーワード cumpleaños を含むクエリは、単語 cumpleaños を含むアクティビティにのみマッチし、cumpleacumpleanos を含むアクティビティにはマッチしません。 すべての演算子は大文字小文字を区別せずに評価されます。たとえば、クエリ cat は、catCATCat を含む投稿すべてにマッチします。 filtered stream のマッチング動作は、投稿数の集計とは異なります。building a filtered stream rule の際には、アクセントやダイアクリティカルマークを含むキーワードやハッシュタグは、同じくアクセントやダイアクリティカルマークを含む語にのみマッチし、代わりに通常の文字を使用している語にはマッチしないことを理解しておいてください。  たとえば、キーワード Diacrítica またはハッシュタグ #cumpleaños を含む filtered stream のルールは、Diacrítica#cumpleaños にのみマッチし、チルダ付きの í やエニェのない Diacritica#cumpleanos にはマッチしません。 具体性と効率性 クエリの作成を始める際には、いくつか心に留めておくべき点があります。
  • 単一のキーワードや #hashtag だけといった、広く単独で使われるオペレーターをクエリに使用することは、通常おすすめしません。このようなクエリは、非常に大量の投稿にマッチしてしまう可能性が高いためです。より堅牢なクエリを作成することで、より絞り込まれた投稿の集合にマッチさせることができ、ポスト数の精度向上が期待できるため、より価値の高いインサイトを得る助けになります。 
    • たとえば、クエリが単にキーワード happy だけだった場合、1日あたりおよそ 200,000〜300,000 件の投稿が返される可能性があります。
    • さらに条件オペレーターを追加すると結果が絞り込まれます。例: (happy OR happiness) place_country:GB -birthday -is:retweet
  • 効率的なクエリを書くことは、クエリの文字数制限内に収めるうえでも有益です。文字数には、スペースやオペレーターを含むクエリ文字列全体が含まれます。
    • たとえば、次のクエリは 59 文字です: (happy OR happiness) place_country:GB -birthday -is:retweet
Quote Tweet のマッチング動作 Post counts エンドポイントを使用する場合、オペレーターは引用元のオリジナルポストの内容にはマッチせず、Quote Tweet に含まれる内容にのみマッチします。 ただし、filtered stream は、引用されたオリジナルポストの内容と Quote Tweet 側の内容の両方にマッチする点に注意してください。   クエリを反復的に構築する クエリは早い段階から、頻繁にテストする 最初の試行で「正しい」結果を返すクエリを書けることはほとんどありません。X 上には非常に多くの情報があり、最初は明確でないものもありますし、前述のクエリ構文を希望するクエリにうまく当てはめるのが難しい場合もあります。 クエリを構築する際には、Search Post エンドポイントのいずれかを使って定期的にテストし、クエリにマッチしている投稿があなたのユースケースに関連していることを確認することが重要です。 このセクションでは、次のクエリから開始し、テストの結果に基づいて調整していきます。  happy OR happiness 結果を使ってクエリを絞り込む Search Posts でクエリをテストするときは、返された投稿をざっと確認し、期待しているデータが含まれているかどうかを確認してください。広いクエリと、そのクエリにマッチする投稿のスーパーセットから始めることで、結果をレビューし、望ましくない結果を除外するようにクエリを絞り込むことができます。   サンプルクエリをテストしたところ、さまざまな言語の投稿が返されることに気付きました。このケースでは英語の投稿のみを受け取りたいので、lang: オペレーターを追加します: (happy OR happiness) lang:en テストでは「happy birthday」を願う投稿が多数返ってきたため、否定キーワードオペレーターとして -birthday を追加します。また、オリジナルの投稿のみを受け取りたいので、否定オペレーター -is:retweet も追加します: (happy OR happiness) lang:en -birthday -is:retweet 必要に応じて包含方向に調整する Search Posts で、期待しているデータを受け取れておらず、返ってくるはずの既存投稿があると分かっている場合は、望むデータをフィルタリングしてしまっている可能性のあるオペレーターを削除して、クエリを広げる必要があるかもしれません。  この例では、自分のタイムラインに、求めている感情を表現しているにもかかわらずテスト結果に含まれていない他の投稿があることに気付きました。カバレッジを広げるため、excitedelated というキーワードを追加します。 (happy OR happiness OR excited OR elated) lang:en -birthday -is:retweet 期間中の人気トレンドや急増に応じて調整する X ではトレンドが素早く移り変わります。クエリのメンテナンスは継続的なプロセスであるべきです。あるクエリをしばらく使い続ける予定の場合は、定期的に受け取っているデータを確認し、調整が必要かどうかをチェックすることをおすすめします。 この例では、「happy holidays」と人々に挨拶している投稿が届き始めたことに気付きました。これらの投稿を結果に含めたくないので、否定キーワード -holidays を追加します。 (happy OR happiness OR excited OR elated) lang:en -birthday -is:retweet -holidays  クエリを十分にテストし、反復して調整できたら、Post counts エンドポイントにそのクエリを送信し始めることで、完全な投稿ペイロードではなく、投稿数のみを受け取れるようになります。

リクエストへのクエリの追加

クエリをリクエストに追加するには、query パラメータを使用する必要があります。ほかのクエリパラメータと同様に、作成したクエリは必ず HTTP エンコード (URL エンコード) してください。 以下は、cURL コマンドを使用した場合の例です。このコマンドを使用する場合は、必ず $BEARER_TOKEN をご自身の ベアラートークン に置き換えてください。
      curl https://api.x.com/2/tweets/counts/recent?query=cat%20has%3Amedia%20-grumpy&tweet.fields=created_at&max_results=100 -H "Authorization: Bearer $BEARER_TOKEN"

クエリ例

自然災害の追跡 次のクエリは、2017 年にヒューストンを襲ったハリケーン・ハービーについて言及している、気象機関や観測所からのオリジナルのポストにマッチしたものです。 HTTP エンコードを行っていない場合のクエリは次のようになります。 has:geo (from:NWSNHC OR from:NHC_Atlantic OR from:NWSHouston OR from:NWSSanAntonio OR from:USGS_TexasRain OR from:USGS_TexasFlood OR from:JeffLindner1) -is:retweet そして、HTTP エンコード、クエリパラメータ、および直近のポスト数の URI を含めると、クエリは次のようになります。 https://api.x.com/2/tweets/counts/recent?query=-is%3Aretweet%20has%3Ageo%20(from%3ANWSNHC%20OR%20from%3ANHC_Atlantic%20OR%20from%3ANWSHouston%20OR%20from%3ANWSSanAntonio%20OR%20from%3AUSGS_TexasRain%20OR%20from%3AUSGS_TexasFlood%20OR%20from%3AJeffLindner1) 会話のセンチメントを確認する 次のルールは、ハッシュタグ #nowplaying 周辺で展開している会話のセンチメントを、北米内で公開されたポストに範囲を絞ってよりよく理解するために利用できます。 HTTP エンコードを行っていない場合、ポジティブとネガティブの 2 つの異なるクエリは次のようになります。 #nowplaying (happy OR exciting OR excited OR favorite OR fav OR amazing OR lovely OR incredible) (place_country:US OR place_country:MX OR place_country:CA) -horrible -worst -sucks -bad -disappointing #nowplaying (horrible OR worst OR sucks OR bad OR disappointing) (place_country:US OR place_country:MX OR place_country:CA) -happy -exciting -excited -favorite -fav -amazing -lovely -incredible そして、HTTP エンコード、クエリパラメータ、および直近のポスト数の URI を含めると、クエリは次のようになります。 https://api.x.com/2/tweets/counts/recent?query=%23nowplaying%20(happy%20OR%20exciting%20OR%20excited%20OR%20favorite%20OR%20fav%20OR%20amazing%20OR%20lovely%20OR%20incredible)%20(place_country%3AUS%20OR%20place_country%3AMX%20OR%20place_country%3ACA)%20-horrible%20-worst%20-sucks%20-bad%20-disappointing https://api.x.com/2/tweets/counts/recent?query=%23nowplaying%20(horrible%20OR%20worst%20OR%20sucks%20OR%20bad%20OR%20disappointing)%20(place_country%3AUS%20OR%20place_country%3AMX%20OR%20place_country%3ACA)%20-happy%20-exciting%20-excited%20-favorite%20-fav%20-amazing%20-lovely%20-incredible 特定のポスト注釈に関連するポストを検索する このルールは、猫ではないペットの画像を含み、ポストで判定された言語が日本語であるオリジナルのポストをフィルタリングするために作成されました。これを行うために、context: 演算子を使用して、Post annotation 機能を活用しました。まず、Post lookup エンドポイントと tweet.fields=context_annotations フィールドパラメータを使用し、クエリで利用する必要がある domain.entity ID を特定しました。
  • 猫に関連するポストは、domain 66 (Interests and Hobbies カテゴリ) と entity 852262932607926273 (Cats) を返します。 
  • ペットに関連するポストは、domain 65 (Interests and Hobbies Vertical) と entity 852262932607926273 (Pets) を返します。 
HTTP エンコードを行っていない場合のクエリは次のようになります。 context:65.852262932607926273 -context:66.852262932607926273 -is:retweet has:images lang:ja そして、HTTP エンコード、クエリパラメータ、および直近のポスト数の URI を含めると、クエリは次のようになります。 https://api.x.com/2/tweets/counts/recent?query=context%3A65.852262932607926273%20-context%3A66.852262932607926273%20-is%3Aretweet%20has%3Aimages%20lang%3Aja

演算子

演算子type提供状況説明
keyword単項Coreポスト本文内のキーワードにマッチします。これはトークン単位でのマッチングであり、指定したキーワード文字列はポスト本文をトークン化したテキストと照合されます。トークン化では、句読点、記号、Unicode 基本多言語面の区切り文字にもとづいて単語が分割されます。例えば、「I like coca-cola」というテキストを含むポストは、次のトークンに分割されます: I, like, coca, cola。これらのトークンが、クエリで使用したキーワード文字列と比較されます。句読点 (例: coca-cola) 、記号、または区切り文字を含む文字列にマッチさせるには、キーワードを二重引用符で囲む必要があります。例: pepsi OR cola OR "coca cola"
emoji単項Coreポスト本文内の絵文字にマッチします。キーワードと同様に、絵文字もトークン化に基づいてマッチングされるため、指定した絵文字はポスト本文のトークン化されたテキストと照合されます。絵文字にバリアントがある場合は、クエリに追加する際にその絵文字を二重引用符で囲む必要があります。例: (😃 OR 😡) 😬
"exact phrase match"単項Coreポスト本文内のフレーズに完全一致でマッチします。例: ("X API" OR #v2) -"recent counts"
#単項Coreハッシュタグがポスト内で認識済みのエンティティである場合、そのハッシュタグを含む任意のポストにマッチします。このオペレーターはトークン化によるマッチではなく、完全一致でマッチします。つまり、ルール #thanku はハッシュタグ #thanku を含む投稿にはマッチしますが、ハッシュタグ #thankunext を含む投稿にはマッチしません。例: #thankunext #fanart OR @arianagrande
@単項Core指定したユーザー名に言及しているポストにマッチします。ユーザー名が (@ 文字を含む) 認識済みのエンティティである場合に適用されます。例: (@XDevelopers OR @API) -@X
$単項Advanced指定された「キャッシュタグ」を含むポストにマッチします (トークンの先頭文字が「」であるもの)。キャッシュタグ演算子は、本文からキャッシュタグを直接抽出しようとするのではなく、Xの「symbols」エンティティ抽出機能に依存してキャッシュタグにマッチします。例:」であるもの) 。キャッシュタグ演算子は、本文からキャッシュタグを直接抽出しようとするのではなく、X の「symbols」エンティティ抽出機能に依存してキャッシュタグにマッチします。例: `twtr OR @XDevelopers -$fb`
from:単項Core特定のユーザーからの任意のポストに一致します。値には、ユーザー名 (@文字を除く) またはユーザーの数値の user ID のいずれかを指定できます。from: 演算子ごとに指定できるユーザー名または ID は 1 つだけです。例: from:XDevelopers OR from:API -from:X
to:単項Core特定のユーザーへの返信であるポストすべてにマッチします。値には、ユーザー名 (@ 文字を除く) またはユーザーの数値 ID のいずれかを指定できます。to: 演算子ごとに指定できるユーザー名/ID は 1 つだけです。例: to:XDevelopers OR to:API -to:X
url:単項Coreポスト内の有効な形式の任意のURLに対して、トークン化されたマッチを行います。このオペレーターは、url フィールドと expanded_url フィールドの両方の内容を対象にマッチさせることができます。たとえば、「You should check out X Developer Labs: https://t.co/c0A36SWil4」 (短縮URLが https://developer.x.com にリダイレクトされるポスト) は、from:XDevelopers url:"https://developer.x.com" および from:XDevelopers url:"https://t.co" の両方のルールにマッチします。句読点や特殊文字を含むトークンやフレーズは、二重引用符で囲む必要があります。
retweets_of:単項Core指定したユーザーの投稿をリツイートした投稿にマッチします。値として指定できるのは、ユーザー名 (@ 文字を除く) か、ユーザーの数値の user ID のいずれかです。retweets_of: オペレーターごとに指定できるユーザー名/ID は 1 つだけです。例: retweets_of:XDevelopers OR retweets_of:API
context:単項Core特定のドメイン id / エンティティ id のペアを持つ投稿に一致します。context: 演算子 1 つにつき指定できるドメイン/エンティティは 1 つだけです。例: context:domain_id.entity_id。OR 演算子を使用して複数のドメイン/エンティティを組み合わせることができます: (context:47.113922 9372198469633 OR context:11.1088514520308342784)
entity:単項Core特定のエンティティ文字列値を持つ投稿に一致します。entity: オペレーターは 1 つだけ指定できます。例: entity:"string declaration of entity/place"。なお、これは recent search エンドポイントでのみ利用可能です。
conversation_id:単項Core同じ会話IDを持つ投稿にマッチします。会話IDには、その会話を開始したポストのPost IDが設定されます。そのポストへの返信が投稿されるたびに (返信への返信も含めて) 、conversation_id がそのJSONペイロードに追加されます。conversation_id: オペレーターごとに指定できる会話IDは1つだけです。例: conversation_id:1334987486343299072 (from:XDevelopers OR from:API)
list:単項Advanced指定したリストのメンバーであるユーザーによる投稿にマッチします。たとえば、@XDevelopers と @API がリスト 123 のメンバーで、クエリに list:123 を含めた場合、レスポンスにはそれらのアカウントが投稿したもののみが含まれます。リストIDは、List ルックアップエンドポイントを使用して取得できます。例: list:123
place:単項Advanced指定した場所またはXのplace IDがタグ付けされた投稿に一致します。複数語からなる場所名 (“New York City”、“Palo Alto”など) は引用符で囲む必要があります。place: オペレーターごとに指定できる場所は1つだけです。注: Xのplace IDの取得方法については、GET geo/search standard v1.1エンドポイントを参照してください。例: place:"new york city" OR place:seattle OR place:fd70c22040963ac7
place_country:単項Advancedタグ付けされた場所/ロケーションに関連付けられている国コードが、指定した ISO alpha-2 文字コードと一致する投稿にマッチします。有効な ISO コードの一覧は、Wikipedia で確認できます。各 place_country: 演算子で指定できる ISO コードは 1 つだけです。例: place_country:US OR place_country:MX OR place_country:CA
point_radius:単項Advanced存在する場合はポストの place.geo.coordinates オブジェクトに対して、また X では場所のジオポリゴンに対してマッチし、place ポリゴンが定義された領域内に完全に含まれている必要があります。point_radius:[longitude latitude radius]。サポートされている半径の単位はマイル (mi) とキロメートル (km) です。半径は 25mi 未満である必要があります。経度は ±180 の範囲です。緯度は ±90 の範囲です。すべての座標は度を 10 進数で表します。ルールの引数は角括弧内に含め、スペース区切りで指定します。例: point_radius:[2.355128 48.861118 16km] OR point_radius:[-41.287336 174.761070 20mi]
bounding_box:単項Advanced存在する場合はポストの place.geo.coordinates オブジェクトに対して、また X 上では place のジオポリゴンに対してマッチし、place ポリゴンが定義された領域内に完全に含まれている場合に一致します。bounding_box:[west_long south_lat east_long north_lat]。バウンディングボックスの幅と高さは 25mi 未満である必要があります。経度は ±180 の範囲です。緯度は ±90 の範囲です。すべての座標は 10 進表記の度数です。ルール引数は角括弧内に含め、スペース区切りで指定します。例: bounding_box:[-105.301758 39.964069 -105.178505 40.09455]
is:retweet他の条件との併用が必須コア指定されたルールのその他の条件にも一致するリツイートを対象とします。このオペレーターは、通常のリツイート (たとえば、リツイートボタンを使用して生成されたもの) だけを対象とします。引用ツイートはこのオペレーターではマッチしません。例: data @XDevelopers -is:retweet
is:reply他の条件との併用が必須コアルールに一致する明示的な返信のみを返します。否定形を用いることで、クエリに一致する返信を結果から除外することもできます。注: このオペレーターは filtered stream エンドポイントでも使用できます。filtered stream で使用した場合、このオペレーターは元の投稿への返信、引用投稿内の返信、およびリツイート内の返信にマッチします。例: from:XDevelopers is:reply
is:quote他の条件との併用が必須コアすべての引用ツイート (コメント付きポストとも呼ばれます) を返します。例: "sentiment analysis" is:quote
is:verified他の条件との併用が必須コアX によって認証済みのユーザーが作成した投稿のみを返します。例: #nowplaying is:verified
-is :nullcast他の条件との併用が必須アドバンストads.x.com 上でのプロモーション専用として作成され、"source":"Twitter for Advertisers (legacy)" または "source":"Twitter for Advertisers" を持つ投稿を除外します。このオペレーターは必ず否定形で使用する必要があります。ヌルキャストされた投稿の詳細については、投稿の提供状況に関するページを参照してください。例: "mobile games" -is:nullcast
has:hashtags他の条件との併用が必須コア少なくとも 1 つのハッシュタグを含む投稿に一致します。例: from:XDevelopers -has:hashtags
has:cashtags他の条件との併用が必須アドバンスト先頭に「」文字が付いたカッシュタグ(:」文字が付いたカッシュタグ (例: `tag) を含む投稿にマッチします。例: #stonks has:cashtags`
has:links他の条件との併用が必須コアこのオペレーターは、ポスト本文にリンクやメディアを含む投稿に一致します。例: from:XDevelopers announcement has:links
has:mentions他の条件との併用が必須コア別のXユーザーをメンションしている投稿にマッチします。例: #nowplaying has:mentions
has:media他の条件との併用が必須コアX が写真、GIF、動画などのメディアオブジェクトを含むと判定した投稿にマッチします。Periscope で作成されたメディアや、他のメディアホスティングサイトへのリンクを含む投稿にはマッチしません。例: (kittens OR puppies) has:media
has:images他の条件との併用が必須コア画像へのURLとして認識されるURLを含む投稿にマッチします。例: #meme has:images
has:videos他の条件との併用が必須コアX に直接アップロードされたネイティブ動画を含む投稿にマッチします。Periscope で作成された動画や、他の動画ホスティングサイトへのリンクを含む投稿にはマッチしません。例:#icebucketchallenge has:videos
has:geo他の条件との併用が必須アドバンストX ユーザーによって提供された、ポスト固有の位置情報データを含む投稿にマッチします。位置情報は、対応する表示名、ジオポリゴン、その他のフィールドを持つ X の place として指定されるか、まれに緯度・経度座標として指定されます。注記: place (ポストの位置情報) に対してマッチングを行うオペレーターは、オリジナルのポストのみを対象とします。リツイートには place データは含まれません。例: recommend #paris has:geo -bakery
lang:他の条件との併用が必須コアX によって特定の言語であると分類された投稿にマッチします (投稿が分類されている場合にのみ有効です) 。各投稿は現在 1 つの言語にのみ分類されるため、複数の言語を AND 条件で指定しても結果は返されない点に注意してください。lang: 演算子ごとに指定できる BCP 47 言語識別子は 1 つだけです。注: 言語分類が行えない場合、設定される値は「und」 (未定義) です。例: recommend #paris lang:en
アムハラ語: amドイツ語: deマラヤーラム語: mlスロバキア語: sk
アラビア語: arギリシャ語: elディベヒ語: dvスロベニア語: sl
アルメニア語: hyグジャラート語: guマラーティー語: mrソラニー・クルド語: ckb
バスク語: euハイチ・クレオル語: htネパール語: neスペイン語: es
ベンガル語: bnヘブライ語: iwノルウェー語: noスウェーデン語: sv
ボスニア語: bsヒンディー語: hiオリヤー語: orタガログ語: tl
ブルガリア語: bgヒンディー語 (ラテン文字表記) : hi-Latnパンジャーブ語: paタミル語: ta
ミャンマー語: myハンガリー語: huパシュトー語: psテルグ語: te
クロアチア語: hrアイスランド語: isペルシア語: faタイ語: th
カタルーニャ語: caインドネシア語: inポーランド語: plチベット語: bo
チェコ語: csイタリア語: itポルトガル語: pt繁体字中国語: zh-TW
デンマーク語: da日本語: jaルーマニア語: roトルコ語: tr
オランダ語: nlカンナダ語: knロシア語: ruウクライナ語: uk
英語: enクメール語: kmセルビア語: srウルドゥー語: ur
エストニア語: et韓国語: ko簡体字中国語: zh-CNウイグル語: ug
フィンランド語: fiラオ語: loシンド語: sdベトナム語: vi
フランス語: frラトビア語: lvシンハラ語: siウェールズ語: cy
ジョージア語: kaリトアニア語: lt