レスポンス ⚓
全てのエンドポイントはJSONフォーマットのレスポンスを返します。
ページネーション ⚓
アイテムのリストを返すエンドポイントをコールした場合、1回のレスポンスで全てのリストを取得できないかもしれません。全てのアイテムを取得するために “ページ” を複数回取得する必要があります。
レスポンスに paging
を含むエンドポイントは total_item_count
と page_item_limit
のプロパティを持っています。もし “次” のページが取得可能であれば、レスポンスは next
の “アンカー” アイテムも含みます。例えば、そのレスポンスは次のページの最初のアプリのスラッグを持ちます。
例
{
"data": [ ... ],
"paging": {
"total_item_count": 3,
"page_item_limit": 2,
"next": "518e869d56f2adfd"
}
}
レスポンスアイテムの制限 ⚓
page_item_limit
プロパティはGETレスポンスの limit
クエリパラメータで設定することで、レスポンスのページサイズを指定することができます。ページサイズのデフォルト設定および最大値は50です。
例
https://api.bitrise.io/v0.1/me/apps
をコールすることで、1番目のページを最大リストアイテムサイズ50で、あなたのアプリリストを取得できます。https://api.bitrise.io/v0.1/me/apps?limit=10
をコールする場合、そのレスポンスは10個のアイテムしか含まないあなたのアプリリストとなります。
レスポンスアイテムの反復処理 ⚓
全てのアイテムを反復して取得したい場合、以下の処理を行う必要があります:
- ページネーションパラメータなしでエンドポイントをコールします。
- レスポンスから
paging
オブジェクトを取得します。 paging
オブジェクトがnext
アイテムを含んでいれば、next=
クエリパラメータにレスポンスで取得したnext
パラメータの値を設定して全く同じエンドポイントをコールしてください。
例
あなたの登録した全てのアプリを反復して取得する:
https://api.bitrise.io/v0.1/me/apps
をコール。- アイテム(
data
プロパティ)を処理する。 paging
(ルート)のプロパティを確認する。- もし
paging
オブジェクトがnext
プロパティを持っていれば、そのエンドポイントをnext
クエリパラメータ付きで再度コールします。- Example:
https://api.bitrise.io/v0.1/me/apps?next=NEXTVALUE
, whereNEXTVALUE
is the value of thenext
property you got in your previous response. - 例:
https://api.bitrise.io/v0.1/me/apps?next=NEXTVALUE
このNEXTVALUE
は前回のレスポンスで受け取ったnext
プロパティの値です。
- Example:
- この処理を
paging
オブジェクトがnext
プロパティを含まなくなるまで(最後のページを取得するまで)繰り返します。