レスポンスのページングについて

APIのレスポンスが大容量になった場合、レスポンスにpagination_keyが設定される場合があります。pagination_keyが設定された場合、次のクエリにおいて検索条件を変更せずにpagination_keyを設定してリクエストを実行することで後続のデータを取得することが可能です。レスポンスの形式は各APIのサンプルコードを参照ください。

Request

GET
/v2/method
import requests

headers = {"x-api-key": "{loading}"}

r_get = requests.get(
  "https://api.jquants.com/v2/method?query=param",
  headers=headers,
)
data = r_get.json()["data"]

while "pagination_key" in r_get.json():
  pagination_key = r_get.json()["pagination_key"]
  r_get = requests.get(
      f"https://api.jquants.com/v2/method?query=param&pagination_key={pagination_key}",
      headers=headers,
  )
  data += r_get.json()["data"]
  • クエリに対する全ての該当データを返却するまで、pagination_keyがレスポンスメッセージに設定されます。pagination_keyがレスポンスメッセージに設定されない場合はクエリに対する全ての該当データが返却されたことを意味します。
  • 1レスポンスあたりの最大件数は固定していません。レスポンスのデータ量が一定のサイズ(5,000,000バイト相当)に達する場合にレスポンスが分割され、pagination_keyが返却されます。
  • 1レスポンスあたりの件数(page size)は、内部処理により変動するため非公開・保証対象外です。
  • ページングの都度、pagination_keyの値は変わります。
  • 総件数を返却する項目は提供していません。全件を取得するには、pagination_keyが返却されなくなるまでリクエストを繰り返してください。
  • 該当データが0件の場合は、HTTP 200 で data が空配列のレスポンスが返却され、pagination_keyは付与されません。
  • ページングの途中でデータの更新が行われた場合、取得結果全体の完全な一貫性は保証されません。

Was this page helpful?