ご留意ください。 X API v2 で 投稿の検索 と 投稿数 の新しいバージョンをリリースしました。X API v2 の新機能をご確認ください。 これらのエンドポイントは、ポストの編集メタデータを含むように更新されています。これらのメタデータの詳細については、“Edit Posts” の基礎ページ を参照してください。
Overview
Enterprise
エンタープライズ API は、当社の管理されたアクセスレベルでのみ利用可能です。これらの API を使用するには、まずエンタープライズ営業チームを通じてアカウントを開設する必要があります。詳細については こちら をご覧ください。
X API におけるすべての検索系ポストオファリングは こちら から確認できます。
エンタープライズ検索 API には次の 2 種類があります。
- 30-Day Search API は、直近 30 日間のデータを提供します。
- Full-Archive Search API は、2006 年 3 月の最初のポストまでさかのぼる、X データ全体のコーパスへの完全かつ即時のアクセスを提供します。
リクエストの種類
Search requests (data)
maxResults パラメータを使用すると、表示用途向けに小さいページサイズを指定して (必要に応じてユーザーがさらに結果を要求できるようにする) 、または大規模なデータ取得向けに大きいページサイズ (最大 500) を指定することができます。データは新しいものから順に (逆時系列で) 配信され、配信時点でコンプライアンス要件に準拠しています。
Counts requests (投稿数)
使用可能なオペレーター
注記: オペレーターを埋め込んだりネストしたりしないでください。
"#cats" は Search API で cats として解釈されます。lang: オペレーターおよびすべての is: と has: オペレーターは単独では使用できず、必ず別の句と組み合わせてください (例: @XDevelopers has:links)。
Search API では、トークナイズ/マッチング機能の制約により、使用できるオペレーターは限定されています。Enterprise リアルタイムおよびバッチ履歴 API では、追加のオペレーターが利用できます。詳細はこちらを参照してください。
さらに詳しくは、オペレーター入門ガイドを参照してください。
データの利用可能性 / 重要な日付
- 最初のポスト: 3/21/2006
- 最初のネイティブリツイート: 11/6/2009
- 最初の位置情報付きポスト: 11/19/2009
- フィルタリング用に URL が初めてインデックス化: 8/27/2011
- URL 展開メタデータの拡張 (Web サイトのタイトルと説明文) : 12/1/2014
- プロフィール位置情報のエンリッチメントメタデータおよびフィルタリング: 2/17/2015
データの更新と可変性
- User オブジェクトのメタデータ:
- ユーザーの @handle (数値の ID は決して変わりません)
- 自己紹介 (Bio) テキスト
- 各種カウント: statuses、followers、friends、favorites、lists
- プロフィールの位置情報
- タイムゾーンや言語などのその他の詳細
- ポストの統計値 - つまり、ユーザーの操作によってプラットフォーム上で変更されうるもの (以下は例) :
- Favorites 数
- Retweet 数
シングルスレッド vs. マルチスレッドリクエスト
リトライロジック
- 対象としている時間範囲を短くしてリクエストを再試行します。うまくいかない場合は、最短で 6 時間の時間範囲になるまで繰り返します。
- 多数の検索語を OR 条件でまとめている場合は、それらを複数のルールに分割し、それぞれを個別に再試行します。
- ルール内で多数の除外条件を使用している場合は、ルール内の否定条件の語句の数を減らして再試行します。
クイックスタート
enterprise Search Posts: 30-Day API を使い始める
- [An enterprise account]https://developer.x.com/en/products/x-api/enterprise
- ユーザー名、パスワード、アカウント名
- console.gnip.com に表示される、検索エンドポイントに紐づいたラベル
データエンドポイントへのアクセス
from: および lang: 演算子を使用して、@XDevelopers による英語の投稿を検索します。 他の演算子については こちらを参照してください。
- cURL
- cURL の例
cURL は、URL 構文を使用してファイルを取得または送信するためのコマンドラインツールです。以下の cURL リクエストを、次の項目を変更したうえでコマンドラインにコピーしてください。
-
Username
<USERNAME>(例)email@domain.com -
Account name
<ACCOUNT-NAME>(例)john-doe -
Label
<LABEL>(例)prod -
fromDate と toDate (例)
"fromDate":"201811010000", "toDate":"201811122359"
データエンドポイントのレスポンスペイロード
API リクエストに対するレスポンスのペイロードは、以下の例のように JSON 形式になります。counts エンドポイントへのアクセス
day ごとにグループ化して取得します。
- cURL
- cURL example
cURL は、URL 構文を使用してファイルを取得または送信するためのコマンドラインツールです。次の cURL リクエストをコマンドラインにコピーし、以下の項目を変更してください。
-
Username
<USERNAME>例:email@domain.com -
Account name
<ACCOUNT-NAME>例:john-doe -
Label
<LABEL>例:prod -
fromDate と toDate 例:
"fromDate":"201811010000", "toDate":"201811122359"
カウントエンドポイントのレスポンスペイロード
API リクエストに対するレスポンスのペイロードは、以下の例のように JSON 形式で返されます。関連記事
enterprise Search Posts: Full-Archive API を使い始める
data 形式、またはマッチした投稿の数値カウントデータを取得できる counts 形式のいずれかになります。ここでは、cURL を使用して data エンドポイントと counts エンドポイントにリクエストを送信します。
次のものが必要です。
- [エンタープライズアカウント]https://developer.x.com/en/products/x-api/enterprise
- ユーザー名、パスワード、アカウント名
- console.gnip.com に表示される、検索エンドポイントに関連付けられているラベル
データエンドポイントへのアクセス
from: と lang: オペレーターを使用して、@XDevelopers から英語で投稿された投稿を検索します。 他のオペレーターについては こちらを参照してください。
- cURL
- cURL example
cURL は、URL 構文を使用してファイルを取得または送信するためのコマンドラインツールです。次の cURL リクエストを、以下の項目を変更したうえでコマンドラインにコピーしてください。
-
Username
<USERNAME>例:email@domain.com -
Account name
<ACCOUNT-NAME>例:john-doe -
Label
<LABEL>例:prod -
fromDate と toDate 例:
"fromDate":"201802010000", "toDate":"201802282359"
データエンドポイントのレスポンスペイロード
カウント用エンドポイントへのアクセス
カウント用エンドポイントを使って、英語の @XDevelopers アカウント発の投稿数を、day ごとに集計して取得します。
- cURL
- cURL example
cURL は、URL 構文を使用してファイルを取得または送信するためのコマンドラインツールです。以下の項目を自身の値に置き換えたうえで、次の cURL リクエストをコマンドラインにコピーしてください。
-
Username
<USERNAME>例:email@domain.com -
Account name
<ACCOUNT-NAME>例:john-doe -
Label
<LABEL>例:prod -
fromDate と toDate 例:
"fromDate":"201802010000", "toDate":"201802282359"
Counts エンドポイントのレスポンスペイロード
参考資料
ガイド
検索クエリの作成
エンタープライズ向けオペレーター
- Enterprise 30 日検索 API
- Enterprise フルアーカイブ検索 API
注:
is: および has: オペレーターは、Search API を使用する場合に単独では使用できず、必ず別の句と組み合わせて使用する必要があります。たとえば、@XDeevelopers has:links製品概要
メタデータのタイムライン
to: や in_reply_to_status_id: PowerTrack Operator に頼るのではなく、ポスト本文を調査する必要があります。
ここに記載されている詳細は、Full-Archive Search を用いて、数百件におよぶ検索を行った結果に基づいて生成されています。このタイムラインは 100% 完全でも精密でもありません。ユースケースにとって重要となる、他のフィルタリング/メタデータの「誕生日」を見つけた場合は、ぜひお知らせください。
なお、基盤となる Search インデックスは再構築される可能性があります。そのため、これらのタイムラインの詳細は変更される場合があります。
2006
- 3月26日 -
lang:。検索インデックスを生成する際に、ポストのメタデータがバックフィルされる例。 - 7月13日 -
has:mentionsのマッチングが開始。 - 10月6日 -
has:symbols。株式銘柄について議論するための slang) だったと考えられる。 - 10月26日 -
has:linksのマッチングが開始。 - 11月23日 -
has:hashtagsのマッチングが開始。
2007
- 1月30日 - @reply が初めて first-class 扱いとなり (in_reply_to_user_id) 、
reply_to_status_id:のマッチングが始まる。 - 8月23日 - トピックや会話を整理する一般的な慣習としてハッシュタグが登場。1週間後に最初の本格的な利用例が現れる。
2009
- 5月15日 -
is:retweet。このオペレーターは、公式リツイートの「ベータ」版リリースおよびその「Via @」パターンから一致するようになります。このベータ期間中は、ポストの動詞は「post」となり、元のポストはペイロードに含まれません。 - 8月13日 - 公式リツイートの最終版が、「RT @」パターン、動詞「share」、および元のポストを含む
retweet_status属性とともにリリースされます (そのため JSON ペイロードサイズはおおよそ2倍になります) 。
2010
- 3月6日 -
has:geo、bounding_box:およびpoint_radius:の地理演算子でのマッチングが開始される。 - 8月28日 -
has:videos(2015年2月まで、この演算子は、youtube.com や vimeo.com、vivo.com など一部の動画ホスティングサイトへのリンクを含む投稿にマッチします) 。
2011
- 7月20日 -
has:mediaとhas:imagesが検索でマッチするように。ネイティブ写真機能は2010年8月9日に正式発表。
2014
- 12月3日ごろ - 一部の Enhanced URL metadata が HTML の title と description とともにペイロードに含まれるようになりました。拡張メタデータは 2016年5月に、より完全な形で導入されました。
2015
- 2月10日 -
has:videosは「ネイティブ」な X 動画にマッチします。 - 2月17日 -
has:profile_geo,profile_country:,profile_region:,profile_locality:Profile Geo オペレーターがマッチングに対応し始めます。 - 2月17日 -
place_country:とplace:ポストのジオオペレーターがマッチングに対応し始めます。
2016
- 5月1日 - Enhanced URL metadata が本格的に利用可能となり、2016年8月の Gnip 2.0 ローンチ の一部として正式に発表されました。Search API には、これらのメタデータに対応する Operator は用意されていません。
2017
- 2月22日 - 投票メタデータが拡張されたネイティブ形式で利用可能になりました。これらのメタデータに対応する Operator はありません。
2022
- 9月27日 - この日以降に作成されたすべてのポストオブジェクトには、編集ポストのメタデータが利用可能です。ポストオブジェクトを提供するすべての Enterprise エンドポイントは、この日からこのメタデータを提供するように更新されました。提供される編集メタデータには、
edit_historyおよびedit_controlsオブジェクトが含まれます。これらのメタデータは、2022年9月27日以前に作成された投稿については返されません。現時点では、これらのメタデータに対応する Enterprise Operator はありません。編集ポストのメタデータについて詳しくは、Edit Posts fundamentals ページを参照してください。
2022
- 9月29日 - この日以降に作成されたすべてのポストオブジェクトでは、編集済みポストのメタデータが利用可能です。ポストオブジェクトを提供するすべての Enterprise エンドポイントは、この日からこのメタデータを提供するように更新されました。提供される編集メタデータには、edit_history オブジェクトと edit_controls オブジェクトが含まれます。これらのメタデータは、2022年9月27日より前に作成された投稿については返されません。現在のところ、これらのメタデータに対応する Enterprise Operators は存在しません。ポスト編集メタデータの詳細については、ポスト編集の基本 ページを参照してください。
フィルタリングのヒント
- 一部のメタデータには「付与開始日」があるため、フィルターの結果に 偽陰性 が含まれる可能性があります。これは、検索期間全体または一部では存在していなかったメタデータに依存するオペレーターを使った検索です。たとえば、
has:imagesオペレーターを使ってポストを検索する場合、2011 年 7 月より前の期間についてはヒットが一切ありません。これは、そのオペレーターが (X のユーザーインターフェースを使ってポストに添付された) ネイティブ 写真にマッチするためです。写真共有ポストのより完全なデータセットを取得するには、2011 年 7 月より前の期間に対するフィルターでは、写真ホスティング用の一般的な URL にマッチするルール句を含める必要があります。 - 一部のメタデータは、ポストが X に投稿された時点より 後 の時点のメタデータでバックフィルされています。
- X Profiles
- オリジナルポストまたは共有ポスト
- ポストの言語分類
- 位置情報参照付きポスト
- 共有リンクのメディア
X プロフィール
元の投稿とリツイート
_is:retweet_ オペレーターを使うと、リツイートを含めるか除外するかを指定できます。このオペレーターを利用する場合、2009 年 8 月以前のデータについては、リツイートとしてマッチさせるか (あるいはマッチさせないか) のために 2 つの戦略を用意しておく必要があります。2009 年 8 月以前は、「@RT 」パターンに一致するかどうかを確認するために、ポスト本文自体を正確なフレーズ一致でチェックする必要があります (実際には、2009 年 5〜8 月のリツイートをフィルタリングする場合は、「Via @」パターンも含める必要があります) 。2009 年 8 月以降の期間については、is:retweet オペレーターが利用可能です。
ポストの言語分類
lang: オペレーターはすべてのポストのアーカイブ全体に対して利用できます。
ポストの地理参照
- 投稿本文内の地理的な記述。 投稿本文内の地理的な記述に基づいてマッチングする方法は、ローカルな知識に依存するため最も難しい方法であることが多いものの、全投稿アーカイブに対して利用できるオプションです。こちらは、「golden gate」フィルターに基づいてサンフランシスコ地域を対象に 2006 年に行われた地理参照マッチの例です。
-
ユーザーがジオタグ付けした投稿。 Search APIs では、2010 年 3 月から一部の Geo オペレーターを使って投稿のマッチングができるようになり、2015 年 2 月からは他の Geo オペレーターも利用可能になりました。
- 2010 年 3 月 6 日:
has:geo、bounding_box:、point_radius: - 2015 年 2 月 17 日:
place_country:、place:
- 2010 年 3 月 6 日:
-
ユーザーがアカウントプロフィールの「ホーム」位置情報を設定。 Profile Geo オペレーターは Historical PowerTrack と Search APIs の両方で利用できます。Search APIs では、これらの Profile Geo メタデータは 2015 年 2 月から利用可能です。Profile Geo メタデータが利用可能になる前に投稿されたコンテンツについては、正規化されていないユーザー入力にマッチさせるために使用できる
bio_location:オペレーターが用意されています。
- 2006年10月26日 -
has:links - 2011年7月20日 -
has:imagesとhas:media - 2011年8月 -
url:(Expanded URLs エンリッチメント を利用) 。早い例では 2006 年 9 月の(url:"spotify.com" OR url:gnip OR url:microsoft OR url:google OR url:youtube)が http://x.com/Adam/statuses/16602 にマッチします。twitter_entities や gnip オブジェクトには urls[] メタデータが存在しないにもかかわらずです。"youtube.com"は、urls[] メタデータが一切なくてもurl:youtubeにマッチするメッセージコンテンツの一例です。 - 2015年2月10日 - ネイティブ動画に対する
has:videos。2010/08/28 から 2015/02/10 の間、このオペレーターは youtube.com、vimeo.com、vivo.com などの特定の動画ホスティングサイトへのリンクを含むポストにマッチします。 - 2016年5月1日 - Enhanced URLs エンリッチメント に基づく
url_title:とurl_description:が一般提供開始。最初の強化 URL メタデータは 2014 年 12 月に現れ始めました。
よくある質問 (FAQ)
Search Post API 全般に関する質問
data エンドポイントで取得できる投稿数が、counts エンドポイントでカウントされる投稿数と一致しません。なぜですか?
data エンドポイントで取得できる投稿数が、counts エンドポイントでカウントされる投稿数と一致しません。なぜですか?
counts エンドポイントと data エンドポイントによって提供される結果には、差異が生じることが知られています。counts エンドポイントはコンプライアンス適用前 (削除された投稿や位置情報のスクラブなどを考慮しない状態) である一方、data エンドポイントは配信時点でコンプライアンスに準拠し、すべてのコンプライアンスイベントを反映しているため、結果に不一致が生じる場合があります。
クエリに一致するはずのポストが取得できません。なぜですか?
クエリに一致するはずのポストが取得できません。なぜですか?
これが起こりうる理由はいくつかあり、たとえば次のとおりです。
- 期待していたポストが非公開アカウントのものである場合
- データエンドポイントではすべてのコンプライアンスイベントが考慮されるため (削除された投稿やジオ情報が削除されたものなどは、レスポンスに含まれません) 。
Search ポスト API を使い始める際に利用できるライブラリはありますか?
Search ポスト API を使い始める際に利用できるライブラリはありますか?
はい、あります。例えば次のようなものです。
- Tweepy - 標準的な search/投稿 プロダクトを利用するのに適しています (Python)
- X API - 標準的な Search Post API を利用するのに適しています (Python)
- Search Posts Python と Search Posts Ruby - enterprise (および v2!) の Search Post API で使用できる、便利な 2 つのツールです
データエンドポイントへのリクエストで `maxResults` に指定した値より少ない数の投稿しか返されないことはありますか?
データエンドポイントへのリクエストで `maxResults` に指定した値より少ない数の投稿しか返されないことはありますか?
はい。データエンドポイントは、指定された
maxResults に達するか、30 日が経過した時点のいずれか早い方でページネーションされます。たとえば、ある 30 日間に 800 件の投稿がある場合、すべての結果を取得するには 2 回リクエストを行う必要があります。1 回のリクエストで返せる投稿の最大数は 500 件 (maxResults) だからです。また、1 か月目に 400 件、2 か月目に 100 件の投稿がある場合も、完全な結果を取得するには 2 回のリクエストが必要です。最初のリクエストで指定した maxResults 未満の投稿しか返されなかった場合でも、30 日が経過するとページネーションが行われるためです。一致する投稿はどのような順序で返されますか?
一致する投稿はどのような順序で返されますか?
投稿は新しいものから古いものへと、逆時系列で返されます。たとえば、最初のページにはクエリに一致する最新の投稿が表示され、結果の投稿日時が最初にリクエストした
fromDate に到達するまでページネーションが続きます。投稿の編集は、利用状況や課金にどのような影響がありますか?
投稿の編集は、利用状況や課金にどのような影響がありますか?
課金対象となるのは元のポストだけです。以降の編集は無視され、アクティビティ全体のカウントには加算されません。
EnterpriseEnterprise Search ポスト API の料金について詳しく知りたいのと、このオファリングに申し込みたいと考えています。どのように手続きすればよいですか?
Enterprise Search ポスト API の料金について詳しく知りたいのと、このオファリングに申し込みたいと考えています。どのように手続きすればよいですか?
当社のエンタープライズ向けソリューションは、お客様のビジネスニーズに合わせて、料金を見通しやすい形でカスタマイズされています。詳しくは、こちら からお申し込みください。
自分のユースケースに合ったルールセットを作成するにはどうすればよいですか?
自分のユースケースに合ったルールセットを作成するにはどうすればよいですか?
今月分のリクエスト上限を超えてしまいましたが、さらに多くのデータにアクセスする必要があります。どうすればよいですか?
今月分のリクエスト上限を超えてしまいましたが、さらに多くのデータにアクセスする必要があります。どうすればよいですか?
この件については、Xの担当アカウントマネージャーまでお問い合わせください。
エラー対処ガイド
- 各エンドポイントに対して適切なパラメータを使用していることを確認してください (例:
bucketsフィールドは counts エンドポイントでのみ使用でき、data エンドポイントでは使用できません) :product、:account_name、:labelフィールドが正しいことを再度確認してください。:labelフィールドは GNIP コンソール (エンタープライズ顧客のみ) で確認できます。
APIリファレンス
Enterprise search APIs
- 30-Day Search API - 過去 30 日間に投稿されたツイートを提供します。
- Full-Archive Search API - 2006 年 3 月に投稿された最初のツイート以降のツイートを提供します。
- ツイートデータおよび件数をリクエストするメソッド
- 認証
- ページネーション
- API リクエストパラメータとリクエスト例
- API レスポンスの JSON ペイロードとレスポンス例
- HTTP レスポンスコード
メソッド
https://gnip-api.x.com/search/ です。
ここで:
:productはリクエストを送信する検索エンドポイントを表し、30dayまたはfullarchiveのいずれかです。:account_nameは、console.gnip.com に表示されるアカウントに関連付けられた (大文字・小文字を区別する) 名前です。:labelは、console.gnip.com に表示される検索エンドポイントに関連付けられた (大文字・小文字を区別する) ラベルです。
- データエンドポイント: https://gnip-api.x.com/search/30day/accounts/TwitterDev/prod.json
- カウントエンドポイント: https://gnip-api.x.com/search/30day/accounts/TwitterDev/prod/counts.json
:product、:account_name、:label を使用しています。これらの例を利用する際は、ご自身の情報に合わせて URL を更新してください。
認証
リクエスト/レスポンスの挙動
fromDate と toDate パラメータを使用することで、API がサポートする任意の期間をリクエストできます。30-Day search API は直近 31 日分のツイートを提供します (「30-Day」API と呼ばれていますが、ユーザーが完全な 1 か月分をリクエストできるように 31 日分を利用可能にしています) 。Full-Archive search API は、最初のツイート (2006 年 3 月 21 日) までさかのぼってツイートを提供します。ただし、単一のレスポンスに含まれるのは、指定した maxResults または 31 日分のうち小さい方までです。一致するデータ量または指定した時間範囲が、指定した maxResults または 31 日を超える場合、指定した期間の残りの部分をページングするために使用すべき next トークンが返されます。
たとえば、Full-Archive search を使用して、2017 年 1 月 1 日から 2017 年 6 月 30 日までの間でクエリに一致するすべてのツイートを取得したいとします。リクエストでは、fromDate と toDate パラメータを使用して、その 6 か月間全体を指定します。search API は、最初の「ページ」のツイートを返し、そのツイート数は maxResults パラメータ (デフォルトは 100) で指定した数になります。さらにツイートが存在する場合 (通常は存在します) 、API は次のデータ「ページ」をリクエストできるようにする next トークンも返します。この処理は、API が next トークンを返さなくなるまで繰り返されます。詳細については次のセクションを参照してください。
ページネーション
データのページネーション
maxResults パラメータのデフォルト値は 100 で、10~500 の範囲で設定できます。クエリに一致するツイートの数が、リクエストで使用した maxResults パラメータを超える場合、レスポンスには ‘next’ トークン (ルートレベルの JSON 属性) が含まれます。この ‘next’ トークンは後続のリクエストで使用し、そのクエリに一致するツイートの次の部分 (すなわち次の「ページ」) を取得するためのものです。‘next’ トークンは、そのクエリの結果の最後の「ページ」に到達し、‘next’ トークンが返されなくなるまで提供され続けます。
次の「ページ」のデータをリクエストするには、元のクエリとまったく同じクエリを実行する必要があります。必要に応じて query、toDate、fromDate パラメータを含め、さらに前回のレスポンスで返された値を設定した ‘next’ リクエストパラメータも含めます。これは GET リクエストと POST リクエストのいずれでも利用できます。ただし、GET リクエストの場合、‘next’ パラメータは URL エンコードされている必要があります。
クエリの対象期間をカバーするすべてのツイートを受信するまで、前回のクエリで受け取った ‘next’ トークンを引き続き渡すことができます。‘next’ トークンを含まないレスポンスを受信した場合、それは最後のページに到達しており、指定したクエリおよび期間に対して利用できる追加データがないことを意味します。
カウントのページネーション
counts エンドポイントは、クエリに関連付けられたツイート数を、日次、時間単位、または分単位のいずれかの粒度で提供します。counts API エンドポイントは、最大 31 日分のカウントをタイムスタンプ付き配列として返します。31 日を超える期間のカウントをリクエストした場合、next トークンが返されます。データ用の next トークンと同様に、元とまったく同じクエリを送信し、前回のレスポンスで返された値を設定した next リクエストパラメータも含める必要があります。
31 日を超えるカウントをリクエストする場合以外にも、next トークンが提供されるシナリオがあります。ボリュームの大きいクエリでは、カウントの生成に時間がかかり、レスポンスのタイムアウトが発生する可能性があります。この場合、31 日分より少ないカウントしか受け取れませんが、カウントのペイロード全体を取得し終えるまでリクエストを継続できるように、next トークンが返されます。重要: タイムアウトが発生した場合、レスポンスには完全な「バケット」のみが含まれます。そのため、2.5 日分のデータがある場合は、2 日分の完全な「バケット」のみが結果として返されます。
追加の注意事項
- 検索リクエストで fromDate または toDate を使用する場合、取得できる結果は指定した時間範囲内のものだけになります。時間範囲内の結果の最後のグループに到達すると、
nextトークンは返されません。 next要素は、maxResults の値が 10〜500 の任意の値 (デフォルト値は 100) で使用できます。maxResults は各レスポンスで返されるツイート数を決定しますが、最終的にすべての結果を取得することを妨げるものではありません。next要素には有効期限がありません。同じnextクエリを使用した複数のリクエストは、リクエストのタイミングに関係なく同じ結果を受け取ります。nextパラメータを使用して結果をページングする場合、クエリの境界付近で重複が発生することがあります。アプリケーション側でこれらの重複を許容できるようにしておく必要があります。
データエンドポイント
POST /search/:product/:label
エンドポイントパターン:
データリクエストパラメータ
追加の詳細
データリクエストとレスポンスの例
POST リクエストの例
- POST リクエストのパラメータは、以下のように JSON 形式のボディで送信されます。
- 取得対象の PowerTrack ルールのすべての部分 (例: キーワード、bounding_box: のようなその他のオペレーター) は、‘query’ パラメータに含める必要があります。
- ルールの一部をクエリ URL 内の別々のパラメータとして分割しないでください。
GET リクエストの例
- GET リクエストのパラメータは、標準的な URL エンコードを用いて URL にエンコードされます。
- クエリ対象となる PowerTrack ルールのすべての要素 (例: キーワード、
bounding_box:のような他のオペレーター) は、queryパラメータに含める必要があります。 - クエリ URL 内で、ルールの一部を個別のパラメータとして分割しないでください。
データレスポンスの例
カウント用エンドポイント
/search/:stream/counts
エンドポイントパターン:
/search/fullarchive/accounts/:account_name/:label/counts.json
このエンドポイントは、指定されたクエリに対するカウント (データボリューム) データを返します。期間が指定されていない場合、時間パラメーターのデフォルトは直近30日間になります。データボリュームは、日単位、時間単位 (デフォルト) 、または分単位のいずれかで、タイムスタンプ付き配列として返されます。
注: この機能は、以下で説明するパラメーターを URL にエンコードすることで、POST ではなく GET リクエストを使用して実行することもできます。
カウントリクエストのパラメータ
追加の詳細
カウント用リクエストとレスポンスの例
POST リクエストの例
- POST リクエストのパラメータは、以下のように JSON 形式のボディで送信されます。
- クエリ対象とする PowerTrack ルールのすべての要素 (例: キーワード、bounding_box: のようなその他のオペレーター) は、‘query’ パラメータに含めて指定してください。
- ルールの一部を、クエリ URL の別個のパラメータとして分割しないでください。
GET リクエストの例
- GET リクエストのリクエストパラメータは、標準的な URL エンコード方式で URL にエンコードされます
- クエリ対象の PowerTrack ルールのすべての要素 (例: キーワード、bounding_box: のようなその他のオペレーター) は、‘query’ パラメータに指定してください
- ルールの要素を分割して、query URL 内の別々のパラメータとして指定しないでください