Pagination

Some endpoints are paginated to avoid large response bodies. The API response is wrapped in a metadata object for your convenience. To navigate the pages you can use the query parameters page and page_size.

Paginated response fields

FieldDescription
pageThe current page number. The first page will have this value set to 1.
page_countThe number of result pages available. Will be 0 if there are no results.
page_sizeThe desired page size, by default 10. Must be between 10-250.
result_countThe total number of results, across all pages.
dataThe results for the current page.

For example, to request page 1 and up to 10 results per page (default values):

$ curl -H "Authorization: Bearer <TOKEN>" \
       -H "Content-type: application/json" \
       "https://api.panelbear.com/v1/sites?page=1"

{
    "page": 1,
    "page_size": 10,
    "page_count": 13,
    "result_count": 125,
    "data": [
        {}, # Item 1
        {}, # Item 2
        {}, # Item N
        ...
    ]
}

You can then request the second page by making a subsequent request with page=2:

$ curl -H "Authorization: Bearer <TOKEN>" \
       -H "Content-type: application/json" \
       "https://api.panelbear.com/v1/sites?page=2"

{
    "page": 2,
    "page_size": 10,
    "page_count": 13,
    "result_count": 125,
    "data": [...]
}

You can optionally set the page size via the page_size parameter. Valid values are between 5 and 100.

$ curl -H "Authorization: Bearer <TOKEN>" \
       -H "Content-type: application/json" \
       "https://api.panelbear.com/v1/sites?page=1&page_size=50"

{
    "page": 1,
    "page_size": 50,
    "page_count": 3,
    "result_count": 125,
    "data": [...]
}