Box Developerドキュメント
 

    ページ割りと並べ替え

    ページ割りと並べ替え

    デフォルトでは、1ページあたり返されるクエリ結果は20件のみで、この結果の順序は保証されておらず変更される可能性があります。ページ割りと並べ替えにより、さらに多くの結果を取得し、結果の順序を定義することが可能になります。

    ページ割り

    APIはデフォルトで、20件の結果を含む最初のページのみを返します。ページあたりの結果の数を増やすようリクエストするには、リクエストにlimitクエリパラメータを指定して送信します。

    curl -X POST https://api.box.com/2.0/metadata_queries/execute_read \
        -H 'Authorization: Bearer <ACCESS_TOKEN>' \
        -H 'Content-Type: application/json' \
        -d '{
          "from": "enterprise_123456.contractTemplate",
          "fields": ["name"],
          "ancestor_folder_id": "5555",
          "limit": 100
        }'
    
    

    limitの最大値は100です。返される結果ページ数を増やすには、各ページでnext_marker値を返します。

    {
      "entries": [...],
      "next_marker": "AAAAAmVYB1FWec8GH6yWu2nwmanfMh07IyYInaa7DZDYjgO1H4KoLW29vPlLY173OKsci6h6xGh61gG73gnaxoS+o0BbI1/h6le6cikjlupVhASwJ2Cj0tOD9wlnrUMHHw3/ISf+uuACzrOMhN6d5fYrbidPzS6MdhJOejuYlvsg4tcBYzjauP3+VU51p77HFAIuObnJT0ff"
    }
    
    

    このnext_markerを使用すると、結果の次のページについて新しいリクエストを作成できます。

    curl -X POST https://api.box.com/2.0/metadata_queries/execute_read \
        -H 'Authorization: Bearer <ACCESS_TOKEN>' \
        -H 'Content-Type: application/json' \
        -d '{
          "from": "enterprise_123456.contractTemplate",
          "fields": ["name"],
          "ancestor_folder_id": "5555",
          "limit": 100,
          "marker": "AAAAAmVYB1FWec8GH6yWu2nwmanfMh07IyYInaa7DZDYjgO1H4KoLW29vPlLY173OKsci6h6xGh61gG73gnaxoS+o0BbI1/h6le6cikjlupVhASwJ2Cj0tOD9wlnrUMHHw3/ISf+uuACzrOMhN6d5fYrbidPzS6MdhJOejuYlvsg4tcBYzjauP3+VU51p77HFAIuObnJT0ff"
        }'
    
    

    レスポンスに次のマーカーが含まれていない場合は、これ以上一致する結果がないことを意味します。

    next_markerを使用するには、結果の次のページにまったく同じクエリを使用することが重要です。queryquery_paramsなどのパラメーターが変更されると、APIはエラーを返します。

    並べ替え

    結果は、サポートされているどのメタデータフィールドタイプを使用しても並べ替えることができます。現在サポートされているタイプは、floatdateおよびstringフィールドのみです。enumまたはmultiSelect値による並べ替えは現在サポートされていません。

    結果を並べ替えるには、並べ替えの基準として使用する1つ以上のフィールドキーに加えて、方向を指定します。

    "order_by": [
      {
        "field_key": "amount”,
        "direction": "desc"
      },
      {
        "field_key": "created_at"
        "direction": "desc"
      }
    ]
    
    

    並べ替えの方向は、指定したすべてのキーで同じにする必要があります。つまり、各field_keydirectionは同じにする必要があります。