The Shoehorn API uses three pagination shapes across different endpoint families. This page documents each shape, the endpoints that use it, and how to page through results.
Used by entity, search, forge, and several entity-detail endpoints. The cursor is an opaque string returned in the response; pass it back to fetch the next page.
Endpoints in this group return the pagination metadata under either a page or pagination key (see the quick reference for which key each endpoint uses). The field names inside differ slightly depending on the endpoint family.
Entities, Search, Zombies — metadata key: page
{
"entities": [ ... ],
"page": {
"limit": 20,
"total": 150,
"nextCursor": "20",
"prevCursor": null
}
}
Field
Type
Description
limit
integer
Requested page size
total
integer
Total matching items
nextCursor
string or null
Cursor for the next page (null on the last page)
prevCursor
string or null
Cursor for the previous page (null on the first page)
Search adds total and took at the top level alongside the page object:
Default limit: 20 for most endpoints, 50 for governance actions and zombies.
Maximum limit: 100 for most endpoints, 200 for governance actions, zombies, and user endpoints.
Cursor values are opaque: Treat cursor strings as opaque tokens. Do not parse, construct, or assume any internal format. Always use the value returned in the response.
Empty pages: When no results match, endpoints return an empty array with the pagination metadata reflecting zero total items.
Combining filters with pagination: Filters are applied before pagination. Changing a filter resets the result set, so start from the first page (no cursor / page 1).