Pagination
Offset pagination for large tables; bounded lists everywhere else.
Updated 2026-05-24
2 min read
Two response shapes for list endpoints. Most lists are bounded (you ask for up to limit, you get up to limit). Reviews are paginated with offset because review tables routinely exceed thousands of rows.
Bounded list
Used by projects, keywords, competitors, listings, listing versions, screenshots, templates, sessions, simulations.
json
{
"data": [ /* up to `limit` items */ ],
"count": 17
}Offset pagination
Used by GET /projects/:id/reviews.
bash
curl -s "https://forvibe.app/api/v1/projects/$P/reviews?limit=50&offset=0" \
-H "Authorization: Bearer fvk_live_..."json
{
"data": [ /* 50 reviews */ ],
"pagination": {
"total": 1287,
"limit": 50,
"offset": 0,
"has_more": true,
"next_offset": 50
}
}- Walk pages by feeding
next_offsetback into the next request. - Stop when
has_moreis false. limitdefaults vary by endpoint (usually 25); maximum is 100–200 depending on the resource.